home contribute faq download

FunctX XQuery Functions

functx:is-node-in-sequence

Whether an XML node is in a sequence, based on node identity

Google
Webxqueryfunctions.com

Description

The functx:is-node-in-sequence function returns a boolean value indicating whether or not a node is in the specified sequence, based on node identity. It does not identify nodes that are descendants of nodes in the sequence; see functx:is-node-among-descendants for that purpose. If $node or $seq is the empty sequence, it returns false.

Nodes are identified based on node identity, not their contents. For a similar function based on the contents of a node, see functx:is-node-in-sequence-deep-equal.

Arguments and Return Type

NameTypeDescription
$node node()? the node to test
$seq node()* the sequence of nodes to search
return value xs:boolean

XQuery Function Declaration

See XSLT definition.
XQuery Syntax for July 2004 - January 2007 (1.0):
declare namespace functx = "http://www.functx.com"; 
declare function functx:is-node-in-sequence 
  ( $node as node()? ,
    $seq as node()* )  as xs:boolean {
       
   some $nodeInSeq in $seq satisfies $nodeInSeq is $node
 } ;
XQuery Syntax for May 2003:
declare namespace functx = "http://www.functx.com" 
define function is-node-in-sequence 
  ( $node as node()? ,
    $seq as node()* )  as xs:boolean {
       
   some $nodeInSeq in $seq satisfies $nodeInSeq is $node
 }

Examples

let $in-xml :=
<prices>
   <price value="29.99" discount="10.00"/>
   <price value="39.99" discount="6.00"/>
   <price value="49.99" discount=""/>
</prices>
let $aPrice :=
<price value="49.99" discount=""/>
return
XQuery ExampleResults
functx:is-node-in-sequence(
     $in-xml/price[1],$in-xml/price)
true
functx:is-node-in-sequence(
     $in-xml/price[1],$in-xml)
false
functx:is-node-in-sequence(
     $aPrice,$in-xml/price)
false

See Also

functx:is-node-in-sequence-deep-equalWhether an XML node is in a sequence, based on contents and attributes
functx:is-value-in-sequenceWhether an atomic value appears in a sequence

History

Published OnLast UpdatedContributor(s)
2006-06-272007-02-26Priscilla Walmsley, Datypic, pwalmsley@datypic.com, http://www.datypic.com
Need XQuery Help?
D A T Y P I C
Training | Consulting | Development

XQuery by Priscilla WalmsleyGet the book!
XQuery by Priscilla Walmsley