Elemento <xsl:output> di XSLT

Definizione e uso

L'elemento <xsl:output> definisce il formato del documento di output.

Nota:<xsl:output> è un elemento superiore (top-level element), deve essere figlio di <xsl:stylesheet> o <xsl:transform>.

Sintassi

<xsl:output
method="xml|html|text|name"
version="string"
encoding="string"
omit-xml-declaration="yes|no"
standalone="yes|no"
doctype-public="string"
doctype-system="string"
cdata-section-elements="namelist"
indent="yes|no"
media-type="string"/>

Proprietà

Proprietà Valore Descrizione
method
  • xml
  • html
  • text
  • name
Opzionale. Definisce il formato di output. Il valore predefinito è XML. Netscape 6 supporta solo "html" e "xml".
version string Opzionale. Imposta il numero di versione del formato W3C dell'output. (Utilizzato solo quando method="html" o method="xml").
encoding string Opzionale. Imposta il valore dell'attributo di codifica nell'output.
omit-xml-declaration
  • yes
  • no

Opzionale.

"yes" stabilisce che la dichiarazione XML deve essere omessa nell'output (<?xml...?>).

"no" stabilisce che la dichiarazione XML deve essere inclusa nell'output. Il valore predefinito è "no".

standalone
    • yes
    • no
Opzionale. Specifica se il processore XSLT dovrebbe outputtere una dichiarazione di documento indipendente; il valore deve essere "yes" o "no". Il valore predefinito è "no". Netscape 6 non supporta questo attributo.
doctype-public string Opzionale. Specifica l'identificatore pubblico da utilizzare nel DTD. È il valore dell'attributo PUBLIC dell'宣言 DOCTYPE nell'output.
doctype-system string Opzionale. Specifica l'identificatore di sistema da utilizzare nel DTD. È il valore dell'attributo SYSTEM dell'宣言 DOCTYPE nell'output.
cdata-section-elements namelist Opzionale. Una lista di elementi separati da spazi, i cui contenuti di testo devono essere esportati come sezione CDATA.
indent
  • yes
  • no
Opzionale. Specifica se aggiungere spazi bianchi durante l'output dell'albero dei risultati; il valore deve essere "yes" o "no". Netscape 6 non supporta questo attributo.
media-type string Opzionale. Definisce il tipo MIME dell'output (il tipo di media dei dati). Il valore predefinito è "text/xml". Netscape 6 non supporta questo attributo.

Attributo method

Identifica il metodo complessivo utilizzato per l'output dell'albero dei risultati. Se non è presente un prefisso, indica il metodo specificato nel documento, deve essere "xml", "html", "text" o uno qualsiasi dei nomi qualificati non NCName. Se è presente un prefisso, espande e indica il metodo di output.

La scelta del valore predefinito dell'attributo method è come segue. Se una qualsiasi delle seguenti condizioni è vera, il metodo di output predefinito è "html":

Il nodo radice dell'albero dei risultati contiene elementi figli.

Il nome esteso del primo elemento figlio del nodo radice dell'albero dei risultati (cioè l'elemento del documento) contiene la parte locale "html" (qualsiasi combinazione di case) e un URI di spazio nome vuoto.

Ogni nodo di testo prima del primo elemento figlio del nodo radice del albero dei risultati contiene solo caratteri di spazi bianchi.

In caso contrario, il metodo di output predefinito è "xml". Se non è presente l'elemento <xsl:output> o se l'elemento <xsl:output> non ha specificato il valore dell'attributo method, utilizzare il metodo di output predefinito.

Esempio

Esempio 1

In questo esempio, l'output è un documento XML, versione 1.0. Il metodo di codifica dei caratteri è impostato su "ISO-8859-1", l'output verrà raddrizzato per migliorare la leggibilità:

<?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>

Esempio 2

In questo esempio, l'output è un documento HTML, versione 4.0. Il metodo di codifica dei caratteri è impostato su "ISO-8859-1", l'output sarà indentato per migliorare la leggibilità:

<?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>