Simpel probleem maar zit er al een dag mee bezig en al tientallen dingen geprobeert - en met googlen kun je op zulke subtielen toch niets vinden.
nu krij ik : Hello <insert id="world" /> !
maar ik wil: Hello World !
ook met value-of lukt het niet - de data die ik erin copieert wordt niet geinterpreteert. Ik heb al met modes/param/named templates enzovoorts het proberen te oplossen steeds zonder success.
ik zou dus zoiets als <xsl:copy-and-apply select=".."/> maar zoiets bestaat zover ik me XSL boek kan zien niet...
Alle hulp is appreciated...
XML:
1
2
3
4
5
6
7
8
9
| //externe xml-file: nodes.xml <nodes> <node id="world"><content>world</content></node> <node id="hello_world"><content>Hello <insert id="world"/></content></node> <nodes> //main xml-file <dummy> <base><insert id="hello_world" />!</base> </dummy> |
code:
1
2
3
4
5
6
| <xsl:apply-templates select="base" />
<xsl:template match="insert">
<xsl:variable name="danode" select="document('nodes.xml')/nodes/node[@id = current()/@id]" />
<xsl:copy-of select="$danode/content"/>
<xsl:apply-templates/>
</xsl:template> |
nu krij ik : Hello <insert id="world" /> !
maar ik wil: Hello World !
ook met value-of lukt het niet - de data die ik erin copieert wordt niet geinterpreteert. Ik heb al met modes/param/named templates enzovoorts het proberen te oplossen steeds zonder success.
ik zou dus zoiets als <xsl:copy-and-apply select=".."/> maar zoiets bestaat zover ik me XSL boek kan zien niet...
Alle hulp is appreciated...