Xml 如何使用XPath显示所有节点子节点、子节点和更深层的节点

Xml 如何使用XPath显示所有节点子节点、子节点和更深层的节点,xml,xpath,xquery,exist-db,Xml,Xpath,Xquery,Exist Db,这是DTD文件 <?xml version="1.0" encoding="utf-8"?> <!ELEMENT akweny (akwen+)> <!ELEMENT akwen (nazwa, typ, powierzchnia, akweny?)> <!ELEMENT nazwa (#PCDATA)> <!ELEMENT typ (#PCDATA)> <!ELEMENT powierzchnia (#PCDATA)>

这是DTD文件

<?xml version="1.0" encoding="utf-8"?>
<!ELEMENT akweny (akwen+)>
<!ELEMENT akwen (nazwa, typ, powierzchnia, akweny?)>
<!ELEMENT nazwa (#PCDATA)>
<!ELEMENT typ (#PCDATA)>
<!ELEMENT powierzchnia (#PCDATA)>
但如果我把nazwa=“Atlantycki”改为nazwa=“pó322Ňnocne”,就什么也看不出来了。是否正确?

“如果我将nazwa=“Atlantycki”更改为nazwa=“północne”,则不会显示任何内容。是否正确?”。是的,这是预期的行为

基本上,此XPath查询:

//akweny[ancestor::akwen/nazwa="Atlantycki"]
将搜索具有ancnestor的
元素:

具有子元素的元素:

Atlantycki

因此,如果将
nazwa=“Atlantycki”
更改为
nazwa=“północne”
,查询将不会返回任何结果。因为满足查询的唯一
元素不是任何
元素的父元素:

<akwen>
    <nazwa>Północne</nazwa>
    <typ>morze</typ>
    <powierzchnia>750</powierzchnia>
</akwen>

波诺科内
桑泽
750

换句话说,
元素满足了查询

关于该信息的要求太多了。但是有人可以帮我找到下面的想法nazwa=“Atlantycki”?Plzit不清楚您确切需要哪些元素?这个怎么样:
/akweny/akwen[/nazwa='Atlantycki']/akweny/akwen
。如果这不是您想要的,我建议编辑这个问题,发布希望XPath返回的所有XML元素谢谢!
//akweny[ancestor::akwen/nazwa="Atlantycki"]
<akwen>
    <nazwa>Północne</nazwa>
    <typ>morze</typ>
    <powierzchnia>750</powierzchnia>
</akwen>