XQuery 3.0 (and 3.1) Features

XQuery 3.0 has been released as a working draft in December 2011. The new XQuery 3.0 specification standardizes many of the features which had been available as extension modules in eXist and other implementations for quite a while, for example: higher-order functions, try/catch or group by.

eXist also supports parts of the forthcoming XQuery 3.1, namely maps.

The following sections present usage examples for those new features. If you click on the edit link, the example snippet will be loaded into eXide so you can run, edit and play around with it.

  1. String concatenation and bang operators
  2. Switch expression
  3. Catching errors with try/catch
  4. Using group by in FLWOR expressions
  5. Higher-order functions, closures and partial function applications
  6. XQuery 3.1 maps