【发布时间】:2016-12-02 09:27:32
【问题描述】:
我的 XML 数据源是:
<impact_categories>
<impact_category>
<name>Cat1</name>
<impact_levels>
<impact_level>
<name>Insignificant</name>
</impact_level>
</impact_levels>
</impact_category>
<impact_category>
<name>Cat2</name>
<impact_levels>
<impact_level>
<name>Lowest</name>
</impact_level>
</impact_levels>
</impact_category>
<impact_category>
<name>Cat3</name>
<impact_levels>
<impact_level>
<name>Insignificant</name>
</impact_level>
</impact_levels>
</impact_category>
</impact_categories>
我需要选择所有具有相同的 Impact_level 子集的 Impact_category 节点。在示例中,我想选择 Cat1 和 Cat 3,因为它们的子值都是“无关紧要的”。对这些节点做了一些操作后,我需要选择下一批具有不同匹配 Impact_level 子节点集的 Impact_category 节点(在本例中为 Cat2,其值为“Lowest”),依此类推。
我的问题是直到运行时我才知道这些值是什么,而且对于不同的用户它们可能会有所不同。我是一个相对的 XPath 新手,所以不知道该怎么做。我花了好几个小时在网上和书中查找,但我发现的所有示例都假设您匹配已知值。抱歉,如果这真的很简单,但我真的卡住了。
【问题讨论】:
-
对于新手来说非常“硬核”(正如我们用德语所说的那样)。查找muenchian grouping
-
但是,如果您事先不知道影响级别的可能值,您希望如何选择特定的影响类别进行进一步处理?