- PR -

[Xindice]XPathでの検索

1
投稿者投稿内容
wolf
会議室デビュー日: 2003/03/18
投稿数: 1
投稿日時: 2003-03-18 19:16
お世話になります。
Xindiceをいじっていて、ちょっと疑問に思ったのですが
例えば、以下のようなXMLデータで、「123456789」の
テキスト部分を検索したい場合には
どういうXPathになるのでしょうか?

<AAA>
  <BBB>
  123456789
  </BBB>
</AAA>

<AAA param = "123456789">などの
属性の検索は、わかるのですが…

よろしくお願いします
付けマスカラ
会議室デビュー日: 2002/09/25
投稿数: 3
投稿日時: 2003-03-26 10:40
以下のようなXPathでエレメントのテキスト部分の値で目的のXMLドキュメントを
取得することができると思います。
このXPathの例では、AAAエレメントに対してのフィルタを定義しているため
検索結果はAAAエレメントからが表示されます。

BBBエレメントの値が'123456789'のXML文書の検索
//AAA[BBB=*[text()='123456789']]
  このXPathで検索する場合、BBBエレメントは以下のように改行が含まない
  記述でないと検索できません。
<AAA>
    <BBB>123456789</BBB>
</AAA>

BBBエレメントの値が'123'で始まるXML文書の検索
//AAA[BBB=*[text()[starts-with(.,'123')]]]

BBBエレメントの値に'456'が含まれているXML文書の検索
//AAA[BBB=*[text()[contains(.,'456')]]]

以上、参考になれば幸いです。
1

スキルアップ/キャリアアップ(JOB@IT)