Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml Xpath非单调查询_Xml_Xpath - Fatal编程技术网

Xml Xpath非单调查询

Xml Xpath非单调查询,xml,xpath,Xml,Xpath,如何在Xpath中执行非单调查询 例如: <PetOwners> <OwnerID oid= "01"> <Name>John</Name> <Pets> <Pet> <No>1</No><Type>dog</Type></Pet> <Pet> <No>2</No>&l

如何在Xpath中执行非单调查询

例如:

<PetOwners>
   <OwnerID oid= "01">
      <Name>John</Name>
      <Pets>
        <Pet> <No>1</No><Type>dog</Type></Pet>
        <Pet> <No>2</No><Type>cat</Type></Pet>
      </Pets>
   </OwnerID>
   <OwnerID oid= "02">
      <Name>Jack</Name>
      <Pets>
        <Pet> <No>1</No><Type>dog</Type></Pet>
        <Pet> <No>2</No><Type>bird</Type></Pet>
      </Pets>
   </OwnerID>
</PetOwners>   

约翰
1dog
2cat
杰克
1dog
小鸟
要找到一个有狗但没有猫的主人,问题是什么

要找到一个有狗但没有猫的主人,问题是什么


对于“没有猫”位,您必须使用
not(Pets/Pet/Type='cat')
而不是
Pets/Pet/Type!='猫“
,因为后者的意思是“至少有一只宠物不是猫”(这总是正确的,因为我们已经确定他们有一只狗)。

请发布一个格式良好的XML输入文档。目前,
开始标记关闭了两次(
01
),而
开始标记根本没有关闭。有趣的是,为什么您将此查询描述为“非单调的”?这不是我遇到的一个术语。太好了!那个!=是那个阻碍我前进的角色。谢谢
/PetOwners/OwnerID[Pets/Pet/Type = 'dog'][not(Pets/Pet/Type = 'cat')]