XQuery for節のサンプル 全〜要素を取り出す
次のようなXMLファイルがあったとします。
BookList.xml
<BookList> <Text Id="ID000001"> <Type>1</Type> <Name>XMLデータベース</Name> </Text> <Text Id="ID000002"> <Type>1</Type> <Name>XQuery</Name> <Information>なし</Information> </Text> <Text Id="ID000010"> <Type>2</Type> <Name>初心者のためのJava</Name> <Information/> </Text> </BookList>
このXML文書から、すべてのName要素を取り出す場合のXQueryは、
(カレントディレクトリにファイルがあることにします)
for $x in fn:doc("BookList.xml")//Name return $x
結果
<Name>XMLデータベース</Name> <Name>XQuery</Name> <Name>初心者のためのJava</Name>
昨日の記事に書いたシェルでのforと少し似てるなと思いました。
$xは変数なので好きな名前で大丈夫です。
変数に$つけるのって意外と普通なんですね、PHPぐらいしか知らなかった……。
ちなみに//で要素指定するのはXPathですね。