我想根据属性值选择一个兄弟节点。 xml的相关部分看起来像,
<wd:Job_Classifications>
<wd:Job_Classification_ID>20</wd:Job_Classification_ID>
<wd:Job_Classification_Group wd:Descriptor="SUS Occupational Categories">
<wd:ID wd:type="Job_Classification_Group_ID">SUS_OCC_CATEGORIES</wd:ID>
</wd:Job_Classification_Group>
</wd:Job_Classifications>
<wd:Job_Classifications>
<wd:Job_Classification_ID>9009</wd:Job_Classification_ID>
<wd:Job_Classification_Group wd:Descriptor="SUS Classification Code">
<wd:ID wd:type="Job_Classification_Group_ID">SUS_CLASS_CODE</wd:ID>
</wd:Job_Classification_Group>
</wd:Job_Classifications>
<wd:Job_Classifications>
<wd:Job_Classification_ID>99</wd:Job_Classification_ID>
<wd:Job_Classification_Group wd:Descriptor="Administrative Code">
<wd:ID wd:type="Job_Classification_Group_ID">ADMIN_CODE</wd:ID>
</wd:Job_Classification_Group>
</wd:Job_Classifications>
我正在尝试的xsl就像
<xsl:value-of select="../wd:Job_Classifications
[@wd:Descriptor
='SUS Classification Code']
/wd:Job_Classification_ID" />
这没有给我任何结果。我在一个两级for循环中,不得不使用../来获得直接的父级。 当我使用下面的时候,
<xsl:value-of select="../wd:Job_Classifications
/wd:Job_Classification_ID" />
我获得了所有ID,但我需要根据wd:Job_Classification_Group描述符值进行选择。
答案 0 :(得分:0)
您将谓词[@wd:Descriptor ='SUS Classification Code']
应用于名为wd:Job_Classifications
的元素,但XML中唯一的wd:Job_Classifications
元素没有该属性或任何其他名称。
也许你的意思是../wd:Job_Classifications [wd:Job_Classification_Group /@wd:Descriptor='SUS Classification Code'] /wd:Job_Classification_ID
?