Elemento <xsl:output> de XSLT
Definición y uso
El elemento <xsl:output> define el formato del documento de salida.
Notas:<xsl:output> es un elemento de nivel superior (top-level element), debe ser un nodo hijo de <xsl:stylesheet> o <xsl:transform>.
Sintaxis
<xsl:output method="xml|html|text|name" version="cadena" encoding="cadena" omit-xml-declaration="sí|no" standalone="sí|no" doctype-public="cadena" doctype-system="cadena" cdata-section-elements="namelist" indent="sí|no" media-type="cadena"/>
Atributo
Atributo | Valor | Descripción |
---|---|---|
method |
|
Opcional. Define el formato de salida. Por defecto es XML. Netscape 6 solo admite "html" y "xml". |
version | string | Opcional. Establece el número de versión del W3C del formato de salida. (Únicamente se utiliza cuando method="html" o method="xml"). |
encoding | string | Opcional. Establece el valor de la propiedad de codificación en la salida. |
omit-xml-declaration |
|
Opcional. "yes" especifica que se debe omitir la declaración XML en la salida (<?xml...?>). "no" especifica que debe incluirse la declaración XML en la salida. El valor predeterminado es "no". |
standalone |
|
Opcional. Especifica si el procesador XSLT debe salida una declaración de documento independiente; este valor debe ser yes o no. El valor predeterminado es "no". Netscape 6 no admite esta propiedad. |
doctype-public | string | Opcional. Especifica el identificador público que se debe usar en el DTD. Es decir, el valor de la propiedad PUBLIC en la declaración DOCTYPE de la salida. |
doctype-system | string | Opcional. Especifica el identificador de sistema que se debe usar en el DTD. Es decir, el valor de la propiedad SYSTEM en la declaración DOCTYPE de la salida. |
cdata-section-elements | namelist | Opcional. Una lista de elementos separados por espacios en blanco, cuyos contenidos de texto deben ser salida como parte CDATA. |
indent |
|
Opcional. Indica si se debe agregar espacios en blanco al salida del árbol de resultados; este valor debe ser yes o no. Netscape 6 no admite esta propiedad. |
media-type | string | Opcional. Define el tipo MIME de salida (el tipo de medio de los datos). El valor predeterminado es "text/xml". Netscape 6 no admite esta propiedad. |
Propiedad method
Identifica el método general utilizado para la salida del árbol de resultados. Si no hay prefijo, identifica el método especificado en este documento, debe ser "xml", "html", "text" o uno de los nombres no NCName). Si hay prefijo, se expande e identifica el método de salida.
La elección del valor predeterminado de la propiedad method se muestra a continuación. Si alguna de las siguientes condiciones es verdadera, el método de salida predeterminado es "html":
El nodo raíz del árbol de resultados contiene subniveles de elementos.
El nodo raíz del árbol de resultados contiene el nombre de espacio ampliado del primer subnivel de elemento del nodo raíz (es decir, el elemento de documento) que contiene la parte local "html" (cualquier combinación de mayúsculas y minúsculas) y una URI de espacio de nombres en blanco.
Cualquier nodo de texto antes del primer subnivel de elemento del nodo raíz del árbol de resultados solo contiene caracteres de espacio en blanco.
De lo contrario, el método de salida predeterminado es "xml". Si no hay elemento <xsl:output> o si el elemento <xsl:output> no especifica el valor de la propiedad method, se debe usar el método de salida predeterminado.
Ejemplo
Ejemplo 1
En este ejemplo, la salida es un documento XML, versión 1.0. El modo de codificación de caracteres se establece en "ISO-8859-1", y la salida se realiza con sangría para mejorar la legibilidad:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="xml" version="1.0" encoding="iso-8859-1" indent="yes"/> ... ... </xsl:stylesheet>
Ejemplo 2
En este ejemplo, el resultado es un documento HTML, versión 4.0. El modo de codificación de caracteres se ha configurado como "ISO-8859-1", y el resultado se indentará para mejorar la legibilidad:
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:output method="html" version="4.0" encoding="iso-8859-1" indent="yes"/> ... ... </xsl:stylesheet>