xml
  1. xml-xquery-syntax

XML XQuery Syntax

XQuery is a powerful query language designed for querying and manipulating XML data.

Syntax

The basic syntax of an XQuery expression is as follows:

    for $variable in expression
    where predicate
    order by expression
    return result
  • for: introduces the variable and specifies the expression that it will be bound to.
  • $variable: the name of the variable to be bound.
  • in: separates the variable declaration from the expression that it will be bound to.
  • expression: the expression to be evaluated.
  • where: specifies the predicate that the expression must satisfy.
  • predicate: the condition that the expression must satisfy.
  • order by: specifies the expression to sort the results by.
  • result: the value to be returned.

Example

Let’s suppose that we have the following XML file:

<persons>
   <person>
      <name>John</name>
      <age>25</age>
   </person>
   <person>
      <name>Ann</name>
      <age>32</age>
   </person>
   <person>
      <name>Mike</name>
      <age>45</age>
   </person>
</persons>

We can retrieve the names of all persons older than 30 using the following query:

    for $person in /persons/person
    where $person/age > 30
    return $person/name

Output

This query will return the following names:

    Ann
    Mike

Explanation

The query selects all person elements from the persons root element, checks whether the age of each person is greater than 30, and returns the name element of those that satisfy the condition.

Use

XQuery is primarily used to query XML data sources. It is a declarative language, meaning that it specifies the desired result rather than the exact steps needed to achieve it. This makes it easier to write and understand queries, especially when working with complex XML structures.

Important Points

  • XQuery is a powerful and flexible language for querying XML data.
  • It has a syntax similar to SQL, but with some notable differences.
  • XQuery is not limited to querying XML, and can process other data types including JSON and RDF.
  • XQuery is a declarative language, making it easier to read and write queries.

Summary

XQuery is a powerful and flexible language for querying XML data. With a syntax similar to SQL, it is easy to learn and use. XQuery is not limited to querying XML, and can be used with other data types including RDF and JSON. Its declarative nature makes it easy to read and write queries, even when working with complex XML structures.

Published on: