这是我们的XML:
...
<OBJECT_CONTACT_PLZ>2222</OBJECT_CONTACT_PLZ>
<Kategorien>
<Kategorie>
<Bezeichnung>AAA</Bezeichnung>
<Ebene>1</Ebene>
<KategorieID>13</KategorieID>
</Kategorie>
<Kategorie>
<Bezeichnung>BBB</Bezeichnung>
<Ebene>2</Ebene>
<KategorieID>35</KategorieID>
<Parent>13</Parent>
</Kategorie>
<Kategorie>
<Bezeichnung>XXX</Bezeichnung>
<Ebene>3</Ebene>
<KategorieID>55</KategorieID>
<Parent>35</Parent>
</Kategorie>
</Kategorien>
...
在这里我们的XSL:
<xsl:if test="(td2:Kategorien/Kategorie[contains(Bezeichnung, 'XXX')] or td2:Kategorien/Kategorie[contains(Bezeichnung, 'YYY')] or td2:Kategorien/Kategorie[contains(Bezeichnung, 'ZZZ')]) and ((td2:OBJECT_CONTACT_PLZ='0000') or (td2:OBJECT_CONTACT_PLZ='1111') or (td2:OBJECT_CONTACT_PLZ='2222') or (td2:OBJECT_CONTACT_PLZ='3333'))">
<xsl:variable name="plz">
<xsl:value-of select="td2:CONTACT_PLZ"></xsl:value-of> </xsl:variable>
<xsl:variable name="betriebsart">
<xsl:value-of select="td2:Kategorien/Kategorie/Bezeichnung"></xsl:value-of> </xsl:variable>
目前,变量'betriebsart'总是填充第一个'Kategorie',在本例中为'AAA'。
我们如何使用'if'子句中匹配的'Kategorie'填充变量'betriebsart',在本例中为'XXX'?
非常感谢您的任何帮助!
答案 0 :(得分:0)
尝试:
<xsl:value-of select="td2:Kategorien/Kategorie[contains(Bezeichnung, 'XXX') or contains(Bezeichnung, 'YYY') or contains(Bezeichnung, 'ZZZ')]/Bezeichnung"/>