Ver Mensaje Individual
  #14 (permalink)  
Antiguo 16/06/2009, 05:26
Avatar de PatomaS
PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 20 años, 8 meses
Puntos: 63
Respuesta: Problema con cabecera XML en Transformación XSLT - Ayuda

Hola

He estado haciendo unas pruebas y no entidndo los errores que mencionas.

Te pego los archivos que he usado para hacer las pruebas y el resultado que obtengo.

XML - prueba_01.xml
Código:
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="prueba_01.xsl"?>
<elementos>
	<elemento>
		<nombre>nombre del primer elemento</nombre>
		<id>id del primer elemento</id>
	</elemento>
	<elemento>
		<nombre>nombre del segundo elemento</nombre>
		<id>id del segundo elemento</id>
	</elemento>
</elementos>
XSL - prueba_01.xsl
Código:
<?xml version="1.0"?>
<xsl:stylesheet version="2.0" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns="http://www.w3.org/1999/xhtml" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" omit-xml-declaration="no" encoding="UTF-8" doctype-public="-//W3C//DTD XHTML 1.1//EN" doctype-system="http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd" indent="yes"/>
<xsl:template match="/">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">
	<head>
		<title>Ejemplo de uso de xml + xslt</title>
	</head>
	<body>
		<div><img src="/imagen.gif" alt="" /></div>
		<dl>
			<xsl:for-each select="elementos/elemento">
			<dt><xsl:value-of select="nombre"/></dt>
			<dd><xsl:value-of select="id"/></dd>
			</xsl:for-each>
		</dl>
	</body>
</html>
</xsl:template>
</xsl:stylesheet>
Resultado con method="xml"
Código:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es">
<head>
<title>Ejemplo de uso de xml + xslt</title>
</head>
<body>
<div>
<img src="prueba_01_files/imagen.html" alt=""/>
</div>
<dl>
<dt>nombre del primer elemento</dt>
<dd>id del primer elemento</dd>
<dt>nombre del segundo elemento</dt>
<dd>id del segundo elemento</dd>
</dl>
</body>
</html>
Resultado con method="html"
Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html lang="es" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<title>Ejemplo de uso de xml + xslt</title>
</head>
<body>
<div>
<img alt="" src="prueba_01.xml_files/imagen.html">
</div>
<dl>
<dt>nombre del primer elemento</dt>
<dd>id del primer elemento</dd>
<dt>nombre del segundo elemento</dt>
<dd>id del segundo elemento</dd>
</dl>
</body>
</html>
Si cambio el omit-xml-declaration="no" a omit-xml-declaration="yes", no sale el <?xml version="1.0" encoding="UTF-8"?>.

Salvo una extraña transformación que hace a la imagen que pongo en el código, la cual no existe en mi disco, el resto está bien.

Usando esos códigos que pongo, revisa tu problema. Si aun persisten, haz modificaciones a esos códigos y pégalos para hacer las pruebas por mi lado y ver que pasa.

Felicidad
__________________
¡ hey, hou, hou, hey !