[Php-it] dubbio su XSLT
Michael Brennen
michael at fishnet.us
Wed Dec 6 05:29:36 CET 2006
On Wed, 6 Dec 2006, dierre wrote:
> Sono le 3:40 di notte e non prendo sonno, quindi abbiate pazienza.
> Stavo studiando un pò di xslt e mi è venuto un dubbio direi
> atroce.
>
> Ultimamente usare XSLT come tecnologia per separare coding dalla
> presentation diciamo che va di moda, però mi stavo ponendo una
> domanda, che potrebbe sembrare stupida, però non riesco a
> rispondermi con sicurezza. Ma ha senso scrivere un template engine
> in XSLT?
>
> Mi spiego meglio facendo un esempio. Prendiamo Smarty, ecco, quel
> caso ha senso perché io gli passo le variabili e poi lui le
> colloca al posto giusto e le stampa a video, però in XSLT non
> funziona così, perché la creazione delle informazioni avviene
> generando il documento XML, giusto? Non c'è bisogno di creare un
> engine per XSLT. Al massimo creare un engine per l'XML perché in
> realtà è lì che si rappresentano i dati, poi il foglio di stile lo
> si applica in un secondo momento.
Direi per conto mio che hai ragione. Insomma non fa molto senso
passare diretto da XML a HTML per via di XSLT se il solo oggetto è
di creare delle pagine ueb. Ormai è vero che ci sono metodi assai
più adatti a quel lavoro, tipo Smarty che hai accennato.
Con una template tipo Smarty, è la template stessa che ordina i
dati. Cioè tira il soggetto di qui, l'intestazione di là, ecc. ed è
la struttura della template che ne ordina la presentazione in modo
statico. E non vale che per la presentazione in ueb.
C'è da considerare analogicamente che in XML si può portare i dati
dentro una struttura di puro concetto, di pura logica (almeno è
tanto logico quanto tu abbia ben pensato la struttura) che li ordina
esplicitamente, senza però alcun limite di presentazione.
Questa è già un'importante astrazione concettuale dallo Smarty.
Applicando poi diverse trasformazioni si può 'ridestinare' (si vede
molto 'repurpose' in inglese) i dati a varie presentazioni, a vari
scopi. Per alcune possibilità dà un'occhiata a
http://xml.apache.org/.
-- Michael
More information about the Php-it
mailing list