Xml XPath帮助。获取具有变量名的childnode
我有以下XML:Xml XPath帮助。获取具有变量名的childnode,xml,xpath,Xml,Xpath,我有以下XML: <StatsContainer> <Variant1>0</Variant1> <Variant2>0.5</Variant2> <Variant3>1.2</Variant3> <Variant4>4.1</Variant4> <Variant5>93.9</Variant5> <Varian
<StatsContainer>
<Variant1>0</Variant1>
<Variant2>0.5</Variant2>
<Variant3>1.2</Variant3>
<Variant4>4.1</Variant4>
<Variant5>93.9</Variant5>
<Variant6>0.3</Variant6>
<Variant7>0</Variant7>
<Variant8>0</Variant8>
<Variant9>0</Variant9>
<Variant10>0</Variant10>
<Variant11>0</Variant11>
<Variant12>0</Variant12>
<GlobalVariant1>4.6</GlobalVariant1>
<GlobalVariant2>40.4</GlobalVariant2>
<GlobalVariant3>13.8</GlobalVariant3>
<GlobalVariant4>2.8</GlobalVariant4>
<GlobalVariant5>35.6</GlobalVariant5>
<GlobalVariant6>2.8</GlobalVariant6>
<GlobalVariant7>0</GlobalVariant7>
<GlobalVariant8>0</GlobalVariant8>
<GlobalVariant9>0</GlobalVariant9>
<GlobalVariant10>0</GlobalVariant10>
<GlobalVariant11>0</GlobalVariant11>
<GlobalVariant12>0</GlobalVariant12>
<MosaicType>Boligtype</MosaicType>
<OverRepresentedVariant>5</OverRepresentedVariant>
</StatsContainer>
因此,现在我需要一些帮助来找到具有正确ID的变体标记。我需要的标记将始终命名为“Variant”,后跟一个ID。那么如何才能获得正确的标记
StatsContainer/*[name() = concat('Variant', ../OverRepresentedVariant)]
StatContainer/*[name()=concat('Variant',../OverRepresentedVariant)]
PS:您真的应该考虑更改XML。将数据作为元素名的一部分是一个坏主意。应该是这样的:
<StatsContainer>
<Variant id="1">0</Variant>
<!-- ... -->
<Variant id="12">0</Variant>
<GlobalVariant id="1">4.6</GlobalVariant>
<!-- ... -->
<GlobalVariant id="12">0</GlobalVariant>
<MosaicType>Boligtype</MosaicType>
<OverRepresentedVariant>5</OverRepresentedVariant>
</StatsContainer>
0
0
4.6
0
博利格型
5.
然后XPath将是
StatsContainer/Variant[@id = ../OverRepresentedVariant]
statcontainer/Variant[@id=../overresentedvariant]
谢谢托马拉克。我将看看制作XML的同事是否可以更改它。 StatsContainer/Variant[@id = ../OverRepresentedVariant]