JavaXPathパーサー-概要

XPathは、World Wide Web Consortium(W3C)の公式推奨事項です。XMLファイル内の情報を検索するための言語を定義します。XMLドキュメントの要素と属性をトラバースするために使用されます。XPathは、XMLドキュメントから関連情報を照会するために使用できるさまざまなタイプの式を提供します。

XPathとは何ですか?

  • Structure Definations − XPathは、要素、属性、テキスト、名前空間、処理命令、コメント、ドキュメントノードなどのXMLドキュメントの部分を定義します。

  • Path Expressions − XPathは、XMLドキュメント内のノードの選択やノードのリストなどの強力なパス式を提供します。

  • Standard Functions − XPathは、文字列値、数値、日付と時刻の比較、ノードとQNameの操作、シーケンス操作、ブール値などを操作するための標準関数の豊富なライブラリを提供します。

  • Major part of XSLT − XPathはXSLT標準の主要な要素の1つであり、XSLTドキュメントを操作するにはXPathに関する十分な知識が必要です。

  • W3C recommendation − XPathは、World Wide Web Consortium(W3C)の公式推奨事項です。

XPath式

XPathは、パス式を使用して、XMLドキュメントからノードまたはノードのリストを選択します。以下は、XMLドキュメントから任意のノード/ノードのリストを選択するための便利なパスと式のリストです。

シニア番号 表現と説明
1

node-name

指定された名前「nodename」を持つすべてのノードを選択します

2

/

選択はルートノードから始まります

3

//

選択は、選択に一致する現在のノードから開始されます

4

.

現在のノードを選択します

5

..

現在のノードの親を選択します

6

@

属性を選択します

7

student

Example −「student」という名前のすべてのノードを選択します

8

class/student

Example −クラスの子であるすべての学生要素を選択します

9

//student

ドキュメント内のどこにいても、すべての学生要素を選択します

述語

述語は、特定のノードまたは特定の値を含むノードを見つけるために使用され、[...]を使用して定義されます。

結果
/ class / student [1] class要素の子である最初のstudent要素を選択します。
/ class / student [last()] class要素の子である最後のstudent要素を選択します。
/ class / student [last()-1] class要素の子である最後の1つのstudent要素を選択します。
//学生[@ rollno = '493'] 値が「493」のrollnoという名前の属性を持つすべての学生要素を選択します