Ik zit even met een probleem met XSLT waar ik even niet uitkom. Ik heb een schema document (XSD) waarin een string element zit. Dit string element wil ik nu vullen met de ge-escapede (< en ") uitvoer van een xsl-template.
Let net op het ontbreken van enkele namespaces, deze staan wel gedefinieerd in de XSLT.
Het is dus de bedoeling dat het er zo:
uit komt te zien.
Met google kom ik wel disable-output-escaping tegen, maar dit werkt niet op templates lijkt het.
[edit]
Aargh, ik dacht, dat het eerst alleen nodig was om het leesbaar te houden. (De hele inhoud van je template al van te voren escapen is niet echt mooi, maar om het van te voren te escapen moet ik ook al mijn <xsl:attribute> dingen vervangen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| <xsl:stylesheet
<xsl:template match"/">
<DocumentData>
<DocumentPayload><?xml version="1.0"?>
<xsl:for-each select="//*[local-name()='DOCUMENT']">
<xsl:call-template name="DOCUMENT"/>
</xsl:for-each>
</DocumentPayload>
</DocumentData>
</xsl:template>
<xsl:template name="DOCUMENT">
<Hier>
<Word>
Meer XML aangemaakt.
</Word>
</Hier>
</xsl:template>
</xsl:stylesheet> |
Let net op het ontbreken van enkele namespaces, deze staan wel gedefinieerd in de XSLT.
Het is dus de bedoeling dat het er zo:
code:
1
2
3
4
5
6
7
8
9
| <DocumentData>
<DocumentPayload><?xml version="1.0"?>
<Hier>
<Word>
Meer XML aangemaakt.
</Word>
</Hier>
</DocumentPayload>
</DocumentData> |
uit komt te zien.
Met google kom ik wel disable-output-escaping tegen, maar dit werkt niet op templates lijkt het.
[edit]
Aargh, ik dacht, dat het eerst alleen nodig was om het leesbaar te houden. (De hele inhoud van je template al van te voren escapen is niet echt mooi, maar om het van te voren te escapen moet ik ook al mijn <xsl:attribute> dingen vervangen.
[ Voor 66% gewijzigd door Nick_S op 20-04-2006 15:03 . Reden: [s] is niet small maar doorstreept. :( ]
'Nae King! Nae quin! Nae Laird! Nae master! We willna' be fooled agin!'