Panoramica XSLT

XSL

Prima di imparare XSLT, dovremmo prima capire XSL che sta per EXtensibile Stylesheet Langoscia. È simile a XML come CSS è a HTML.

Necessità di XSL

In caso di documento HTML, i tag sono predefiniti come table, div e span; e il browser sa come aggiungervi uno stile e visualizzare quelli che utilizzano gli stili CSS. Ma nel caso di documenti XML, i tag non sono predefiniti. Per comprendere e definire lo stile di un documento XML, il World Wide Web Consortium (W3C) ha sviluppato XSL che può fungere da linguaggio di fogli di stile basato su XML. Un documento XSL specifica come un browser deve eseguire il rendering di un documento XML.

Di seguito sono riportate le parti principali di XSL:

  • XSLT - utilizzato per trasformare il documento XML in vari altri tipi di documento.

  • XPath - utilizzato per navigare nel documento XML.

  • XSL-FO - utilizzato per formattare il documento XML.

Cos'è XSLT

XSLT, Extensible Stylesheet Language Transformations, offre la possibilità di trasformare automaticamente i dati XML da un formato all'altro.

Come funziona XSLT

Un foglio di stile XSLT viene utilizzato per definire le regole di trasformazione da applicare al documento XML di destinazione. Il foglio di stile XSLT è scritto in formato XML. XSLT Processor prende il foglio di stile XSLT e applica le regole di trasformazione sul documento XML di destinazione, quindi genera un documento formattato sotto forma di XML, HTML o formato di testo. Questo documento formattato viene quindi utilizzato dal formattatore XSLT per generare l'output effettivo che deve essere visualizzato all'utente finale.

Vantaggi

Ecco i vantaggi dell'utilizzo di XSLT:

  • Indipendente dalla programmazione. Le trasformazioni vengono scritte in un file xsl separato che è di nuovo un documento XML.

  • L'output può essere alterato semplicemente modificando le trasformazioni nel file xsl. Non è necessario modificare alcun codice. Così i web designer possono modificare il foglio di stile e possono vedere rapidamente la modifica nell'output.