The XML Query Working Group and the XSLT Working Group have published six documents as W3C Recommendations to strengthen JSON and Web Platform support through maps, arrays, new functions:
- XQuery 3.1: An XML Query Language
- XQueryX 3.1
- XML Path Language (XPath) 3.1
- XQuery and XPath Data Model 3.1
- XPath and XQuery Functions and Operators 3.1
- XSLT and XQuery Serialization 3.1
The 3.1 work extends XPath and XQuery with map and array data structures along with additional functions and operators for manipulating them; a primary motivation was to enhance JSON support.
XPath is a domain-specific language for identifying and extracting nodes from a tree (typically) built from XML or JSON and defined by the XQuery and XPath Data Model) and also an expression language with typed tree nodes and functions among the first-class objects. XPath expressions can call functions and use operators defined in the Functions and Operators specification.
XQuery extends XPath to support complex joins, windowing, grouping and other operations across collections of trees that are potentially stored in high-performance indexed databases.
XQueryX is an XML representation of XQuery expressions.
The Serialization specification describes how results of XPath and XQuery(X) expressions can be delivered in HTML, XHTML, JSON, XML or text.