Inserire attributi nell'output con XSLT
Questa volta vogliamo creare una tabella, come trasformazione del documento sorgente XML, la quale presenta un colore di sfondo. Il file di esempio è sempre quello delle auto. Vediamo adesso il foglio di stile di esempio XSLT. Il codice:
aggiunge due attributi alla tabella. Anche l´elemento <tr>, adesso, ha un attributo:
Cosa otterremo: ogni volta che questi modelli vengono chiamati, gli attributi che abbiamo appena visto, vengono inseriti assieme agli elementi. Il risultato finale di esempio, ci mostra una tabella che contiene tutti i modelli delle auto, i costuttori e l´anno di costruzione,
Inserire attributi con <xsl:attribute>
Siamo partiti con l´inserimento di attributi in forma letterale; adesso lo faremo attraverso un elemento di XSLT. Cosa vuol dire: innanzitutto otterremo lo stesso ed identico risultato del documento precedente, cioè una tabella che contiene gli stessi elementi nelle sue celle. Quello che cambia, questa volta, è il modo di inserimento. Ci avvarremo di un elemento chiamato: <xsl:attribute>. L´attributo name dá, all´attributo creato, il proprio nome. Vediamo il foglio di stile XSLT. La differenza con il foglio di stile precedente, come avrete potuto vedere, è che in questo caso non abbiamo inserito i nomi degli attributi "letteralmente", ma attraverso, come abbiamo visto, xsl:attribute. Il valore dell´attributo name è il nome che prima abbiamo inserito in maniera letterale. Il file di esempio finale ci mostra il risultato ottenuto.
Copiare il nodo di contesto con <xsl:copy>
Con l´elemento <xsl:copy> possiamo copiare il nodo in cui ci si trova, con la sintassi XPath, nell´output. Se il nodo dovesse avere elementi figli o attributi, questi non vengono copiati. Prendiamo il documento sorgente delle automobili che abbiamo usato anche per applicazioni precedenti, modificato nella struttura per questo esempio. Gli associamo il foglio di stile XSLT. Quello che otterremo stampato a video sarà un risultato simile ad altri visti in precedenza ( a seconda degli elementi che facciamo corrispondere), ma con una modalità diversa ed un nuovo elemento.
| < Prec. | Succ. > |
|---|

