thumb|XML変換におけるXQueryの位置付け XQueryは、静的型付け機能を(実装依存の機能として)持つXMLデータ問合せの為の問い合わせ言語であり、チューリング完全な関数型言語でもある。 XPathの目的が木の節点を指し示す(アドレッシング)ことであるのに対して、XQueryの目的はXMLデータソースのための照会機能を提供することである。

関係モデル (関係データベース) における関係問合せが、数学的背景を有する関係代数演算ないし関係論理演算に基づくように、XQuery問合せには形式意味論が与えられている。

XQueryはQuiltと呼ばれる言語をベースに設計されているが、他にもXPath 1.0, SQL、XQL、OQL、XML-QL、MLといった言語の影響を受けている。 2007年1月23日にXQuery 1.0のW3Cでの標準化作業が終了し、勧告()となった。その後はXQuery 3.0が2014年4月8日、XQuery 3.1が2017年3月21日に勧告された。

XPath 1.0とXQuery 1.0 (XPath 2.0) XQuery 1.0はXPath 2.0の拡張である。XPath 2.0でもXQuery 1.0でも構文的に正しく、かつ正常に実行される式は、いずれの言語でも同じ結果を返す。 一方で、XPath 1.0とXQueryのサブセットであるXPath 2.0とは、基本的性質に違いがある。 XPath 1.0では問合せ結果が重複のないノード集合と定義される一方で、XPath 2.0での問合せ結果は順序を持ち、値の重複を許すシーケンスである。 ただし、XPath 2.0にはXPath 1.0に対する後方互換性モードがオプションとして存在し、このオプションを利用することができる環境においては XPath 2.0でもXPath 1.0と同じ結果を得ることができる。

関連項目 XML XPath XSLT OQL (オブジェクト問い合わせ言語) SQL XMLデータベース ネイティブXMLデータベース コンピュータ言語 プログラミング言語 宣言型言語 関数型言語 問い合わせ言語

外部リンク Don ChamberlinによるXQueryの解説記事(Web Archive) XQueryチュートリアル(@IT) XQuery from the Experts: Influences on the design of XQuery

関連リソース xquery cover page XQuery 1.0: An XML Query Language (Second Edition) - W3C勧告 XQuery 3.0: An XML Query Language - W3C勧告 XQuery 3.1: An XML Query Language - W3C勧告 XQuery 1.0 and XPath 2.0 Formal Semantics XQuery 1.0 and XPath 2.0 Data Model (XDM) XQuery 1.0 and XPath 2.0 Functions and Operators XSLT 2.0 and XQuery 1.0 Serialization Building a Tokenizer for XPath or XQuery XML Query Use Cases XML Query Test Suite XQuery Update Facility XQuery 1.0 and XPath 2.0 Full-Text XQuery 1.0 and XPath 2.0 Functions and Operators Error Codes Namespace XQuery 1.0 Grammar Test Page XQuery implementations JSR 225: XQuery API for JavaTM (XQJ)