ページの先頭行へ戻る
Interstage Service Integrator Studio ISI Studio ヘルプ

A.5 情報取得の指定例

XML Emergerで情報取得する場合のXPathの指定例について説明します。

XPathの指定例と、それぞれのXPathが指す箇所を以下に示します。

図A.12 情報取得の指定例


図内の番号

XPathでの指定

説明

(1)

/booklist/book/title/@subtitle

最初に出現する“title”の属性“subtitle”の値“emerge”が取得されます。
XPathで属性ノードを表す場合は、属性名の前に“@”をつけます。

(2)

/booklist/book/title/text()

最初に出現する“/booklist/book/title”の要素内容“XML Emerger”が取得されます。
なお、“text()”は、テキストノードであることを表しています。

(3)

/booklist/book/price

“/booklist/book/price”タグが存在するので、以下が返却されます。

  • ISI 9.0以前のXPath指定を行う場合
    文字列“true”が返却されます。

  • ISI 9.1以降のXPath指定を行う場合
    “/booklist/book/price”の文字列値“1000”が返却されます。

(4)

/booklist/book[2]/@bookid

2番目に出現する“/booklist/book”の属性である“bookid”の値“B02”が取得されます。
XPathで属性ノードを表す場合は、属性名の前に“@”をつけます。

(5)

/booklist/book[2]/title/text()

2番目に出現する“/booklist/book”の子要素である“title”の要素内容“XML Parts”が取得されます。
なお、“text()”は、テキストノードであることを表しています。

/booklist/book[2]/summary/text()

2番目に出現する“/booklist/book”の子要素である“summary”は存在しないため、ログに警告が出力され、以下が返却されます。

  • ISI 9.0以前のXPath指定を行う場合
    nullが返却されます。

  • ISI 9.1以降のXPath指定を行う場合
    空文字が返却されます。

/booklist/book[2]/summary

2番目に出現する/booklist/book/summaryタグが存在しないので、以下が返却されます。

  • ISI 9.0以前のXPath指定を行う場合
    文字列“false”が返却されます。

  • ISI 9.1以降のXPath指定を行う場合
    空文字が返却されます。

/booklist/book/summary/text()

最初に出現する“/booklist/book/summary”の要素内容が空なので、ログに警告が出力され、以下が返却されます。

  • ISI 9.0以前のXPath指定を行う場合
    nullが返却されます。

  • ISI 9.1以降のXPath指定を行う場合
    空文字が返却されます。

/booklist/book[2]/*/text()

2番目に出現する“/booklist/book”の子要素のうち、最初に出現する要素であるtitleの要素内容、“XML Parts”を取得します。

/booklist/book[1]/price + /booklist/book[2]/price

最初と2番目の“/booklist/book”の子要素priceの内容を数値化し、足し合わせた値“2500”を取得します。

local-name(/booklist/book/price)

最初に出現する“/booklist/book/price”の要素名、“price”を取得します。

boolean(/booklist/book/price)

“/booklist/book/price”タグが存在するので、文字列“true”を返します。

boolean(/booklist/book/story)

“/booklist/book/story”タグが存在しないので、文字列“false”を返します。

(6)

/*/*[namespace-uri()='http://user'] [local-name()=book]/@bookid

2階層目のすべての要素のうち、URIが“http:// user”の名前空間に属し、かつ要素名が“book”である要素の属性“bookid”の値“B03”を取得します。

(6)

/booklist/p:book/@bookid(※1)

“/booklist”の子要素のうち、URIが“http:// user”の名前空間に属する“book”要素の属性“bookid”の値“B03”を取得します。

※1:処理対象のXML文書で使用されていない接頭辞をXPath式に使用する場合、接頭辞とその接頭辞に対応するURIの対応付けが必要です。対応付けは、名前空間接頭辞URI対応付け定義ファイルに、以下のように記述してください。

p = http://user

定義ファイルは、以下に格納されています。


“<INSDIR>\etc\def\properties\XPathNamespace.properties”

“/opt/FJSVesi/etc/def/properties/XPathNamespace.properties”