Description
The functx:depth-of-node function returns the level of a node within a document, as an integer. 1 represents the root node, 2 is a child of the root, etc. If $node is a document node, the document node itself counts as the first level.
Arguments and Return TypeName | Type | Description |
$node |
node()? |
the node to check |
return value |
xs:integer |
XQuery Function DeclarationSee XSLT definition. | declare namespace functx = "http://www.functx.com";
declare function functx:depth-of-node
( $node as node()? ) as xs:integer {
count($node/ancestor-or-self::node())
} ; |
Exampleslet $in-xml := | <authors>
<author>
<fName>Kate</fName>
<lName>Jones</lName>
</author>
<author>
<fName>John</fName>
<lName>Doe</lName>
</author>
</authors> | return |
XQuery Example | Results |
---|
functx:depth-of-node($in-xml) |
1 |
functx:depth-of-node($in-xml/author[1]) |
2 |
functx:depth-of-node(
$in-xml/author[1]/fName/text()) |
4 |
See AlsoHistory |
Recommended Reading:
|