tengo una duda, estoy pasando un xml, lo estoy convirtiendo
a otro xml, el caso es qeu cuando leo los atributos me los
lee dos veces, se que ese es el fallo, pero no se como
solucionarlo, os pongo un ejemplo apra que veais lo que me
pasa.
el xml seria algo asi
<window xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance" >
<id>aligner-window</id>
<title>Box Alignment Example</title>
<orient>horizontal</orient>
<onload>init();</onload>
</window>
el xsl asi:
<xsl:template match="/window">
<xsl:variable name="wid">
<xsl:value-of select="id"/>
</xsl:variable>
<xsl:variable name="wtitle">
<xsl:value-of select="title"/>
</xsl:variable>
<xsl:variable name="worient">
<xsl:value-of select="orient"/>
</xsl:variable>
<xsl:variable name="wonload">
<xsl:value-of select="onload"/>
</xsl:variable>
<window id="{$wid}" title="{$wtitle}" orient="{$worient}"
onload="{$wonload}" >
<!--<script> <xsl:value-of select="script"/> </script> -->
<xsl:for-each select="node()">
<!--nos dice que recorramos todos los nodos -->
<xsl:apply-templates select="."/>
</xsl:for-each>
</window>
</xsl:template>
y la salida esta:
<window
xmlns="
http://www.mozilla.org/keymaster/ga....xul"
xmlns:html="
http://www.w3.org/1999/xhtml"
xmlns:fo="
http://www.w3.org/1999/XSL/Format"
onload="init();" orient="horizontal" title="Box Alignment
Example" id="aligner-window">
aligner-window
Box Alignment Example
horizontal
init();
como podeis observar en la salida despeus de haberme hecho
todo lo que le he mandado, me vuelve a savar los atributos
impresos por pantalla, esto es el principio del fichero, es
mayor, pero siempre me ocurre lo mismo, el caso es que me
imagino que el problema esta en <xsl:for-each select="node()">
<!--nos dice que recorramos todos los nodos -->
<xsl:apply-templates select="."/>
</xsl:for-each> del xsl, pero no se como solucionarlo,
es decir, una vez que me ha leido los atributos arriba, y
me los ha dejado como variable, qeu pase de ellos y no lo
vuelva a hacer.
Si me pudieseis hechar una mano os estaria muy agradecido.
Gracias.
Saludos.
Leer las respuestas