Hallo zusammen!
Die Frage wird sich mit Sicherheit wieder als sehr simpel herausstellen, aber ich komme an einem Punkt nicht weiter.
In einer Elementenfolge kann es Elemente geben, die bloß einen Wert als Inhalt haben:
oder aber Elemente, die noch weitere Elemente als Kinder haben:
Was ich möchte ist eben zum einen diese zwei Arten von Elementen unterscheiden und zum anderen die Werte jeweils auslesen zu können.
So sieht mein template aus, das bei der Liste aufgerufen wird:
Es scheint das Gleiche zu sein, ob in einem Element ein Wert (z.B. eine Zahl) oder weitere Elemente vorhanden sind, es wird beides als "Inhalt" angesehen.
Bin für jeden Ratschlag sehr dankbar!
Gruß
Alex
Die Frage wird sich mit Sicherheit wieder als sehr simpel herausstellen, aber ich komme an einem Punkt nicht weiter.
In einer Elementenfolge kann es Elemente geben, die bloß einen Wert als Inhalt haben:
Code:
<auto>bmw</auto>
Code:
<auto>
<marke>audi</marke>
</auto>
So sieht mein template aus, das bei der Liste aufgerufen wird:
Code:
<xsl:for-each select="./*"> <!-- Das ist im Haupttemplate -->
<xsl:call-template name="createElement"/>
</xsl:for-each>
<xsl:template name="createElement">
<xsl:element name="{name(.)}">
<xsl:variable name="directvalue" select="."/>
<xsl:choose>
<xsl:when test="contains(./*, 'marke')"> <!-- wobei diese Abfrage definitiv falsch ist -->
<xsl:copy-of select="'gefunden'"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="$directvalue"/>
</xsl:otherwise>
</xsl:choose>
</xsl:element>
</xsl:template>
Bin für jeden Ratschlag sehr dankbar!
Gruß
Alex
Comment