解析将HTML转义为xqilla中的节点

时间:2014-03-10 15:17:38

标签: xquery xqilla

我尝试使用XQilla从rss 2.0提要(描述标记)获取文本。地址是here。这很好,但标签包含转发的HTML,如

"<a href="some_address>..."

将这个HTML放在节点中并进一步使用它会很有用,但我在这里不知所措。我可以用

获取标签内容
let $desc := $item/*[name()='description']

但不知道如何去除它。我尝试了parse-html,它只剥离标签文本并返回一个字符串,就像data()函数一样。在网上搜索表明存在扩展功能,但在其他解析器中存在。有没有办法在XQilla中做到这一点?顺便说一句,我正在处理的代码是JAWS ResearchIt查找源。

1 个答案:

答案 0 :(得分:2)

XQilla与许多其他XQuery实现一样 - proprietary function to load XML and HTML from a string(它们没有锚标签,因此您需要滚动文档,对不起)。

xqilla:parse-xml($xml as xs:string?) as document-node()?
xqilla:parse-html($html as xs:string?) as document-node()?

鉴于$desc包含未解析的HTML,xqilla:parse-html($desc)将返回解析结果。