当前位置: 首页 > 知识库问答 >
问题:

W3C文档xpath不返回节点集

胡高朗
2023-03-14

Hello:)我想要所有枚举节点,但集合的长度返回0。将来我需要枚举列表。值属性,例如,当前它将是一个包含WOW的元素列表。但问题是我根本无法选择枚举节点。

xml部分:

<xs:complexType name="Code.Something">
      <xs:complexContent>
         <xs:restriction base="xxx:Code">
            <xs:sequence>
               <xs:element name="code" form="unqualified">
                  <xs:simpleType>
                     <xs:restriction base="xs:token">
                        <xs:enumeration value="WOW">
                           <xs:annotation>
                              <xs:appinfo>
                                 <Test>ABC</Test>
                              </xs:appinfo>
                           </xs:annotation>
                        </xs:enumeration>

长度为1:

((NodeList) xPath.evaluate("//*[local-name()='complexType'][@name='Code.Something']",
        doc, XPathConstants.NODESET)).getLength(); 

长度为0-为什么

 ((NodeList) xPath.evaluate("//*[local-name()='complexType'][@name='Code.Something']/*[local-name()='enumeration']",
        doc, XPathConstants.NODESET)).getLength(); 

共有1个答案

董联
2023-03-14

节点之间的单斜杠(node1/node2)表示您要选择node1的直接子节点的node2。您需要使用节点之间的双斜杠//node1//node2)来选择node2,它是node1的后代:

//*[local-name()='complexType'][@name='Code.Something']//*[local-name()='enumeration']
 类似资料:
  • 在本章中,我们将详细介绍XPath表达式,其中包括常见的节点类型,XPath定义和句柄。 序号 节点类型 描述 1 Root XML文档的根元素节点。 2 Element 元素节点。 3 Text 元素节点的文本。 4 Attribute 元素节点的属性。 5 Comment 注释

  • 环境 期望的行为 我想更新文档并返回原始文档。 实际行为 正在返回更新的文档,而不是原始文档。 我试过的 起初,我在查看findAndModify: http://mongodb.github.io/node-mongodb-native/3.1/api/Collection.html#findAndModify 然而,那里的文档表示它已被弃用,并使用findOneAndUpdate、findOn

  • 问题内容: 我正在搜索索引中的文档,然后尝试通过获取其中的一些文档。尽管收到了一组结果,但是某些文档无法通过简单的get来检索。更糟糕的是,我可以通过URI搜索获得相同的文档,其中 例如,运行一个简单的GET 给我结果: 但是,如果我使用相同的_id进行搜索: 我得到了预期的结果: 我正在通过Stretcher ruby​​ API索引文档,索引后立即进行刷新。我的本地设置是 2个节点 。我正在运

  • 我正在做一个项目,我试图让lxml从不同网页上的不同表格中提取股票数据。当我运行程序试图打印我试图提取的值时,我得到了空括号 以下是我称之为的方式: 以及: 我已经从XPath中删除了tbody,就像一些类似的问题所建议的那样。任何帮助或建议将不胜感激,谢谢!

  • 问题内容: 我用如下猫鼬定义了一个模型: 然后创建了一个用户,可以通过mongo控制台完美地找到它,如下所示: 但是,当我尝试通过带有mongoose的node.js访问此对象时,要检索的对象不是此类文档,而是包装器: 这段代码… 从console.dir(doc)产生此输出… 因此,密码将不匹配,因为doc.password未定义。 为什么会这样呢? 问题答案: 这正是包裹猫鼬对象的猫鼬的目的。