如果我有像
这样的XPath查询NodeA/NodeB[@WIDTH and not(@WIDTH="20")] | NodeC[@WIDTH and not(@WIDTH="20")]/NodeD
是否有任何API可用于将此XPath查询可视化为一堆原子表达式,类似于(以下是通用的)
我试图看看我们是否可以将XPath表达式转换为接近英语的自定义表达式,反之亦然。
如果没有可用的API,那么最好的方法是什么? 提前致谢。
答案 0 :(得分:1)
您可以使用任何开源XPath解析器并根据您的需要对其进行自定义,但这可能非常具有挑战性。
XQuery具有基于XML的表示( XQueryX ),这完全涵盖了XPath 2.0。然而,人们必须用这种XML表示来写,而不是相反。我不知道XQuery和XQueryX之间的翻译器。如果存在,它将接近满足您的需求。
更新:有这样的翻译工具:W3C XPath/XQuery Applets。请特别注意 Grammar Test Page for XPath 2.0 。
以下是该工具的工作原理:
alt text http://www.freeimagehosting.net/uploads/c85e730293.png