計算機システム実験 K-11:
XQuery の利用

天笠俊之
2006年2月17日

概要

W3C によって標準勧告となった,XML のための問合せ言語 XQuery の利用法を学ぶ.

演習の進め方

XQuery の解説は別紙資料を参照すること.ここでは coins での利用法を述べる. 今回の演習で使用するのは,Qizx/openである.

Qizx/open では,コマンドラインインタフェースによる操作と GUI による操作の 2 通りが提供されいている. coins で QuiP の GUI インタフェースを用いるには,

~amagasa/jikken/qizxopen/bin/qizxopen_studio

を実行する.すると,次のような画面が現れるはずである(うまく出ない場合は連絡してほしい):

studio

サンプルの問合せを実行するには,次のようなステップになる.

コマンドラインで実行するときは,

~amagasa/jikken/qizxopen/bin/qizxopen_batch shake.xq

という形式で実行する.このとき,問合せによっては XML データがカレントディレクトリにあることが要求されるので,コマンドを実行するディレクトリに注意すること.例えば,example ディレクトリの shake.xq を実行するには,次のようにする:

[amagasa@adonis1 theater]$ cd ~amagasa/jikken/11/theater/
[amagasa@adonis1 theater]$ ~amagasa/jikken/qizxopen/bin/qizxopen_batch ~amagasa/jikken/qizxopen/examples/shake.xq
1
28168
-> 1 item(s)
evaluation time: 226 ms, display time: 10116 ms

データ

実験データは以下のとおり. いずれも ~amagasa/jikken/11 の下にある.

チュートリアル (Tutorial)
別紙で配布したビーコンIT戌亥氏による チュートリアルのデータである. データは Tutorial/data ディレクトリ,問合せ例は Tutorial/query にある.
なお,XQuery の規格の変更に伴い,一部の問合せについてはエラーになってしまうので,その場合は適宜スキップして欲しい.たとえば,sortby は order by に変更になっている.もし質問があれば,担当教員に知らせて欲しい.
劇(play)のデータ
データは theater 問合せは Play の下にある.
映画データ
Tom Cruise が出演している19件の作品のデータ.movies の下にある.

課題レポートの提出

提出は任意とするが,積極的に取り組んで欲しい.以下の XQuery 問合せを作成して,実行結果を示すこと.全てではなく,できたところまでで構わない. 問合せの指示があいまいな部分については,適宜自分で仮定してよい. 上から下に行くにしたがって難しくなる.

提出期限は 3/1(水).メールの作成には以下のテンプレートを利用すると良い.