以下を含むXMLドキュメントがあります。
...
<foo>abc</foo>
...
評価した場合
return $xml//foo
戻る
<foo>abc</foo>
代わりにabc
だけを取得する方法はありますか?
はい、text()関数で子テキストを選択します。
return $xml/text()
ただし、$ xml内にタグ構造をネストする場合は注意してください。これは、テキストノードの深さが1レベルだけになるためです。すべてのテキストノードをまとめて、他のXML構造を削除する場合、これは任意の深さになります。
return $xml//text()
文字列関数を使用して、ノードの文字列コンテンツを取得します。
return string($xml)
使用できる要素内のデータのみを返すには:
return data($xml)
OSB(Oracle Service Bus)ユーザーは以下の機能を利用できます。
fn-bea:serialize($xml)
Xs:string {xs:string($xml/foo)}
にキャストします