Posted By: Xen () on 'CZprogram'
Title: XSLT a CDATA
Date: Thu May 1 10:22:46 2008
Ahoj,
pisu XSL sablonu ktera ma transformovat jedno XML na jiny XML. Tim jinym,
cilovym XML je KML a ja potrebuju vytvorit element description ktery bude
obsahovat CDATA. Neco takovehleho:
<description><![CDATA[Kounicova 65a, Brno, CZ<br>WPA/TKIP<br><a
href="http://www.mzk.cz/doba/">otevC-racC- doba</a><br><br><img
src="http://www.mzk.cz/foto/kounicova.jpg">]]></description>
Lze sice zadefinovat:
<xsl:output method="xml" encoding="ISO-8859-2"
cdata-section-elements="description"
indent="no"/>
A pak je vsechen text uvnitr elementu description obalen CDATA jenze jakmile
to narazi na nejaky jiny element tak to CDATA ukonci. Tohle:
<xsl:element name="description">
neco
<h2><xsl:value-of select="../org_name"/></h2>
<xsl:value-of select="address/street"/>; <xsl:value-of
select="address/city"/>
neco_jinyho
</xsl:element>
vyprodukuje:
<description><![CDATA[
neco
]]><h2>CESNET</h2><![CDATA[Zikova 4; Praha 6
neco_jinyho
]]></description>
Potrebuju:
<description><![CDATA[
neco
<h2>CESNET</h2>Zikova 4; Praha 6
neco_jinyho
]]></description>
Prozatim jsem to zprasil tak, ze misto CDATA tagu vypisu XX a YY a to prepisu
pomoci sed na zacatek a konec CDATA ale to je velmi VELMI nehezky...
Nejake napady?
Diky
Semik