XML Queryとは、Web上のXMLデータの収集のために、柔軟で容易なデータ抽出方法を提供する世界的な標準化仕様です。
クエリ(Query)とは、データベースに対して特定の情報を検索(問合せ)することを意味するもので、「リレーショナルデータベースからのSQLによるデータ抽出」と同じように、XMLデータからデータ・コンテンツの収集が可能になるように開発されています。
現在の標準化活動では、XML selection(XPath2)といった次世代標準への対応も視野に入れており、XMLのシリアル化、全文検索、機能的なXMLデータモデルの提供、Webデータを操作するための機能・操作用の標準セットなどの提供を目指しています。
エックスクエリー:W3C仕様公開サイト(英語表記) 【URL】:http://www.w3.org/XML/Query
XML Query に関連する仕様
| ● XQuery 1.0: An XML Query Language | |
| XMLデータのあらゆる型を広く活用できるように設計されたクエリ言語の仕様です。 | |
| URL | http://www.w3.org/TR/xquery/ |
| ステータス | W3C 勧告候補 |
| 日付 | 2006/06/08 |
| ● XML Query (XQuery) Requirements | |
| XML Queryのデータモデル、代数、クエリ言語のために目標、必要条件、使用法についてのシナリオを指定するための仕様です。 | |
| URL | http://www.w3.org/TR/xquery-requirements |
| ステータス | W3C ワーキングドラフト |
| 日付 | 2005/06/03 |
| ● XQuery 1.0 and XPath 2.0 Formal Semantics | |
| XQuery 1.0とXPath 2.0の意味論を形式的に定義するための仕様です。 | |
| URL | http://www.w3.org/TR/xquery-semantics/ |
| ステータス | ワーキング ドラフト |
| 日付 | 2005/11/03 |
| ● XML Query Use Cases | |
| XML Queryの使用方法のシナリオを指定した文書です。 | |
| URL | http://www.w3.org/TR/xquery-use-cases/ |
| ステータス | ワーキング ドラフト |
| 日付 | 2005/09/15 |
| ● XML Syntax for XQuery 1.0 (XQueryX) | |
| XQuery 1.0のためのXMLシンタックスを表現するための仕様です。 | |
| URL | http://www.w3.org/TR/xqueryx/ |
| ステータス | ワーキング ドラフト |
| 日付 | 2005/04/04 |
その他の関連仕様
| ● XQuery 1.0 and XPath 2.0 Data Model | |
| XQuery 1.0とXPath 2.0のデータモデル(XPath 2.0とXSLT 2.0とXQueryと、それを参照する他の仕様データモデル)を定義している仕様です。 ※このデータモデルは、XPath 1.0のデータモデルとXML Queryの初期の研究のデータモデルに基づいています。 |
|
| URL | http://www.w3.org/TR/xpath-datamodel/ |
| ステータス | W3C 勧告候補 |
| 日付 | 2006/07/11 |
| ● XSLT 2.0 and XQuery 1.0 Serialization | |
| XSLT 2.0とXQuery 1.0の仕様書とそれらを参照する他の仕様のシリアル化を定義している仕様です。 | |
| URL | http://www.w3.org/TR/xslt-xquery-serialization/ |
| ステータス | W3C 勧告候補 |
| 日付 | 2006/07/08 |
| ● XQuery 1.0 and XPath 2.0 Functions and Operators | |
| XML Schema Part 2: Datatypesで定義されたデータ型と、XPath 2.0・XQuery 1.0・XSLT 2.0・その他のXML標準に関連するものに使用されるために定義されたデータ型の基本操作と機能を定義する仕様です。 | |
| URL | http://www.w3.org/TR/xpath-functions/ |
| ステータス | W3C 勧告候補 |
| 日付 | 2006/07/08 |
| ● XPath Requirements Version 2.0 | |
| XPath 2.0のための必要条件を記述し、XPath 2.0・XQuery 1.0 and XPath 2.0 Functions and Operators・XQuery 1.0 and XPath 2.0 Data Modelの結果を解釈する仕様です。 | |
| URL | http://www.w3.org/TR/xpath20req/ |
| ステータス | ワーキング ドラフト |
| 日付 | 2005/06/03 |
| ● XML Path Language (XPath) 2.0 | |
| XQuery 1.0とXPath 2.0のデータモデルを定義するデータモデルに一致する値の処理を可能にする表現言語です。 ※この言語名は、XMLツリーノードの階層的な符号付け手段を提供する、最も特徴的である「パス表現」に由来します。 |
|
| URL | http://www.w3.org/TR/xpath20/ |
| ステータス | W3C 勧告候補 |
| 日付 | 2006/07/08 |
| ● XML Query and XPath Full-Text Requirements | |
| XQueryとXPathで使用される全文検索のための必要条件を指定するための仕様です。 | |
| URL | http://www.w3.org/TR/xquery-full-text-requirements/ |
| ステータス | ワーキング ドラフト |
| 日付 | 2003/05/02 |
| ● XML Query and XPath Full-Text Use Cases | |
| XML QueryとXPath2の一部として、全文検索のための使用方法のシナリオを指定するための仕様です。 | |
| URL | http://www.w3.org/TR/xmlquery-full-text-use-cases/ |
| ステータス | ワーキング ドラフト |
| 日付 | 2006/05/01 |
| ● XML Query and XPath Full-Text | |
| 全文検索可能な、XQuery 1.0とXPath 2.0を拡張する言語であるXQuery 1.0のXPath 2.0全文検索のシンタックスと形式的な意味論を定義する仕様です。 | |
| URL | http://www.w3.org/TR/xquery-full-text/ |
| ステータス | ワーキング ドラフト |
| 日付 | 2006/05/01 |
XML Query 文法チェックページのご紹介
| ● XQuery 1.0 Grammar Test Page | |
| このページはXQuery 1.0のリーダとパーサ実装者にツールを提供するものです。表現を入力をしたり、パースのツリー図の表示を行ったり、また構文上正しくない場合のエラー結果を得ることができます。 | |
| URL | http://www.w3.org/2004/08/applets/xqueryApplet.html |
簡単なサンプル
| XML文書 Productlist.xml |
<?xml version="1.0" encoding="UTF-8" ?> <Productlist> <package> <category id="ASTERIA"/> <name option="no">ASTERIA Server Enterprise Edition</name> </package> <package> <category id="ASTERIA"/> <name option="yes">ASTERIA Server Standard Edition</name> <option> <adapter>Notes/Domino Adapter</adapter> <adapter>Excel Adapter</adapter> <adapter>LDAP Adapter</adapter> <adapter>WebMacro Adapter</adapter> <adapter>全銀TCP/IP Adapter</adapter> </option> </package> <package> <category id="ASTERIA"/> <name option="no">ASTERIA Designer</name> </package> <package> <category id="XMLTOOL"/> <name option="no">iPEX</name> </package> <package> <category id="XMLTOOL"/> <name option="no">iXSLT</name> </package> <package> <category id="XMLTOOL"/> <name option="no">iMaker for Excel</name> </package> </Productlist> |
| XQuery文書 product.xquery |
<?xml version="1.0" encoding="UTF-8" ?> <Product> FOR $product IN document("Productlist.xml")//package <asteria> WHERE (&product/category/@id="ASTERIA") ORDER BY &product/name RETURN { <name>&product/name/text()</name> ORDER BY &product/option/name IF (&product/name/@option = "yes") THEN RETURN { <option>&product/option/name/text()</option> } } </asteria> <xmltool> WHERE (&product/category/@id="XMLTOOL") ORDER BY &product/name RETURN { <name>&product/name/text()</name> } </xmltool> </Product> |
| 処理結果 | <?xml version="1.0" encoding="UTF-8" ?> <Product> <asteria> <name>ASTERIA Server Enterprise Edition</name> </asteria> <asteria> <name>ASTERIA Server Standard Edition</name> <option>Notes/Domino Adapter</option> <option>Excel Adapter</option> <option>LDAP Adapter</option> <option>WebMacro Adapter</option> <option>全銀TCP/IP Adapter</option> </asteria> <asteria> <name>ASTERIA Designer</name> </asteria> <xmltool> <name>iPEX</name> </xmltool> <xmltool> <name>iXSLT</name> </xmltool> <xmltool> <name>iMaker for Excel</name> </xmltool> </Product> |
日時: 2006年07月12日 15:00 | | TrackBack
