documentazione_3di:extraway:ud_xslt
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Prossima revisione | Revisione precedente | ||
documentazione_3di:extraway:ud_xslt [2010/06/25 17:07] – creata rtirabassi | documentazione_3di:extraway:ud_xslt [2012/07/23 13:23] (versione attuale) – eliminata rtirabassi | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
- | ====== Uso dell' | ||
- | |||
- | Il tema di cui si occupa questo capitolo affonda le radici nella storia del server eXtraWay ed in particolare nella sua eredità che viene dal server HighWay.\\ In quest' | ||
- | In un simile scenario è intuitivo comprendere lo scopo che animava la creazione dei titoli dei documenti.\\ | ||
- | Col passare del tempo, ancora nel server HighWay, il titolo ha assunto ruoli diversi venendo utilizzato come strumento per ottenere parti del documenti utili a generare altri titoli o in fasi di ordinamento delle selezioni. Il concetto di parti del documento ha presto piede anche presso le applicazioni che hanno provveduto a fare uso dei titoli non più come stringhe da mostrare ma sempre più spesso come un sottoinsieme semplificato del documento dal quale trarre informazioni che non per forza troveranno rappresentazione a video per l' | ||
- | Nel titolo, quindi, hanno man mano visto la luce dei separatori il cui scopo era esclusivamente applicativo: | ||
- | Quello che era nato come una stringa è quindi divenuto un oggetto sottoposto ad interpretazione al cui forma s'è fatta man mano sempre più complessa al crescere delle esigenze delle applicazioni: | ||
- | Il titolo aveva quindi esaurito il suo scopo originario per divenire una vera e propria sorta di //cache// del documento ad uso e consumo tanto del server stesso((composizione di alti titoli, ordinamenti)) quanto delle applicazioni. | ||
- | |||
- | Dal momento che l' | ||
- | |||
- | Quest' | ||
- | |||
- | ===== Come si ottiene la lavorazione ===== | ||
- | |||
- | In primo luogo è indispensabile fare uso di un Server eXtraWay | ||
- | |||
- | Gli esempi finali mostreranno più chiaramente come si compie la configurazione ma intanto vediamo quali potenzialità si hanno.\\ | ||
- | In primo luogo si può scegliere di definire un foglio di stile XSLT per l' | ||
- | Il foglio di stile XSLT generico si dichiara aggiungendo un elemento //profile// avente l' | ||
- | Il foglio di stile XSLT specifico di unità informativa si dichiara aggiungendo un attributo //ud_xslt// all' | ||
- | In ambo i casi il valore dell' | ||
- | |||
- | In seguito la dichiarazione degli indici da produrre ricalcherà quella inerente le chiavi di ogni // | ||
- | |||
- | ===== Obiettivo Principale ===== | ||
- | |||
- | Obiettivo principale di questa estensione funzionale del Server | ||
- | Data la ricchezza e la potenza del linguaggio XSLT è possibile realizzare dal XML di un documento un nuovo XML che può essere utilizzato per diversi motivi.\\ | ||
- | Vediamo quali in che modo realizzare ed utilizzare questo nuovo XML descrivendo la teoria ed esponendo alcuni esempi chiarificatori. | ||
- | |||
- | ==== Generazione di Indici Speciali ==== | ||
- | |||
- | E' pratica comune, in eXtraWay, produrre indici che non afferiscono semplicemente al contenuto dei documenti, espresso nel contenuto degli attributi e degli elementi. Le esigenze applicative, | ||
- | La dove la sintassi di concatenazione non si è dimostrata efficace ovvero in quei casi in cui un indice speciale era il frutto di un' | ||
- | |||
- | Le chiavi che vengono generate appartengono ad un diverso sottoinsieme del documento. Come è noto le chiavi dei documenti eXtraWay appartengono a rami distinti. Essi sono il ramo UD per le chiavi di servizio (utente che ha compiuto inserimento e modifica, data ed ora di inserimento e modifica, file XML di destinazione e così via) ed il ramo XML (collezione degli indici prodotti grazie alle regole esplicite ed implicite sul contenuto del documento). | ||
- | Nel ramo XML trovano naturalmente collocazione anche le chiavi prodotte da un' | ||
- | A questi due rami se ne aggiunge un terzo, il ramo XSL. Il comportamento del server in merito a questo rame è del tutto analogo al ramo XML. La dichiarazione delle modalità con le quali si desidera che le chiavi vengano indicizzate è in tutto e per tutto equivalente alle dichiarazioni inerenti il ramo XML e quindi trovano posto nel file // | ||
- | Al pari degli indici per il ramo XML, anche quelli del corrispondente ramo XSL si rifanno alle modalità di default((mono valore alfanumerico per gli attributi e multi valore alfanumerico per gli elementi)). | ||
- | |||
- | Palesemente, | ||
- | |||
- | ^ Attenzione: ^ | ||
- | |Dal momento che tutti gli indici calcolati per una certa // | ||
- | |||
- | ==== Uso del semilavorato XSLT per gli ordinamenti ==== | ||
- | |||
- | L' | ||
- | Per quanto questa sintassi possa risultare versatile, però, non si può e non si deve escludere che speciali ordinamenti possano essere ottenuti solo grazie ad altrettanto speciali combinazioni di parti di un documento con un pizzico di logica applicativa.\\ | ||
- | Per questo scopo o per poter produrre una chiave di ordinamento unica applicabile in tutti i casi e magari frutto di molteplici parti provenienti dal documento, l'uso del foglio di stile XSLT può risultare appropriato. | ||
- | |||
- | Con la stessa logica che ci conduce a comporre canali speciali per la costituzione di indici altrimenti complicati da realizzare possiamo pensare a chiavi di ordinamento composite e quindi più potenti e veloci. Queste chiavi potrebbero quindi essere escluse dall' | ||
- | |||
- | ==== Uso del foglio di stile per produrre una particolare cache del documento ==== | ||
- | |||
- | Come precedentemente accennato l'idea di potenziare il titolo, divenuto //cache// del documento, | ||
- | |||
- | ^ Osservazioni: | ||
- | |L'uso di questo strumento per la realizzazione di una //cache// del documento per scopi applicativi va necessariamente armonizzata con le esigenze in termini di indici ed ordinamenti. Qualora lo scopo fosse esclusivamente applicativo e l'XML prodotto dalla lavorazione XSLT risultasse di imponenti dimensioni, la progettazione dell' | ||
- | |||
- | Non dimentichiamo, | ||
- | Gli esempi finali chiariranno meglio la questione. | ||
- | |||
- | Per richiedere, applicativamente, | ||
- | |||
- | |XSL| | ||
- | |||
- | ... che esplicita al server di non voler realizzare un titolo per composizione di parti del documento bensì ottenere l' | ||
- | |||
- | **Nota:** Questa sintassi non può essere usata come regola di default di composizione del titolo dei documenti espressa nel file // | ||
- | |||
- | ===== Esempi di configurazione ed uso ===== | ||
- | |||
- | Prendiamo ad esempio un documento che riporti i dati di una notizia secondo il formato internazionale '' | ||
- | |||
- | **Nota:** Una parte delle cose indicate nel seguente esempio potrebbe essere realizzata con altri accorgimenti, | ||
- | |||
- | Nel documento in formato '' | ||
- | Nel nostro esempio estrarremo dalla notizia queste componenti, assieme al titolo della stessa, e produrremo un semplice XML che si può prestare per diversi scopi. | ||
- | |||
- | Vediamo l' | ||
- | |||
- | < | ||
- | <?xml version=" | ||
- | |||
- | < | ||
- | xmlns: | ||
- | |||
- | < | ||
- | |||
- | < | ||
- | < | ||
- | </ | ||
- | |||
- | < | ||
- | |||
- | < | ||
- | < | ||
- | </ | ||
- | |||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | composed=" | ||
- | < | ||
- | </ | ||
- | </ | ||
- | |||
- | </ | ||
- | </ | ||
/data/attic/documentazione_3di/extraway/ud_xslt.1277478473.txt.gz · Ultima modifica: 2017/09/08 10:58 (modifica esterna)