Hallo!
Ich habe eine Zugriffsfrage zu XSL, hoffe jemand kann weiterhelfen.
Ich verarbeite mit einem Stylesheet XML Daten, die wie folgt aussehen:
Es gibt Datensätze vom Typ "h" und Typ "u"
<root>
<datensatz typ="h">
<feld nr="1">111</feld>
...
</datensatz>
...
<datensatz typ="u">
<feld nr="1">222</feld>
<feld nr="2">111</feld>
<feld nr="3">schlüsselwort</feld>
</datensatz>
...
</root>
Ich möchte nun den Datensatz vom Typ "h" nur dann verarbeiten, wenn dessen id=111 Inhalt im Feld nr "2" eines Datensatzes vom Typ "u" ist UND gleichzeitig DIESER Datensatz "u" im Feld nr "3" das Schlüsselwort=$schlüsselwort enthält.
Wie kann ich dies als Frage formulieren, wenn ich mich innerhalb des Stylesheets im Template zu Datensatz Typ "h" befinde? Realisiere ich dies mit einem doppelten Punkt?
<xsl:template match="datensatz[(@typ='h')]">
xsl:choose
<xsl:when test="//datensatz[(@typ='u')]/feld[@nr='2'] =feld[(@nr='1')] and //datensatz[(@typ='u')]/feld[@nr='2']=feld[(@nr='1')]/../feld[@nr='3']=$schlüsselwort">
....
Hoffe, das ist nicht zuviel Wirrwarr ;-)
Vielen Dank + Grüße !!!
Frank