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 ツリーの途中から開始していますが、実際にはルート ノードからクエリを実行しようとしています。最初に子孫軸または自己軸//を使用します。
  • attribute軸を使用してどの属性を照会していますか? なにもない。
  • 名前空間はどこに登録しましたか? xyzとにかく、名前空間とは何ですか? 実際にvpは だと思いますが、難読化が不完全です (または、ドキュメントの関連部分をすべて提供していません)。
  • 述語と文字列比較を使用して、軸のステップでフィルター処理します。

以下を試してください:

  • 必ず名前空間を登録し、そのリファレンスを参照してください (または詳細情報を提供してください)。
  • XPath クエリを使用する//contentattribute[key='tags']/value
于 2013-10-15T18:20:26.500 に答える