elemente aus einem anderen xml-document
pischti
- xsl
hi,
ich möchte in meiner xsl auf ein anders xml-document zugreifen.
das klappt bisher auch ganz gut, wenn ich ein bestimmtes haben möchte.
um dann aber die unterelmente zu "durchsuchen" komm ich nicht weiter
<xsl:template match="/">
<html><head></head><body>
<xsl:call-template name="wurst" />
</body>
</html>
</xsl:template>
<xsl:template name="wurst">
<xsl:variable name="anderes">
<xsl:value-of select="document('datei2.xml')/element" />
</xsl:variable>
<!-- ich möchte jetzt nach weiteren Kind-elementen suchen,
die ich in der variablen $anderes drin habe,
z.B. mit for-each
wie macht man sowas, geht das so überhaupt?
gleich noch eine frage: wie bringe ich eine variable für
das zu suchende element unter:
<xsl:variable name="anderes">/element</xsl:variable>
<xsl:value-of select="document('datei2.xml')$var" />
-->
</xsl:template>
vielen dank im voraus
pischti
ps. ich arbeite mit xalan unter debian
Hallo,
um dann aber die unterelmente zu "durchsuchen" komm ich nicht weiter
<xsl:template name="wurst">
<xsl:variable name="anderes">
<xsl:value-of select="document('datei2.xml')/element" />
</xsl:variable><!-- ich möchte jetzt nach weiteren Kind-elementen suchen,
die ich in der variablen $anderes drin habe,
z.B. mit for-each
wie macht man sowas, geht das so überhaupt?
wird so nicht gehen: Wert von select="" ist ein String (kannst du so keine $Variable einfügen).
ist es nur Zufall, oder hat deine Variable hier absichtlich keinen wert? Den Wert eines Variables kannst du nicht ändern, also wenn das was "dynamisches" sein soll, solltet du xsl:pram nehmen.
<xsl:template name="elementimanderenxml">
<xsl:for-each select="document('datei2.xml')/element/andereselement" />
</xsl:template>
gleich noch eine frage: wie bringe ich eine variable für
das zu suchende element unter:
<xsl:variable name="anderes">/element</xsl:variable>
<xsl:value-of select="document('datei2.xml')$var" />
-->
es kommt darauf an was deine Variable (besser du nimmsr Parameter) enthält: Z.B: <xsl:value-of select="document('datei2.xml')//element[name() = $var]" />
Grüße
Thomas