gpt4 book ai didi

java - 在 Java 中的一次 xpath.evaluation 调用中选择具有不同名称的多个节点

转载 作者:行者123 更新时间:2023-12-02 13:37:36 24 4
gpt4 key购买 nike

我想在一个 xpath.evalutaion 调用中选择具有不同名称的多个节点。我只知道如何选择一个同名的节点并获取其中的内容。在这个例子中我得到 <rrm:indentifier>内容。

String linkXPath = "/ds:dataSource/ds:artifact/ds:traceability/ds:links/ds:Link/ds:content/rrm:identifier/text()";
InputSource source = new InputSource(rootServicesResponse.getEntity().getContent());
NodeList attribute = (NodeList)(xpath.evaluate(linkXPath, source, XPathConstants.NODESET));

XML

<ds:traceability>
<ds:links>
<ds:Link type="Decomposition">
<rrm:title>Parent Of</rrm:title>
<ds:linkType>
https://localhost:9443/rm/types/_cyuacfNmEeatIKybawF-9Q
</ds:linkType>
<ds:isParentLink>true</ds:isParentLink>
<ds:isChildLink>false</ds:isChildLink>
<rrm:relation>
https://localhost:9443/rm/resources/_qmYQMfNpEeatIKybawF-9Q
</rrm:relation>
<rrm:identifier>1</rrm:identifier>
<ds:content>
<rrm:title>test</rrm:title>
<rrm:identifier>1</rrm:identifier>
<rrm:description/>
<rrm:format>Text</rrm:format>
<ds:artifactFormat>Requirement</ds:artifactFormat>
</ds:content>
</ds:Link>
<ds:Link type="Decomposition">
<rrm:title>Parent Of</rrm:title>
<ds:linkType>
https://localhost:9443/rm/types/_cyuacfNmEeatIKybawF-9Q
</ds:linkType>
<ds:isParentLink>true</ds:isParentLink>
<ds:isChildLink>false</ds:isChildLink>
<rrm:relation>
https://localhost:9443/rm/resources/_RQWuYQJXEeeQ67tlGaw8LA
</rrm:relation>
<rrm:identifier>12</rrm:identifier>
<ds:content>
<rrm:title>kest</rrm:title>
<rrm:identifier>12</rrm:identifier>
<rrm:description/>
<rrm:format>Text</rrm:format>
<ds:artifactFormat>Requirement</ds:artifactFormat>
</ds:content>
</ds:Link>
</ds:links>
</ds:traceability>

有没有办法选择里面的每个元素,例如每个 <ds:content>

最佳答案

您可以使用*来引用任何名称的元素,例如:

//ds:Link/ds:content/*

或者,如果您想在一个 XPath 中指定多个元素名称:

//ds:Link/ds:content/*[self::rrm:title|self::rrm:identifier|self::rrm:format]

关于java - 在 Java 中的一次 xpath.evaluation 调用中选择具有不同名称的多个节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42904331/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com