カテゴリ / テンプレート

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

XML変換におけるXQueryの位置付け

関係モデル関係データベース) における関係問合せが、数学的背景を有する関係代数演算ないし関係論理演算に基づくように、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と同じ結果を得ることができる。

関連項目 編集

外部リンク 編集

関連リソース 編集