簡體   English   中英

XQuery:返回元素的值而不是元素本身

[英]XQuery: Return value of an element rather the element itself

我有一個包含以下內容的XML文檔

...
<foo>abc</foo>
...

如果我評估

return $xml//foo

我回來了

<foo>abc</foo>

有沒有辦法讓abc代替?

是的,您需要text()函數來選擇子文本:

return $xml/text()

如果你在$ xml中有嵌套的標記結構,要小心,因為這只會對文本節點有一個深度。 如果你想把所有的文本節點放在一起,去掉其他的XML結構,這將是任意深入的:

return $xml//text()

使用字符串函數獲取節點的字符串內容。

return string($xml)

要僅返回元素內的數據,您可以使用:

return data($xml)

轉換為xs:string {xs:string($xml/foo)}

OSB(oracle服務總線)用戶可以使用以下功能。

fn-bea:serialize($xml)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM