template for en mixed type
Jeg har flg. xml element (titlen på en tidsskriftsartikel):<piece>
Nogle problemer i lyset af Frédérique Marglins bog <phrase style="title">The Wives of the God King</phrase>
</piece>
Sp. er nu hvordan skal xsl'en skal se ud. Jeg har flg.:
<xsl:template match="piece">
<xsl:value-of select="."/>
<xsl:if test="phrase">
<xsl:apply-templates select="phrase"/>
</xsl:if>
</xsl:template>
<xsl:template match="phrase">
<i><xsl:value-of select="."/></i>
</xsl:template>
Dvs. teksten i elementet "phrase" skal bare udskrives i kursiv skrift. Men sådan som templaten er nu, udskrives indholdet af phrase to gange: først i regular skrift som del af <xsl:value-of select="piece"/> og dernæst i kursiv som del af <i><xsl:value-of select="phrase"/></i>. Altså i alt:
Nogle problemer i lyset af Frédérique Marglins bog The Wives of the God King _The Wives of the God King_
Så hvordan laver jeg min xsl så indholdet af <piece></piece> udskrives med den del af teksten der er indeholdt i <phrase></phrase> skrevet i kursiv, men kun én gang?
//mik