Normal 0 14 false false false IT X-NONE X-NONE

Ecco a voi un po’ di notizie sull'utilità degli xslt e in particolare della classe “XslCompiledTransform” del .Net Framework.

Mi è capitato di recente di aver a che fare con dei flussi di dati provenienti da un provider di servizi web,

dati che dovevo ovviamente processare, ma avevo la necessità di farlo con degli strumenti preesistenti;

riuscendo a trovare un escamotage avrei evitato anche di impegolarmi nello sviluppo di qualcosa che fondamentalmente già avevo ma che avrei dovuto customizzare.

La soluzione che ho adottato è stata relativamente semplice: ho adattato i metadati che ricevevo rendendoli conformi a ciò che la mia applicazione era predisposta a processare.

Ciò è stato possibile grazie agli xslt (eXtensible Stylesheet Language Transformations), il linguaggio di trasformazione dell'XML, e alla classe “XslComplitedTrasform”.

Sapendo come è formato il messaggio contenente i dati di nostro interesse, la definizione di un file xslt ci permette di riorganizzarli in una struttura congeniale alle nostre necessità;

l'xslt si presenta come un vero e proprio linguaggio di programmazione che permette a chi lo usa di poter utilizzare costrutti condizionali e cicli.

Vediamo ora un esempio di quello di cui accennato:

Di seguito è definito l’ipotetico file xml che riceviamo e contenente i dati che vogliamo recuperare e passare alla nostra applicazione per l’elaborazione:

Normal 0 14 false false false IT X-NONE X-NONE

Andiamo ora a definire il nostro xslt stylesheet:

Normal 0 14 false false false IT X-NONE X-NONE

Quindi ora abbiamo a disposizione due tipi di informazioni, un xml contenete i dati a cui siamo interessati e un file di stylesheet (xslt);

grazie alla classe “XslComplitedTrasform” possiamo utilizzare queste due informazioni per ottenere un file xml formato secondo le nostre esigenze e contenente i dati a cui siamo interessati.

Normal 0 14 false false false IT X-NONE X-NONE

Ecco fatto! Ora abbiamo un file xml contenente i dati ricevuti, ma organizzati secondo le specifiche richieste dalla nostra applicazione.

Questo però è solo un esempio e rappresenta solo una piccola parte delle potenzialità offerte dagli xslt e dalla classe “XsltComplitedTrasform”; per maggiori riferimenti su questa classe potete visitare il link http://msdn.microsoft.com/it-it/library/system.xml.xsl.xslcompiledtransform.aspx .