【发布时间】:2011-07-05 18:03:46
【问题描述】:
我尝试在libxml2 中使用XPath 2.0 exp //span/string(.),但它不起作用。
所以,我的问题是:libxml2 是否支持XPath 2.0?
【问题讨论】:
标签: objective-c debugging libxml2 xpath-2.0 interface-implementation
我尝试在libxml2 中使用XPath 2.0 exp //span/string(.),但它不起作用。
所以,我的问题是:libxml2 是否支持XPath 2.0?
【问题讨论】:
标签: objective-c debugging libxml2 xpath-2.0 interface-implementation
根据 libxml2 维护者的this 2007 email,libxml2 不支持 XPath 2.0。
【讨论】:
据我所知——没有。大多数 XPath 2.0 实现都是 XSLT 2.0 处理器或 XQuery 处理器的一部分。
【讨论】:
您可能对 an XPath 2.0 extension to libxml2 感兴趣 - 但是,有 2 个注意事项:它正在进行中,并且仅可免费用于非商业用途。
希望这会有所帮助,
最好的问候,卡斯滕
ps: 我既不隶属于从事 libx 工作的人,也没有任何使用它的个人经验或超出他们网站信息的知识。
【讨论】:
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 实现了许多与标记语言相关的现有标准:
由于 libxml2 支持 XPath 1.0,所以语法不正确:
//span/string(.)
应该是:
string(//span/.)
为了澄清,string 方法也是 XPath 1.0 的一部分。供将来参考:
libxml2 支持 XPath 1.0
Objective-C 通过 GNUStep/NextStep 中 NSXMLNode 的nodesForXPath 方法支持 XPath 2.0
Cocoa 实现使用 XPath 2.0,这是万维网联盟推荐的。
参考文献
【讨论】:
//span/string(.) 是有效的 XPath 2.0。
So, my question is: does libxml2 support XPath 2.0 or not?