Molti utilizzando Xslt come linguaggio per realizzare trasformazioni di documenti Xml in altri documenti Xml (tipicamente Xhtml).
Pochi però sanno che lo standard Xslt sfrutta un altro linguaggio per quanto riguarda la navigazione dei documenti Xml: XPath.
E’ facile intuire che senza XPath linguaggi come Xslt perderebbero gran parte della loro utilità e con questo si spiega il contenuto di questo manuale.
Si tratta di un testo che analizza in modo approfondito le tecniche e la teoria della navigazione di documenti Xml, esponendo concetti troppe volte astratti e non presi in sufficiente considerazione dai classici manuali.
Dopo aver letto questo testo sarete in grado, partendo da un documento Xml, di costruire il relativo albero e da questo di individuare gli elementi di interesse utilizzando XPath, indipendentemente che compiate questa operazione su un foglio di carta o da una pagina Xslt.
L’autore tenta anche di prevenire alcuni passi falsi che è facile compiere nella stesura di espressioni XPath. Potete trovarne un ottimo estratto nell’articolo Top Ten Tips to Using XPath and XPointer.
Molto interessante la presentazione di XPath Visualiser, un piccolo programma che rappresenta graficamente su browser il risultato di un’espressione XPath partendo da un documento a vostra scelta. Se spendete gran parte del vostro tempo navigango documenti Xml, questa utility diventarà un vostro fido collaboratore.
Nel manuale non si parla solo di XPath (di cui si accenna anche alla versione 2.0), ma anche di XPointer, lo standard utilizzato per creare riferimenti da un documento Xml a parti di altri documenti Xml. Ma questa seconda parte non è all’altezza della prima.
Pro
Guida rigorosa ma ricca di esempi
Interessante la presentazione dell’utility XPath Visualiser
Contro
La parte relativa ad XPointer non è all’altezza del resto del manuale
Informazioni
XPath and XPointer – Locating Content in Xml Documents ¤ di John E. Simpson ¤ lingua inglese ¤ pagine 190 ¤ prezzo 24.95 dollari ¤ edito da O’Reilly
Sito del manuale [nuova finestra] (scheda, errata, capitolo gratuito)
Non sempre l’adozione dei nuovi standard semplifica le procedure, poiché il problema sta a monte. E’ infatti difficile convertire le esigenze di due realtà spesso molto diverse.
Come nota l’autore, comunque, la forza dei Web Service sta nell’aver messo “tutti d’accordo” (Sun e Microsoft in testa), pur con le solite specificità.
Anche se si tratta di una guida di riferimento alla funzioni e agli elementi di Xslt, è un testo comunque ricco di esempi e di suggerimenti. Mentre è data per scontata la conoscenza di Xml, è introdotto il ruolo di Xsl, le differenze tra Xsl Fo (Formatting Objects) e Xslt e gli ambiti applicativi. Di ciascun elemento è presentato l’uso, uno o più esempi ed eventuali differenze con altri elementi dal comportamento simile.
Concludono il manuale alcune applicazioni complete:
La formattazione delle specifiche Xml
Un albero genealogico
La rappresentazione delle mosse del cavallo su una scacchiera
Molto interessanti e importanti le appendici. Si parla di:
Parser MsXml3 di Microsoft (sono presentati degli esempi di trasformazione lato client e lato server con ASP)
Oracle Xml Development Kit
Parser Saxon (scritto dall’autore del testo)
Xalan
L’unica nota negativa, comune a tutti i manuali della serie Reference di Wrox, è data dala scelta tipografica che non facilita una chiara distinzione tra i titoli, cosa importante in un manuale di riferimento.
Lingua inglese
Xslt Programmer’s Reference – Second Edition ¤ di Michael Kay ¤ pagine 930 ¤ prezzo 34.99 dollari ¤ edito da Wrox ¤ pubblicato ad Aprile 2001
Il manuale è sia una guida all’uso delle trasformazioni Xsl, sia un manuale di riferimento: è infatti suddiviso in due parti. È introdotto un semplice esempio di trasformazione e via via la complessità aumenta con l’introduzione di nuovi elementi e di nuove funzioni. In Xslt non esiste un solo modo per trasformare un documento Xml ed è bravo l’autore a scriverlo chiaramente:
Si può realizzare un solo template che si occupa di tutta la trasformazione
Si può scomporre il problema in “sottoproblemi”; risolvendo questi sottoproblemi si giunge alla soluzione dell’intero template
Interessante anche la spiegazione delle tecniche di “recursion“, necessarie al fine di garantire che ogni tag aperto venga chiuso, e venga chiuso al posto giusto. Qualche esempio ancora più complesso avrebbe comunque fatto piacere.
Lingua inglese
Xslt – Mastering Xml Transformations ¤ di Doug Tidwell ¤ 460 pagine ¤ prezzo 39.95 dollari ¤ edito da O’Reilly ¤ pubblicato ad Agosto 2001
Il manuale è diviso in due parti: una guida d’uso e una parte di riferimento con l’elenco alfabetico degli elemento Xslt.
Si comincia con un esempio sufficientemente completo, così il lettore si trova sorprendentemente ad aver acquisito una buona conoscenza delle tecniche di trasformazione già dopo pochi capitoli.
La difficoltà principale nel capire la trasformazione di documenti Xml è data dal fatto che mentalmente si deve costruire l’albero che verrà “navigato” dagli elementi Xslt. Per facilitare questo compito l’autore introduce un elevato e ottimo numero di diagrammi ad albero che tracciano il percorso di navigazione all’interno del documento. Il nostro consiglio è replicare lo stesso metodo nel caso di trasformazioni complesse.
Anche gli esempi sono spesse volte molto efficaci. Il codice della parte di riferimento è invece un po’ troppo semplice.
Lingua inglese
Xslt – Working with Xml and Html ¤ di Khun Yee Fung ¤ 440 pagine ¤ prezzo 39.95 dollari ¤ edito da Addison Wesley ¤ pubblicato a Dicembre 2000
Un piccolo manuale nel quale troverete condensato tutto quello che c’è da sapere su Xml e Xsl per diventare subito produttivi. L’autore parte dal giusto presupposto: dare un’infarinatura di Xml (che, diciamolo, è poi quello che vi serve), per poi dedicarsi agli schema Xml e alle trasformazioni Xsl.
Brevi ma efficaci esempi vi accompagnano nel corso della trattazione, così che il manuale possa essere usato non solo come manuale di riferimento, ma anche come testo di studio. Una piccola guida davvero completa.
Tra gli argomenti presentati:
Nozioni di base su Xml
Dtd e spazi dei nomi
Schemi Xml
Xslt e XPath
Lingua italiana
Xml Guida tascabile (titolo originale Xml Pocket Consultant) ¤ di William R. Stanek ¤ 390 pagine ¤ prezzo 30.00 euro ¤ edito da Mondadori Informatica (editore originale Microsoft Press) ¤ pubblicato ad Aprile 2002
Xml Passo per passo Seconda Edizione – Mondadori Informatica
È un manuale base per capire ed imparare cosa è possibile fare con Xml. Nessuna conoscenza di programmazione è richiesta per lo studio, anche se per gli ultimi capitoli un po’ di pratica con i linguaggi di script può aiutare. Il testo si rivolge quindi a programmatori di pagine Html che si trovano a volere o dover imparare Xml.
Anche se il testo è una traduzione di un volume Microsoft, quasi tutto il contenuto è applicabile anche ad altre realtà (cosa non sempre ovvia anche se si parla di uno standard).
Tra gli argomenti presenti:
Perché usare Xml e ruolo di Xml
Costruire documenti Xml well-formed e valid
Le parti di un documento Xml (nodi, attributi, valori, c-data, lo spazio dei nomi)
I Dtd e gli Xml Schema
Visualizzare documenti Xml con Css, binding dei dati e Dom
Trasformazioni con Xslt (solo un capitolo)
Lingua italiana
Xml Passo per Passo Seconda Edizione (titolo originale Microsoft Xml Step by Step Second Edition) ¤ di Michael J. Young ¤ pagine 490 ¤ prezzo 37.50 euro ¤ edito da Mondadori Informatica (editore originale Microsoft Press) ¤ pubblicato a Febbraio 2002
Questo testo è rivolto ai programmatori che vogliano integrare soluzioni Xml all’interno dei propri applicativi. Lo standard Xml viene “liquidato” nelle prime 100 pagine. Si passa poi a parlare di integrazione tra Xml e database, soprattutto Sql Server 2000 e Oracle 9. Vengono esposte alcune tecniche e considerazioni su come esportare ed importare dati in un database e su come definire delle politiche di “mapping” tra dati Xml e tabelle.
Si passano poi in rassegna le tecniche di visualizzazione e trasformazioni di un documento Xml, ovvero Css e Xslt.
Xslt sarà al centro del capitolo successivo, che illustra come creare l’interfaccia utente di un programma. Si tratta di costruire un’applicazioni Asp e Xml che separa lo strato di presentazione da quello del contenuto. Il tutto si ottiene con una pagina chiamata controller che riceve parametri ed esegue le trasformazioni necessarie. Un ottimo esempio per capire le potenzialità di Xml e Xsl.
Si parla poi di messaggistica Xml e del ruolo di Soap e BizTalk Framework e Server.
Tra i molti altri argomenti presentati sono introdotti il ruolo di Xml nella piattaforma .NET e le tecniche di accesso ai dati con ADO.NET.
Un manuale davvero completo per lo sviluppatore Microsoft che desidera capire qual è l’effettivo vantaggio di Xml nello sviluppo di applicazioni complesse.
Lingua italiana
Programmare Xml (titolo originale Xml Programming) ¤ di Wyke, Rehman, Leupen ¤ 700 pagine ¤ 60.00 euro ¤ edito da Mondadori Informatica (editore originale Microsoft Press) ¤ pubblicato a Marzo 2002
È rivolto soprattutto alla realizzazione di progetti in ambiente Java. Dopo i doverosi capitoli di introduzione alla tecnologia Xslt sono inclusi i diversi approcci per la realizzazione di applicazioni web.
La soluzione preferita, e quella con la quale sono costruite il maggior numero di esempi, è data dal pattern Mvc , una metodologia che consente la completa separazione tra logica applicativa e di interfaccia. Lo scopo è raggiunto pienamente. Per illustrare i vantaggi di Mvc è presentato un sistema di gestione forum, con possibilità di inserimenti e risposte ai messaggi.
L’unica nota negativa (di cui l’autore non è colpevole) è l’adozione, per l’esempio, dell’Api Jdom che è in versione beta e sta subendo diversi cambiamenti, anche radicali. L’esempio funziona correttamente solo con la beta 7 di Jdom.
Tra gli argomenti presentati dal testo:
Le trasformazioni Xsl (XPath, cicli, parametri, ecc.)
Gli approcci Java per la costruzione di soluzioni web
Java and Xslt – Embedding Xml Processing into Java Applications ¤ di Eric M. Burke ¤ pagine 500 ¤ prezzo 39.95 dollari ¤ edito da O’Reilly ¤ pubblicato a Settembre 2001
Una guida a Xpath, il linguaggio di interrogazione dei documenti su cui si basa Xslt. Un testo snello ed interessante, al quale abbiamo dedicato una recensione completa.
Lingua inglese
XPath and XPointer – Locating Content in Xml Documents ¤ di John E. Simpson ¤ pagine 190 ¤ prezzo 24.95 dollari ¤ edito da O’Reilly