我尝试使用XPath 2.0
exp //span/string(.)
in libxml2
,但它不起作用。
所以,我的问题是:libxml2
支持XPath 2.0
与否?
问问题
3680 次
4 回答
18
根据这封来自 libxml2 维护者的2007 年电子邮件,libxml2 不支持,也不会支持 XPath 2.0。
于 2011-09-09T18:12:30.777 回答
1
据我所知——没有。大多数 XPath 2.0 实现是 XSLT 2.0 处理器或 XQuery 处理器的一部分。
于 2011-07-06T02:58:34.327 回答
0
您可能对 libxml2 的 XPath 2.0 扩展感兴趣 - 但是,有两个注意事项:它正在进行中,并且仅可免费用于非商业用途。
希望这可以帮助,
最好的问候,卡斯滕
ps:我既不隶属于从事 libx 工作的人,也没有任何使用它的个人经验或超出他们网站信息的知识。
于 2011-09-23T14:41:21.740 回答
0
Libxml2 实现了许多与标记语言相关的现有标准:
XML 标准:http://www.w3.org/TR/REC-xml XML 中的命名空间:http://www.w3.org/TR/REC-xml-names/ XML 基础:http://www.w3.org/TR/xmlbase/ RFC 2396:统一资源标识符 http://www.ietf.org/rfc/rfc2396.txt XML 路径语言 (XPath) 1.0:http://www.w3.org/TR/xpath HTML4 解析器:http://www.w3.org/TR/html401/ XML 指针语言 (XPointer) 1.0 版:http://www.w3.org/TR/xptr XML 包含 (XInclude) 版本 1.0:http://www.w3.org/TR/xinclude/ ISO-8859-x 编码,以及 rfc2044 [UTF-8] 和 rfc2781 [UTF-16] Unicode 编码,以及更多如果使用 iconv 支持 SGML 开放技术决议 TR9401:1997 的一部分 XML 目录工作草案 2001 年 8 月 6 日:http://www.oasis-open.org/committees/entity/spec-2001-08-06.html 规范 XML 版本 1.0:http://www.w3.org/TR/xml-c14n 和 Exclusive XML Canonicalization CR 草案 http://www.w3.org/TR/xml-exc-c14n 放松 NG,ISO/IEC 19757-2:2003,http://www.oasis-open.org/committees/relax-ng/spec-20011203.html W3C XML 模式第 2 部分:数据类型 REC 2001 年 5 月 2 日 W3C xml:id 工作草案 2004 年 4 月 7 日
由于 libxml2 支持 XPath 1.0,因此语法不正确:
//span/string(.)
应该:
string(//span/.)
为澄清起见,该string
方法也是 XPath 1.0 的一部分。备查:
libxml2 支持 XPath 1.0
nodesForXPath
Objective-C 通过GNUStep/NextStep 中的 NSXMLNode 方法支持 XPath 2.0
Cocoa 实现使用 XPath 2.0,这是万维网联盟推荐的。
参考
于 2014-07-11T01:15:54.103 回答