A ver si alguien me puede echar un cable ...!
Tengo un códgigo XSL parecido a esto:
"
--- ejemplo.xsl ---
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE xsl:stylesheet [
<!ENTITY nbsp " ">
<!ENTITY amp "&">
<!ENTITY NL "<xsl:text>
</xsl:text>">
]>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
<xsl:output method="text" media-type="text" encoding="ISO-8859-1"/>
<xsl:template match="root">
...etc ...
</xsl:template>
</xsl:stylesheet>
"
Utilizo las librerías de MSXML2 para la transformación de un
código XML a través de éste XSL de la siguiente forma :
"
Set xmlOrigen = New MSXML2.DOMDocument40
xmlOrigen.async = False
xmlOrigen.Load ("c:\ejemplo.xml")
Set xslPlantilla = New MSXML2.FreeThreadedDOMDocument40
xslPlantilla.async = False
xslPlantilla.Load ("c:\ejemplo.xsl")
Set xslTemplate.stylesheet = xslPlantilla
Set xslProcessor = xslTemplate.createProcessor
xslProcessor.input = xmlOrigen
xslProcessor.Transform
"
Hasta aquí ... de puta madre (acepta parámetros y todo) excepto por el sistema de definir
los ENTITY's que tengamos ... por la causa que sea, parece que para los XSL "normales" no hay
ningún problema, pero parece que no trague cuando éstos llevan definidos unos ENTITY's.
El error que pone es "The stylesheet does not contain a document element.
The stylesheet may be empty, or it may not be a well-formed XML document."
Pero este XSL es correcto, de hecho no hay ningún problema al hacer las transformaciones
a través del cygwin !!!
Si a alguien le suena de qué puede ir esto ... !¿?!¿!?