XSLT e XPath

Più di un anno fa ho scritto un post su XSLT e affini, dove Raf mi consigliava di usare LinqToXML rispetto a XSLT e XPath.

Un anno più tardi mi ritrovo alle prese con gli stessi argomenti perché lavorando al sito DomusDotNet, che si basa su Umbraco, XSLT (e quindi XPath) è il metodo più usato per trasformare le informazioni XML contenute nel sito in pagine HTML.

Da sempre uno degli ostacoli più grossi all’uso di XSLT è stato il linguaggio di selezione XPath. Scrivere una espressione e poi “sperare” che funzioni recuperando l’insieme dei nodi desiderati o peggio cercare di capire per quale motivo tale espressione non si comporti come noi vogliamo è spesso una vera e propria caccia al tesoro fatta di snervanti tentativi.

Stasera, stufo di prendere lucciole per lanterne, ho fatto delle prove con Visual Studio e ho scoperto l’acqua calda! (nel senso che quel che ho trovato c’era già in Visual Studio da un bel po’).

Visual Studio, sin dalla versione 2005, ha un potente debugger di XSLT. Esso può essere invocato direttamente dall’editor, impostando la proprietà input al file XML che si vuole trasformare. Poi basta impostare uno o più breakpoint sul file XSLT e lanciare il debugger dal menu XML (visibile quando si usa l’editor XSLT).

Maggiori info qui.

posted @ mercoledì 4 agosto 2010 04:25

Print

Comments on this entry:

# re: XSLT e XPath

Left by Salvatore Di Fazio at 04/08/2010 12:11
Gravatar
Oh mio caro Nicolò come ti capisco :-\

# re: XSLT e XPath

Left by Leonardo at 04/08/2010 22:00
Gravatar
Si vede che non ho mai provato Umbraco :)

# re: XSLT e XPath

Left by Gian Maria at 06/08/2010 13:53
Gravatar
XSLT vs Linq2XML, una bella battaglia. Il concetto è che XSLT è ancora usato da molte parti, ed è comunque potente, ci sono tool da linea di comando molto veloci per la trasformazione etc etc.

Chiaramente senza un debugger si lavora veramente male :) io però a suo tempo (lo usavo molto al tempo del 2003) avevo un tollettino che non mi ricordo più :(

alk.
Comments have been closed on this topic.
«novembre»
domlunmarmergiovensab
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567