ik heb weer 's problemen met special characters en XML. Om helemaal w3c vriendelijk te zijn zet ik alle characters met ascii value > 127 om in een html char code : &#xxx;.
Gaat allemaal prima, maar nu moet ik de string uit de database in een Cdata sectie in mn XML zetten (er zit nog wat niet XHTML in mn database, ivm backwardscompatibility dus). Dat doe ik met een simpele functie (zelf geschreven, voor het gemak):
alleen op deze manier wordt alle & (ampersand) ge-escaped en komen dus als & in de XML.. GRR! í (ë) wordt dan í. Hoeft opzich geen probleem te zijn, maar omdat ik <xsl:value-of select="node" disable-output-escaping="yes"/> gebruik (ivm met de HTML), krijg ik als resultaat í en niet ë!
Mijn vraag dus (eindelijk) hoe voorkom ik dat mn data ge-escaped de XML in gaat?
Gaat allemaal prima, maar nu moet ik de string uit de database in een Cdata sectie in mn XML zetten (er zit nog wat niet XHTML in mn database, ivm backwardscompatibility dus). Dat doe ik met een simpele functie (zelf geschreven, voor het gemak):
code:
1
2
3
4
5
6
7
8
9
| sub createXMLCDataChild(nodeNaam, parent, inhoud)
dim xml_tempCData, xml_tempChild
set xml_tempChild = xmldoc.CreateNode("element", nodeNaam, "")
parent.appendChild(xml_tempChild)
if not isNull(inhoud) then
set xml_tempCData = xmldoc.createCDataSection(inhoud)
xml_tempChild.appendChild(xml_tempCData)
end if
end sub |
alleen op deze manier wordt alle & (ampersand) ge-escaped en komen dus als & in de XML.. GRR! í (ë) wordt dan í. Hoeft opzich geen probleem te zijn, maar omdat ik <xsl:value-of select="node" disable-output-escaping="yes"/> gebruik (ivm met de HTML), krijg ik als resultaat í en niet ë!
Mijn vraag dus (eindelijk) hoe voorkom ik dat mn data ge-escaped de XML in gaat?
Panacea.NL als je geinteresserd bent in IT en Geneeskunde!