ver.1サポートサイト

一覧表・単票 > ソースデザイン > XPathとは

最終更新日:2020年11月20日

概要

XSLファイルからXMLファイルにアクセスして情報を抜き出すため、「/」「@」などを使い、要素、子要素の階層を辿っていったり、属性を指定します。
その指定する技術を担っているのが、XPathです。
ブラウザでWebページにアクセスする場合に「/」を用い、「document/201610/index.html」など、目的のページまで階層を辿っていくのと似ています。

基本的な使い方

例)XMLファイルに次のような定義があるとします。
<要素A>
<要素B 属性C="属性値D">文字列</要素B>
</要素A>

XPathは以下の通り記述します。

記述方法 意味
/ 全ての要素を指定
要素A 要素A(<要素A>から</要素A>)を指定
要素A/要素B 要素Aの子要素B(<要素B></要素B>)を指定
要素A/ 要素B/@属性C 要素Aの子要素Bの属性Cを指定
//@属性C 親要素は関係なく、属性Cを指定
要素A/要素B/* 要素Aの子要素Bに属する全ての要素を指定
*[@属性C] 属性Cを持つ全ての要素を指定
要素A[1] 最初の要素Aを指定
要素A/要素B[position()=1] 要素Aの最初の子要素Bを指定
要素B[@属性C ="属性値D"] 属性Cの値が属性値Dではない要素Bを指定
要素A[要素B="文字列"] 値が文字列である要素Bを持つ要素Aを指定

スパイラルの場合

一覧表および検索フォームで使用するXMLファイルにおいて、検索方法(例.AND検索、OR検索)や抜き出せる情報の形式は、基本的にフィールドの差し替えキーワードが要素名の元になっています。
例)差し替えキーワードがemailの場合、要素名はusr_email

そのため、スパイラルに設定するXSLファイルでは、「usr_差し替えキーワード」「usr_差し替えキーワード/子要素」「usr_差し替えキーワード/子要素/@属性」というXPathをよく使います。