XQuery Terms

Nodes:

The element, attribute, text, namespace, processing-instruction, comment, and document nodes are the seven kinds of nodes in XQuery. The trees of nodes are the XML documents, and the root element is the topmost element of the tree. The document node is the root of the tree, also called the root node.

Example:

<?xml version="1.0" encoding="UTF-8"?>
 
<bookstore>
  <book>
    <title lang="en">ABC</title>
    <author>Author Name</author>
    <year>2020</year>
    <price>100</price>
  </book>
</bookstore>

Explanation:

The nodes in the above XML document are:

Root element node : <bookstore>

Element node: <author>Author Name</author>

Attribute node: lang=”en”

Atomic values:

The nodes with no children or parent are called the Atomic values.

Example:

The atomic values in the above XML document are:

Author Name
"en"

Items:

The atomic values or nodes are called the items.

Relationship of Nodes:

Parent:

In XPath, one parent is there for each element and attribute.

Example:

<book>
    <title lang="en">ABC</title>
    <author>Author Name</author>
    <year>2020</year>
    <price>100</price>
  </book>

Explanation:

In the above XML document, the book element is the parent of the title, author, year, and price.

Children:

There may be zero, one or more children for each element node.

Example:

<book>
    <title lang="en">ABC</title>
    <author>Author Name</author>
    <year>2020</year>
    <price>100</price>
  </book>

Explanation:

In the above XML document, the title, author, year, and price elements are the children of the book element.

Siblings:

Nodes with the same parent are called siblings.

Example:

<book>
    <title lang="en">ABC</title>
    <author>Author Name</author>
    <year>2020</year>
    <price>100</price>
  </book>

Explanation:

In the above XML document, the title, author, year, and price elements are all siblings.

Ancestors:

The ancestors are the node’s parent, parent’s parent, etc.

Example:

<bookstore>
<book>
    <title lang="en">ABC</title>
    <author>Author Name</author>
    <year>2020</year>
    <price>100</price>
  </book>
</bookstore>

Explanation:

In the above XML document, the ancestors of the title element are the book element and the bookstore element.

Descendants:

The descendants are the node’s children, children’s children, etc.

Example:

<bookstore>
<book>
    <title lang="en">ABC</title>
    <author>Author Name</author>
    <year>2020</year>
    <price>100</price>
  </book>
</bookstore>

Explanation:

In the above XML document, the descendants of the bookstore element are the book, title, author, year, and price elements.