XQuery
読み方:エックスクエリー
XQueryとは、XML文書を検索・抽出するための関数型言語のことである。W3Cによって規格が策定されている。
XQueryは、XML文書における要素や属性を指定するXPathをベースとし、XPath 2.0をサブセットとして包含している。XML文書に対してデータベース照会を行うことが可能であるだけでなく、データの比較、代入など、リレーショナルデータベースのように多様な問い合わせを行うことも可能となっている。
2006年9月現在、XQueryはW3Cによって「勧告候補」(Candidate Recommendation)として規格の策定作業が進められている。
参照リンク
XQuery 1.0: An XML Query Language - (W3C)
XQuery
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/08/05 19:30 UTC 版)
![]() | この記事は英語版の対応するページを翻訳することにより充実させることができます。(2024年8月) 翻訳前に重要な指示を読むには右にある[表示]をクリックしてください。
|

XQueryは、静的型付け機能を(実装依存の機能として)持つXMLデータ問合せの為の問い合わせ言語であり、チューリング完全な関数型言語でもある。 XPathの目的が木の節点を指し示す(アドレッシング)ことであるのに対して、XQueryの目的はXMLデータソースのための照会機能を提供することである。
関係モデル (関係データベース) における関係問合せが、数学的背景を有する関係代数演算ないし関係論理演算に基づくように、XQuery問合せには形式意味論が与えられている。
XQueryはQuiltと呼ばれる言語をベースに設計されているが、他にもXPath 1.0, SQL、XQL、OQL、XML-QL、MLといった言語の影響を受けている。 2007年1月23日にXQuery 1.0のW3Cでの標準化作業が終了し、勧告(Recommendation)となった。その後は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と同じ結果を得ることができる。
関連項目
外部リンク
- 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)
XQuery
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2017/12/30 02:54 UTC 版)
名前に "query"(クエリ)とあるが、汎用言語としての機能を持つ。ゼロックスのウェブプログラミングモデルを起源とし、マイクロソフト、オラクル、IBMなどが採用していたデファクトスタンダードだったが、W3C勧告として採用された。XPath 2.0 に基づいている。XQuery のプログラムは XSLT と同様に副作用がなく、機能的にもほぼ同じだが(変数や関数の宣言、W3Cスキーマ型を使った繰り返しなど)、文法は大きく異なる。XQuery はロジック駆動型であり、FOR、WHERE、関数合成(例えば fn:concat("", generate-body(), ""))などを使う。一方、XSLTはデータ駆動型であり、入力文書が条件を満たすとテンプレートが起動される形式であり、コードが書かれている順序に実行されるわけではない。
※この「XQuery」の解説は、「XML変換言語」の解説の一部です。
「XQuery」を含む「XML変換言語」の記事については、「XML変換言語」の概要を参照ください。
固有名詞の分類
- XQueryのページへのリンク