UNIVERSITA’ DEGLI STUDI DI PAVIA Corso di Laurea Interfacoltà in Comunicazione Interculturale e Multimediale Il metalinguaggio XML: la nuova frontiera per la codifica dell’informazione Relatore: Ing. Marco Porta Tesi di Laurea di: Andrea Mocchi Correlatore: Ing. Massimo Cellario ANNO ACCADEMICO 2003 - 2004 Che cos’è il metalinguaggio XML? • XML è un linguaggio di markup (demarcazione) sviluppato dal W3C. • XML è un linguaggio di “struttura”: l’informazione viene strutturata logicamente all’interno dei documenti XML. • I suoi pregi sono la semplicità, l’estensibilità e l’essere free e open source, nonché l’indipendenza da particolari dispositivi hardware e software. Le origini del metalinguaggio XML • HTML (Hypertext Markup Language): il linguaggio del Web; • SGML (Standard Generalized Markup Language): il padre dei linguaggi di markup; • XML (Extensible Markup Language): un nuovo metodo per la codifica e lo scambio dell’informazione; La struttura di un documento XML • Il modus operandi di XML, è la catalogazione dei dati in unità minime, dette elementi. Ogni elemento è, a sua volta, composto da tag. • La definizione dei tag è lasciata a discrezione dell’utente. • I documenti XML devono rispettare alcune regole. • Un documento XML che rispetta queste prescrizioni viene detto “well formed”. Documento student.xml DTD: Document Type Definition e valid document Attraverso i DTD si definiscono la sintassi e la struttura di un documento XML, specificandone la grammatica e la sintassi. Un documento che si conformi alle specifiche di un DTD è definito “valido”. Documento studente.dtd Gli XML Schema: l’evoluzione dei DTD Sono un’alternativa ai DTD: • Impiegano la sintassi XML per l’encoding • Sono estensibili • Introducono il supporto per i data type Visualizzare XML: CSS (Cascading Style sheet) e XSL (Extensible Stylesheet Language) Esistono due modi per visualizzare i documenti XML: • CSS: i fogli di stile usati anche da HTML, che definiscono “lo stile” della pagina, cioè come appaiono i contenuti del documento XML. Documento student.xml Documento studenteCSS.css Visualizzazione • XSL: un linguaggio espressamente sviluppato per visualizzare i documenti XML. Lo standard XSL si compone di altri tre linguaggi: XSLT, Xpath e XSL-fo. I linguaggi dello standard XSL • XSLT (Extensible Stylesheet Language for Trasformation): è un linguaggio che permette di trasformare e tradurre XML in altri linguaggi. Documento student.xml Documento studenteXslt.xsl Visualizzazione • Xpath: è un linguaggio che viene utilizzato per rintracciare nei documenti XML particolari porzioni di codice. Trova largo impiego integrato in strutture XSLT. Documento catalog.xml Documento catalogXslt.xsl • XSL-fo (Extensible Stylesheet Language Formatting Objects): è un linguaggio dedicato alla specifica di una semantica di formattazione per i contenuti dei documenti XML su schermo, carta o altri media. Documento esempio.fo Visualizzazione Esempi di tecnologie XML... SMIL (Syncronized Multimedia Integration Language): è un linguaggio che rende possibile la creazione di presentazioni audiovisive, integrando filmati, immagini, suoni e testo. SMIL è stato espressamente pensato per operare in ambiente Web. Documento esempio.smi Visualizzazione SOAP (Simple Object Access Protocol): è un protocollo di comunicazione che definisce il formato dei messaggi che due applicazioni possono scambiarsi, sfruttando i protocolli Internet. La comunicazione di SOAP si basa su uno schema “request-response” Schema SOAP “request-response” ...Esempi di tecnologie XML SVG (Scalable Vector Graphics): è una specifica per la creazione di animazioni, che sfrutta la grafica vettoriale. Questo linguaggio è stato sviluppato per lavorare principalmente in ambiente Web. Si propone di essere un agguerrito concorrente di Flash. Documento esempio.svg Visualizzazione MathML (Mathematical Markup Language): l’obiettivo di questo linguaggio è far sì che le espressioni matematiche possano essere utilizzate sul Web. Con HTML si è costretti a ricorrere a immagini che raffigurassero tali espressioni, con forti limitazioni e disagi per l’utenza. Documento MathML Conclusioni Due esempi pratici: XML al servizio di aziende e società. • Il linguaggio di markup creato da un consorzio di aziende di semiconduttori negli Stati Uniti per la distribuzione dei dati sui circuiti integrati. • L’Healt Care Markup Language: linguaggio XML su cui si basano i sistemi informativi delle agenzie di Home Healt Care statunitensi. Documento student.xml <xml version=”1.0” encoding=”ISO 8859-1”> <student year=”2004-2005”> <name>Andrea</name> <surname>Mocchi</surname> <sex>male</sex> <born>Voghera</born> <date> <day>6</day> <month>4</month> <year>1982</month> </date> </student> Esempio di DTD <!DOCTYPE student [ <!ELEMENT student (name, surname, sex, born, date) <!ELEMENT name (#PCDATA)> <!ELEMENT surname (#PCDATA)> <!ELEMENT sex (#PCDATA)> <!ELEMENT born (#PCDATA)> <!ELEMENT date (day, month ,year)> <!ATTLIST student year CDATA 2004-2005> ] Visualizzazione di student.xml tramite studente.css Andrea Mocchi male voghera 6 4 1982 Visualizzazione di student.xml tramite documento XSLT student Nome Andrea Surname Mocchi Visualizzazione di esempio.fo 21 1,5 Andrea Mocchi 29,7 2,5 2,5 1,5 21 29,7 Visualizzazione di esempio.smi Il quadrato rosso e l’ellissi blu vengono visualizzate alternativamente all’infinito Visualizzazione di esempio.svg Andrea Mocchi