Nuevamente batallando con XSL en algo que pareciera ser simple. Tengo un XML como sigue:
Código xml:
Ver original<seccion>
<code><![CDATA[
Donec nec justo eget felis facilisis fermentum. Aliquam porttitor
mauris sit amet orci. Aenean dignissim pellentesque felis.
]]>
</code>
</seccion>
Nótese el salto de línea y los espacios (de la indentación del XML) que hay entre ]]> y la etiqueta de cierre </code>.
Como podrá sospecharse, necesito la información del nodo CDATA tal cuál está; con saltos de línea, indentado, y todo lo que pueda tener, exclusivamente lo que corresponde. Actualmente lo cacho con XSL de la siguiente manera:
Código xml:
Ver original<xsl:template match="code">
<xsl:text>
[PROG]</xsl:text>
<xsl:value-of select="." disable-output-escaping="yes" />
<xsl:text>[/PROG]
</xsl:text>
</xsl:template>
Obteniendo el siguiente resultado:
Código:
[PROG]
Donec nec justo eget felis facilisis fermentum. Aliquam porttitor
mauris sit amet orci. Aenean dignissim pellentesque felis.
[/PROG]
Osea, como estoy recuperando todo el contenido de la etiqueta, incluye el salto de línea y los espacios que hay entre ]]> y </code>. ¿Hay manera traer única y exclusivamente lo que venga entre
<![CDATA[ y
]]>?.
Esperaría el siguiente resultado:
Código:
[PROG]
Donec nec justo eget felis facilisis fermentum. Aliquam porttitor
mauris sit amet orci. Aenean dignissim pellentesque felis.
[/PROG]
Nuevamente, no tengo control sobre el XML que se procesará, la salida es texto plano; toda la info que encontré es para salida tipo XML y/o HTML :-/.
Ojalá nuevamente me brinden una pista. Gracias de antemano
![Adios](http://static.forosdelweb.com/fdwtheme/images/smilies/adios.gif)
.