I fogli di stile XSL.

Slides:



Advertisements
Presentazioni simili
UNO STRUMENTO PER INTERAGIRE CON GLI UTENTI DELLE PAGINE WEB
Advertisements

WWW XML-Namespace Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo: u Lesigenza e il funzionamento dei Namespace in XML.
Introduzione ad XML Mario Arrigoni Neri.
Informatica 22/03/2012.
HTML+XML= XHTML Il ritorno al futuro del WEB A cura di Barbara Lotti.
HYPER TEXT MARK-UP LANGUAGE
A. FERRARI Alberto Ferrari. L'HyperText Markup Language (HTML) (traduzione letterale: linguaggio di marcatura per ipertesti) è un linguaggio usato per.
JavaScript 2. JavaScript nelle pagine web. HTML e XHTML Gli script JavaScript sono utilizzabili sia in pagine HTML che XHTML XHTML impone che il codice.
1 Introduzione ad XML. 2 Problemi con SGML Complesso da comprendere ed utilizzare Non è pensato per la rete: mancano link ipertestuali e specifiche grafiche.
Introduzione ai CSS. Cosa è successo allHTML Perché usare i CSS Introduzione ai CSS Fondamenti.
XPath (XML Path Language)
XSLT (eXtensible Stylesheet Language Transformation) Laurea Magistrale in Informatica Reti 2 (2005/06) dott. Francesco De Angelis
XSLT UNIVERSITA DI CAMERINO Corso di laurea in Informatica Barbara Re Anno Accademico
Numerico-Vespignani, Informatica per le scienze umanistiche, Il Mulino, La rappresentazione dellinformazione testuale e i linguaggi di codifica.
XML Prof. Alfredo Pulvirenti. XML XML (eXtensible Markup Language) è un meta linguaggio. Può essere definito come un insieme di regole e convenzioni che.
Laboratorio di Applicazioni Informatiche II mod. A
Informatica.science.unitn.it Un esempio di architettura basata sulluso di XML e XSL per la pubblicazione di un sito web.
Linguaggi di marcatura e fogli stile Presentazione del corso.
XML e XSL. XSL - eXtensible Stylesheet Language XSL è un linguaggio di annotazione che serve a "trasformare" la struttura di un documento in formato XML.
XML e DTD. –il "PROLOG contiene: dichiarazione della versione di XML; commenti (facoltativi); dichiarazione del DOCUMENT TYPE. –il "DOCUMENT INSTANCE.
Corso di basi di dati II Prof. Francesco Cutugno Dott. Sara Romano
Fogli stile a cascata Danilo Deana.
Introduzione e nozioni fondamentali di sintassi
Lezione 2 Programmare in ASP
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... XML Elaborazione di Franco Grivet Chin.
Esercizio 1 Convertire il seguente DTD (esercizio 1 sui DTD) in XML Schema:
Linguaggi per il Web Linguaggi di markup: CSS. Cascading Style Sheets (CSS) servono per facilitare la creazione di pagine HTML con un aspetto uniforme.
XSLT Trasformazioni XSL Ing. Luca Sabatucci. XSLT Uno dei vantaggi principali nell'utilizzo dell'Extensible Markup Language è la facilità con cui si possono.
1 XPath. 2 What is XPath? XPath is a syntax for defining parts of an XML document XPath uses paths to define XML elements XPath defines a library of standard.
Informatica Umanistica A.A. 2009/2010 eXtensible Markup Language (XML)
Importanza DTD La DTD (Document Type Definition) consente di dichiarare in maniera univoca la struttura di markup mediante la definizione dello schema.
I fogli di stile XSL – 2 –. Selezioni multiple : serve per applicare una regola in modo ricorsivo a nodi figli dellelemento contestuale. Attributo select.
Linguaggi di codifica.
1 Documenti XML validi La Document Type Definition Dichiarazione di elementi.
Codifica di Testi Il corso e lesame. Argomenti del corso La teoria della codifica XML: introduzione e livello avanzato (DTD, Schema W3C) La Text Encoding.
CSS : Cascading Style Sheet
Inutile provare dunque a inserire un file ".psd" (formato nativo di Photoshop) all'interno della vostra pagina HTML: con grande probabilità il browser.
FILOLOGIA DELLA LETTERATURA ITALIANA – L-FIL-LET/13
HTML Lezione 8 I collegamenti ipertestuali (link).
Applicazioni Web HTTP, HTML e CSS Elaborato da Gianluca Lauteri e Daniele Filannino.
Creare pagine web Xhtlm. Struttura di una pagina.
HTML Lezione 3 Stili.
CSS CASCADING STYLE SHEETS : CASCADING STYLE SHEETS : Fogli di stile a cascata Definisce il modo in cui verranno visualizzati gli elementi di una pagina.
BIOINFO3 - Lezione 111 CGI-BIN CGI-BIN sono chiamati i programmi la cui esecuzione può essere richiesta attraverso il WEB. Il server web (httpd) della.
Informatica Umanistica A.A. 2005/2006 LEZIONE 6 Ripasso XML – DTD XSL.
XPATH.
CSS Cascade Style Sheets.
INTRODUZIONE A JAVASCRIPT
Programma delle lezioni LABORATORIO B  Lezione 01: 27/02martedi  Lezione 02: 06/03martedi  Lezione 03: 13/03martedi  Lezione 04:
Informatica Umanistica A.A. 2007/2008 LEZIONE 4 eXtensible Markup Language (XML) INTRODUZIONE.
JavaScript Generalità Cos'è JavaScript?
Impostare i caratteri. Le prime versioni del linguaggio HTML così come le prime versioni dei browser consentivano unicamente la scelta tra due tipi di.
Programmazione Web PHP e MySQL 1. 2Programmazione Web - PHP e MySQL Esempio: un blog.
HTML e CSS C. Gena, C. Picardi, J. Sproston HTML e CSS.
WWW XSLT Ing. Michele Vindigni. WWW 2 Introduzione Oggi esaminiamo in breve: u XSLT, ovvero il linguaggio trasformazione per documenti XML con sintassi.
A.a. 2004/05Tecnologie Web1 Introduzione a XML: Document Type Definition; parser XML; XML-schema; eXtensible Stylesheet Language.
CSS Cascading Style Sheet
WWW XBase, XPath e XPointer Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo: u XBase, XPath e XPointer.
WWW XSLT Fabio Vitali. WWW Fabio Vitali2 Introduzione Oggi esaminiamo in breve: u XSLT, ovvero il linguaggio di stile di XML.
EXtensible Stylesheet Language Transformations (XSLT) Giuseppe Della Penna Università degli Studi di L’Aquila
WWW XSLT Fabio Vitali. WWW Fabio Vitali2 Introduzione Oggi esaminiamo in breve: u XSLT, ovvero il linguaggio di stile di XML.
1 XSL:Rappresentare i documenti XML Marco Mesiti XSL, XSLT, XPath.
Fogli di stile CSS. Allegare un CSS a un documento XML
XSL – 3 –. : crea un nuovo elemento nell’output : crea un nuovo attributo per un elemento dichiarato.
Documenti XML ben formati Altre componenti di un documento XML – Struttura dei documenti XML.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Firebug-lite Universita’
16 Maggio - Lezione 9POLETTINI NICOLA1 Programma delle lezioni LABORATORIO B  Lezione 1: 14 marzomartedi  Lezione 2: 21 marzomartedi  Lezione.
Document Type Definition
XML (eXtensible Markup Language). XML è stato progettato per descrivere dati HTML è stato progettato per visualizzare dati XML (eXtensible Markup Language)
Transcript della presentazione:

I fogli di stile XSL

Allegare un foglio di stile a un documento XML XSL <?xml-stylesheet type=”text/xsl” href=”mioxsl.xsl”?> CSS <?xml-stylesheet type=”text/css” href=”miocss.css”?>

Esempio <?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="prova.xsl"?> <!DOCTYPE TEI.2 PUBLIC "-//TEI//DTD TEI Lite XML ver. 1//EN" "c:/TEI-EMACS/xml/dtds/tei/teixlite.dtd" []>

XSL: due linguaggi in uno XSLT un potente linguaggio di trasformazione (html, xml, txt) XSL:FO formattazione di oggetti

XSLT: uso Serve a: Cosa fa: visualizzare un documento XML come se fosse un documento HTML, XML, TXT trasformare un documento XML in un documento XML, HTML, TXT Cosa fa: Trasforma un NODO XML di input in un NODO (XML | HTML | TXT) di output

TIPI DI NODI Document root (Radice del documento) Attribute (Attributo) Comment (Commento) Element (Elemento) Namespace Processing instruction (Istruzione di elaborazione) Text (Testo)

Elemento ROOT di un XSL <?xml version=”1.0”?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"?> <!-- qui il contenuto del foglio di stile --> </xsl:stylesheet>

Template Per selezionare i nodi XSL usa dei template Un template è costituito da una serie di regole che contengono delle istruzioni. Quando si compara o si seleziona un nodo, un template dice al processore XSLT quale insieme di regole usare per trasformare il nodo per l’output.

xsl:template <xsl:template match=“qui il nodo”> <!--Qui le regole per il nodo selezionato --> </xsl:template>

Un foglio XSL <?xml version=”1.0”?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"?> <xsl:template match=“qui un nodo”> </xsl:template> <!-- qui altri nodi --> </xsl:stylesheet>

Un esempio <?xml version="1.0" encoding="iso-8859-1"?> <?xml-stylesheet type="text/xsl" href="antologia.xsl"?> <antologia> <poesia><titolo>I</titolo> <stanza> <verso>Voi ch'ascoltate in rime sparse il suono</verso> <verso>di quei sospiri ond'io nudriva 'l core</verso> <verso>in sul mio primo giovenile errore</verso> <verso>quand'era in parte altr'uom da quel ch'i' sono,</verso> </stanza> <!-- altre stanze --> </poesia> </antologia>

Un esempio: il foglio di stile <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" indent="yes" /> <xsl:template match="/"> <html> <body> <xsl:apply-templates /> </body> </html> </xsl:template> </xsl:stylesheet>  antologia1.xml

<xsl:output method="html" indent="yes" /> Ciò che vogliamo ottenere in output Attributi method=“html” | “xml” | “txt” indent=“yes” | “no”

La regola per l’elemento root <xsl:template match="/"> <html> <body> <xsl:apply-templates /> </body> </html> </xsl:template>

Il processore XSLT <xsl:template match="/"> <html> <body> <xsl:apply-templates /> </body> </html> </xsl:template> Trova l’elemento root (<xsl:template match="/">) Scrive due start-tag (<html> e <body>) Mette tutto il contenuto dell’elemento dell’elemento root (<xsl:apply-templates />) Scrive due end-tag (</body> e </html>)

Attenzione! Tutto ciò che è scritto dentro <xsl:template> viene scritto nell’output (testo, tag HTML…) Tutti gli elementi che appartengono al namespace xsl: vengono eseguiti.

xsl:apply-templates Serve per applicare le regole descritte al nodo selezionato e a tutti i suoi figli. Se si vuole che i figli abbiano una visualizzazione diversa, bisogna dichiarare una nuova regola

Es. 2 <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" indent="yes" /> <xsl:template match="/"> <html> <body> <xsl:apply-templates /> </body> </html> </xsl:template> <xsl:template match="titolo"> <p><center><xsl:apply-templates /></center></p> <xsl:template match="verso"> <xsl:apply-templates /><br/> </xsl:stylesheet>  antologia2.xml

Applicare una regola selezionando <?xml version="1.0" encoding="iso-8859-1"?> <?xml-stylesheet type="text/xsl" href="antologia.xsl"?> <antologia> <poesia><titolo>I</titolo> <stanza> <verso rima="A">Voi ch'ascoltate in rime sparse il suono</verso> <verso rima="B">di quei sospiri ond'io nudriva 'l core</verso> <verso rima="B">in sul mio primo giovenile errore</verso> <verso rima="A">quand'era in parte altr'uom da quel ch'i' sono,</verso> </stanza> <!-- altre stanze --> </poesia> </antologia>

select Attributo select Selezionare un attributo select=“@rima” @nomeAttributo select=“@rima”

Il foglio di stile <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" indent="yes" /> <xsl:template match="/"> <html> <body> <xsl:apply-templates /> </body> </html> </xsl:template> <xsl:template match="titolo"> <p><center><xsl:apply-templates /></center></p> <xsl:template match="verso"> (<b><xsl:apply-templates select="@rima"/></b>) <xsl:text> </xsl:text> <xsl:apply-templates /><br/> </xsl:stylesheet>  antologia3.xml

Spazio fra le stanze <?xml version="1.0"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" indent="yes" /> <xsl:template match="/"> <html> <body> <xsl:apply-templates /> </body> </html> </xsl:template> <xsl:template match="titolo"> <p><center><xsl:apply-templates /></center></p> <xsl:template match=“stanza"> <xsl:apply-templates /><br/> <xsl:template match="verso"> </xsl:stylesheet>  antologia4.xml

Selezionare nodi per l’attributo match di <xsl:template> Nodo radice <xsl:template match="/"> ... </xsl:template> Elementi <xsl:template match=“verso">

Selezionare nodi per l’attributo match di <xsl:template> -2- Figli nipoti o discendenti 1. <xsl:template match=“strofa/verso"> ... </xsl:template>  operatore / 2. <xsl:template match=“poesia/*/verso"> </xsl:template>  operatore * (salta un elemento) 3. <xsl:template match=“poesia//verso"> </xsl:template>  // salta n elementi

Selezionare nodi per l’attributo match di <xsl:template> -3- Attributi 1. <xsl:template match=“verso[@rima]"> ... </xsl:template>  tutti i “verso” con attributo “rima” 2. <xsl:template match=“verso[@rima=‘A’]"> </xsl:template> tutti i “verso” con attributo “rima” e valore “A”

Selezionare nodi per l’attributo match di <xsl:template> -4- OR <xsl:template match="strofa | verso"> ... </xsl:template>  operatore |