Looking for xquery Answers? Try Ask4KnowledgeBase
Looking for xquery Keywords? Try Ask4Keywords

xqueryxqueryの使い方


備考

このセクションでは、xqueryの概要と、なぜ開発者がそれを使いたいのかを概説します。

また、xquery内の大きなテーマについても言及し、関連トピックにリンクする必要があります。 xqueryのドキュメンテーションは新しいものなので、それらの関連トピックの初期バージョンを作成する必要があります。

XMLデータの抽出

XML入力からデータを処理するために、XQueryはXPathを使用します。
これにより、データのフィルタリングと再構成が容易になります。

与えられたXML入力

<?xml version="1.0" encoding="UTF-8"?>
<applications>
  <application>
    <id>MyApp</id>
    <name>My Application</name>
    <version>1.0</version>
  </application>
  <application>
    <id>SomeApp</id>
    <name>Some Application</name>
    <version>4.2</version>
  </application>
  <application>
    <id>TheOtherApp</id>
    <name>That one</name>
    <version>13.37</version>
  </application>
</applications>    
 

次のXQueryコードは、IDがMyApp アプリケーションを抽出しMyApp

/applications/application[id='MyApp']
 

次のXML文書を生成します。

<?xml version="1.0" encoding="UTF-8"?>
<application>
  <id>MyApp</id>
  <name>My Application</name>
  <version>1.0</version>
</application>
 

そして、このコードはバージョンが10より小さいアプリケーションを抽出し、 <oldApplications> タグに出力します:

    <oldApplications>{/applications/application[version < 10]}</oldApplications> 
 

これは、以下のXML文書を処理します。

<?xml version="1.0" encoding="UTF-8"?>
<oldApplications>
  <application>
    <id>MyApp</id>
    <name>My Application</name>
    <version>1.0</version>
  </application>
  <application>
    <id>SomeApp</id>
    <name>Some Application</name>
    <version>4.2</version>
  </application>
</oldApplications>   
 

インストールまたはセットアップ

xqueryの設定またはインストールに関する詳細な手順

値を合計

与えられたXML文書:

<?xml version="1.0" encoding="UTF-8"?>
<values>
  <value>1</value>
  <value>3</value>
  <value>5</value>
</values>
 

次のXQueryで値の合計を記述したXML文書を生成できます。

<total>{sum(/values/value)}</total>
 

これは次の文書になります:

<?xml version="1.0" encoding="UTF-8"?>
<total>9</total>
 

静的XMLの記述

XMLデータはXQueryのように記述でき、出力にも表示されます。
次のコードは、有効なXQueryと見なすことができます。

<application>
  <id>MyApp</id>
  <name>My Application</name>
  <version>1.0</version>
</application>
 

XQueryコードでは有効なXML文書を生成する必要があるため、すべてのデータを単一のルートタグに出力するように制限されています。

さらに、デフォルトでは、省略した場合、ほとんどのXQuery実装でXMLヘッダーが追加されます。例として、上記のコードはこの結果を生成します:

<?xml version="1.0" encoding="UTF-8"?>
<application>
  <id>MyApp</id>
  <name>My Application</name>
  <version>1.0</version>
</application>