0

xml文件是:

<xml-fragment xmlns:xyz="http://someurl">
   <xyz:xyzcontent>
     <contentattribute>
       <key>tags</key>
       <value>tag1, tag2</value>
     </contentattribute>
   </xyz:xyzcontent>
...

我尝试了以下方法:

XPathExpression createdDateExpression = xpath.compile("/contentattribute/key/attribute::tags/value");
4

1 回答 1

1

您的查询有几个问题。

  • XML 已损坏(根标签未关闭)- 可能只是复制/粘贴错误
  • 您从 XML 树中间的某个地方开始,但实际上尝试从根节点进行查询。在开始时使用后代或自我轴//
  • 您使用 -axis 查询哪个属性attribute?空无一人。
  • 你在哪里注册命名空间?无论如何,什么是命名空间xyz?我猜它实际上是vp,但是您混淆了不完全(或者没有提供文档的所有相关部分)。
  • 使用谓词和字符串比较在轴步长处进行过滤。

尝试以下操作:

  • 确保注册命名空间,查看参考资料(或提供更多信息)。
  • 使用 XPath 查询//contentattribute[key='tags']/value
于 2013-10-15T18:20:26.500 回答