4D v14.3DOM Find XML element |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
DOM Find XML element
|
DOM Find XML element ( elementRef ; xPath {; arrElementRefs} ) -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
elementRef | 文字 |
![]() |
XML要素参照 | |||||
xPath | テキスト |
![]() |
検索する要素のXPathパス | |||||
arrElementRefs | 文字配列 |
![]() |
見つかった要素参照のリスト (該当する場合) | |||||
戻り値 | 文字 |
![]() |
見つかった要素の参照 (該当する場合) | |||||
DOM Find XML element コマンドはXMLストラクチャ中で特定のXML要素を検索するために使用します。検索はelementRef 引数で指定された要素から開始されます。
探すXMLノードはXPath記法を使用で xPath 引数に指定します (XML DOMコマンドの概要の"XPath記法の利用"を参照)。インデックス付きの記法を使用できます。
Note: XML標準に従い、検索は大文字小文字を区別します。
コマンドは見つけた要素のXML酸所を返します。
arrElementRefs 文字列配列が渡されると、コマンドはこの配列に見つけた要素のリストを返します。この場合コマンドは結果としてarrElementRefs 配列の最初の要素を返します。この引数はxPath 引数で指定した場所に同じ名前の要素が複数ある場合に利用できます。
この例題は素早くXML要素を検索し、値を表示します:
vFound:=DOM Find XML element(vElemRef;"Items/Book[15]/Title")
DOM GET XML ELEMENT VALUE(vFound;value)
ALERT("The value of the element is: \""+value+"\"")
同じ検索を以下の方法で行うこともできます:
vFound:=DOM Find XML element(vElemRef;"Items/Book[15]")
vFound:=DOM Find XML element(vFound;"Book/Title")
DOM GET XML ELEMENT VALUE(vFound;value)
ALERT("The value of the element is: \""+value+"\"")
Note: 上の例題で示す通り、XPathパスは常にカレント要素の名前から始まります。これは相対XPathパスを扱う場合は特に重要です。
以下のXML構造があるとき:
<Root> <Elem1> <Elem2>aaa</Elem2> <Elem2>bbb</Elem2> <Elem2>ccc</Elem2> </Elem1> </Root>
以下のコードを使用してそれぞれのElem2要素への参照をarrAfound 配列に受け取ります:
ARRAY TEXT(arrAfound;0)
vFound:=DOM Find XML element(vElemRef;"/Root/Elem1/Elem2";arrAfound)
コマンドが正しく実行されるとシステム変数OKに1が設定され、そうでなければ0が設定されてエラーが生成されます。
エラーは以下の場合に生成されます:
プロダクト: 4D
テーマ: XML DOM
番号:
864
変更: 4D v11 SQL
DOM Count XML elements
DOM Create XML element
ランゲージリファレンス ( 4D v11 SQL Release 6)
ランゲージリファレンス ( 4D v12.4)
ランゲージリファレンス ( 4D v14 R2)
ランゲージリファレンス ( 4D v14 R3)
ランゲージリファレンス ( 4D v13.5)
ランゲージリファレンス ( 4D v14.3)
ランゲージリファレンス ( 4D v14 R4)