pfadübergabe in einen parameter
günther
- xsl
Hallo,
mir fehlt irgendwie das grundverständnis für folgenden sachverhalt
<xsl:param name="meinknoten" select="knoten/unterknoten"/>
<xsl:call-template name="neu">
<xsl:with-param name="normaleKnotenuebergabediefunktioniert" select="$meinknoten">
<xsl:with-param name="meinewunschuebergabe">
<xsl:call-template name="pfadbearbeitung">
<xsl:with-param name="pfadanpassung" select="$meinknoten"/>
</xsl:call-template>
</xsl:with-param>
</xsl:call-template>
<xsl:template name="pfadbearbeitung>
<xsl:param name="pfadanpassung"/>
<xsl:value-of select="$pfadanpassung[@einattribute = 'bestimmterWert']/>
</xsl:template>
Stimmt es, dass ich dem parameter "meinewunschbearbeitung" keinen Pfad übergeben kann mit einem xsl:call-template? Oder geht das doch und ich habe nur irgendwo einen fehler?
Hallo,
mir fehlt irgendwie das grundverständnis für folgenden sachverhalt
Stimmt es, dass ich dem parameter "meinewunschbearbeitung" keinen Pfad übergeben kann mit einem xsl:call-template? Oder geht das doch und ich habe nur irgendwo einen fehler?
<xsl:template name="pfadbearbeitung>
<xsl:param name="pfadanpassung"/>
<xsl:value-of select="$pfadanpassung[@einattribute = 'bestimmterWert']/>
Dein Problem liegt am value-of, dessen Eregebnis nämlich ein String ist. Du selektierst hier das erste unterknoten-Element mit dem entsprechenden Attributwert. ist das Element leer, ist das Ergebnis von value-of "nichts", ist das Element nicht leer, liefert value-of den String-Inhalt des Elements.
Und nach dem du einen String erhalten hast, kannst du ihn nicht mehr als Knoteset verwenden.
Dein Beispiel, ist auch etwas unglücklich gewählt (und deshalb kann ich nicht wirklich nachvollziehen, was du erreichen willst), weil du ja dein Problem mit <xsl:with-param name="normaleKnotenuebergabediefunktioniert" select="$meinknoten[@einattribute = 'bestimmterWert']"> einfach lösen könntest.
Grüße
Thoma