Il linguaggio XML per la rappresentazione dei dati Lo Extensible Markup Language o XML è stato concepito da un gruppo di lavoro del World Wide Web Consortium.

Slides:



Advertisements
Presentazioni simili
Introduzione al linguaggio C++
Advertisements

Introduzione all’HTML
Introduzione al DTD Mario Arrigoni Neri.
Introduzione ad XML Mario Arrigoni Neri.
HTML+XML= XHTML Il ritorno al futuro del WEB A cura di Barbara Lotti.
HYPER TEXT MARK-UP LANGUAGE
DBMS (DataBase Management System)
HTML Hyper Text Mark-Up Language. HTML Hyper Text Mark-Up Language Linguaggio di marcatura per ipertesti E un linguaggio di formattazione usato per descrivere.
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.
HTML Hyper Text Mark-Up Language. HTML Hyper Text Mark-Up Language Linguaggio di marcatura per ipertesti E un linguaggio di formattazione usato per descrivere.
1 Introduzione ad XML. 2 Problemi con SGML Complesso da comprendere ed utilizzare Non è pensato per la rete: mancano link ipertestuali e specifiche grafiche.
Lezione 18 MIDI e XML Programmazione MIDI (Prof. Luca A. Ludovico)
DTD Laurea Magistrale in Informatica Chapter 03 Modulo del corso Thecnologies for Innovation.
XML Introduzione Laurea Magistrale in Informatica Reti 2 (2005/06) dott. Francesco De Angelis
Query OQL e XQUERY a confronto
G. Mecca – – Università della Basilicata Tecnologie di Sviluppo per il Web XML: Dettagli e Approfondimenti versione 2.0 Questo lavoro è
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.
1 Scoprire e capire HTML Creare semplici pagine WEB Maria Laura Alessandroni.
XML Prof. Barbara Pernici Politecnico di Milano. Introduzione a XML.
XHTML Danilo Deana. XHTML2 XHTML (eXtensible HyperText Markup Language) XHTML è una riformulazione di HTML come applicazione XML. Utilizzando XHTML è
Componenti di un documento HTML Danilo Deana. Componenti di un documento HTML 2 Elementi HTML comprende elementi per rappresentare paragrafi, elenchi,
XML e DTD. –il "PROLOG contiene: dichiarazione della versione di XML; commenti (facoltativi); dichiarazione del DOCUMENT TYPE. –il "DOCUMENT INSTANCE.
Architettura del World Wide Web
Introduzione e nozioni fondamentali di sintassi
Lezione 2 Programmare in ASP
Corso di PHP.
XSLT Trasformazioni XSL Ing. Luca Sabatucci. XSLT Uno dei vantaggi principali nell'utilizzo dell'Extensible Markup Language è la facilità con cui si possono.
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.
Accesso ai dati su file Lab. Sistemi Informativi Economico-Aziendali Accesso ai dati su file Localizzazione dei dati File system locali e distribuiti Protocolli.
Linguaggi di codifica.
HyperText Markup Language 17-23/6/08 Informatica applicata B Cristina Bosco.
ACCESS Introduzione Una delle necessità più importanti in informatica è la gestione di grandi quantità di dati. I dati possono essere memorizzati.
Paragrafi e allineamenti
Creare pagine web Xhtlm. Struttura di una pagina.
Il World Wide Web Lidea innovativa del WWW è che esso combina tre importanti e ben definite tecnologie informatiche: Documenti di tipo Ipertesto. Sono.
Il linguaggio HTML Antonella Schiavon – settembre 2008 rev. 1 – aprile 2011.
HTML HyperText Markup Language Linguaggio per marcare un’Ipertesto
Hyper-Text Mark-Up Language
INTRODUZIONE A JAVASCRIPT
Informatica Umanistica A.A. 2007/2008 LEZIONE 4 eXtensible Markup Language (XML) INTRODUZIONE.
XHTML Corso linguaggi per il web a.s. 2011/2012 ITIS A. Righi – Corsico Relatore – Aldo Guastafierro.
HTML I tag HTML (parte 1). I tag HTML  I comandi che il browser interpreta  Etichette per marcare l’inizio e la fine di un elemento HTML  Formato e.
1 Sistemi Informativi e Servizi in Rete Università degli Studi di Brescia Facoltà di Ingegneria Parsing di documenti XML Esercizi.
Lezione 3 Struttura lessicale del linguaggio
CORSO Di WEB DESIGN prof. Leonardo Moriello
Creazione di pagine per Internet Brevi note a cura di Emanuele Lana
Internet e HTML Diffusione di informazioni mediante la rete Internet.
Introduzione a Javascript
Tecnologie di InternetDocument Type Definition Dott. Nicola Dragoni Document Type Definition  Document Type Definition (DTD)  Documento XML valido 
Tag FRAMESET. I frame sono un particolare tipo di struttura HTML, che consente di suddividere la finestra del browser in diversi riquadri distinti. Un'insieme.
IV D Mercurio DB Lezione 2
A.a. 2004/05Tecnologie Web1 Introduzione a XML: Document Type Definition; parser XML; XML-schema; eXtensible Stylesheet Language.
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
Fondamenti di Markup Languages: Richiami di HTML © 2005 Stefano Clemente Stefano Clemente
24/01/051 XML e i programmi di impaginazione Lisa Zanarini.
Cenni Su SGML, HTML, XML SGML (Standard Generalized Markup Language) è il padre di tutti i linguaggi "Markup" – Lo svantaggio è la "pesantezza" dei suoi.
Ingegneria del software Modulo 3 -Tecniche di implementazione Unità didattica 1 -Ingegneria dei componenti Ernesto Damiani Università degli Studi di Milano.
Servizi Internet Claudia Raibulet
Informatica Umanistica LM - Scienze del Testo Docente Alessia Scacchi.
Creazione di pagine per Internet Brevi note a cura di Emanuele Lana
Laboratorio di XHTML e CSS
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
2 Indice Un esempio Che cosa è A cosa serve Confronto con HTML Punti di forza La sua struttura.
XML (eXtensible Markup Language). XML è stato progettato per descrivere dati HTML è stato progettato per visualizzare dati XML (eXtensible Markup Language)
1 Il linguaggio XML per la rappresentazione dei dati Lo Extensible Markup Language o XML è stato concepito da un gruppo di lavoro del World Wide Web Consortium.
HTML. Pagina HTML Struttura Titolo Hello World! Paragrafo apre il documento html contiene informazioni come il titolo della pagina, i meta tags, la codifica.
Transcript della presentazione:

Il linguaggio XML per la rappresentazione dei dati Lo Extensible Markup Language o XML è stato concepito da un gruppo di lavoro del World Wide Web Consortium (W3C) a metà degli anni ’90 XML è un «metalinguaggio» che consente di definire altri linguaggi E’ uno strumento utilizzato principalmente per definire: - documenti con marcatori in cui i tag non sono predefiniti - collezioni di dati semi-strutturati rappresentati in formato testuale. È lo standard più utilizzato per l’interscambio di documenti prodotti con applicazioni software diverse e di dati tra DBMS di diversi produttori. A differenza di HTML, XML è un linguaggio finalizzato solo alla memorizzazione e all’interscambio di dati, non alla loro visualizzazione

Il seguente file di testo è un documento XML che rappresenta gli indirizzi di posta elettronica e le password degli utenti di un sistema informatico: Pippo 0A1B2C3D4E5F Pluto A9B8C7D6E5F4

I documenti in formato XML hanno una struttura ad albero Esempio: struttura ad albero del documento XML precedente Pippo 0A1B2C3D4E5F Pluto A9B8C7D6E5F4

Sintassi dell’XML 1.riga iniziale: 2.tag iniziano con caratteri alfabetici o _ (es.:Sì:,, NO:, ) 3.tag: solo simboli alfanumerici. Ammessi: “-” “_” “.” NO spazi. 4.chiusura tag obbligatoria: 5.nidificazione tag gerarchica, es: tutto il documento XML deve essere compreso in unico tag radice aperto e chiuso,es:... 7.i tag possono avere attributi, i cui valori sono compresi tra apici o doppi apici, es: ciao 8.commenti compresi tra 9.simboli chiave: << >> && “" ‘&apos;

Giorgio Fiorenzo C&apos;erano molti alunni a scuola? Esempio: documento XML che rappresenta un messaggio SMS Qui l’elemento radice è MESSAGE; timestamp è un suo attributo Un elemento XML è ciò che è compreso tra un tag di apertura e il corrispondente tag di chiusura. Un elemento può contenere: testo (es.: gli elementi from,to, text contengono testo) attributi (es.: l’elemento MESSAGE contiene l’attributo timestamp) altri elementi (es.: l’elemento MESSAGE contiene tre elementi: from, to, text) nulla (elemento vuoto) (es: )

Sintassi abbreviata per elementi vuoti: ( anziché ) Attributo predefinito xml:lang per specificare la lingua usata in un elemento (possibili valori: it,es,en,fr,de, ecc.) Giorgio Fiorenzo Giorgio Fiorenzo C&apos;erano molti alunni a scuola? La riga: equivale a:

Per qualificare il contenuto di un elemento come CDATA (Character Data) lo si inserisce tra Giorgio Fiorenzo <!CDATA[ Ti invio un esempio di XML:... ]]> In questo modo il contenuto dell’elemento non viene analizzato. Ad esempio così è possibile inserire del codice HTML all’interno di un elemento in un file XML.

Se nel documento XML ci sono caratteri non standard ASCII (es.caratteri accentati), bisogna specificare il tipo di codifica utilizzata. Windows-1252Codifica a 8 bit dei caratteri dell’Europa occidentale adottata dai sistemi operativi Windows ISO Codifica standard a 8 bit dei caratteri dell’Europa occidentale UTF-8Codifica Unicode che utilizza da 8 a 32 bit per il singolo carattere UTF-16Codifica Unicode che utilizza 16 bit per il singolo carattere adottata dal linguaggio Java Giorgio Fiorenzo Perché... più di così...

E’ sempre possibile rappresentare la struttura di un documento XML mediante un diagramma ad albero Stefano Benni Terra! Feltrinelli 1983

Un documento XML che rispetta le regole sintattiche di base è denominato ben formato La verifica del rispetto delle regole sintattiche di un documento XML può essere effettuata utilizzando specifici strumenti software: molti browser o editor specializzati per programmatori sono in grado di verificare che un documento XML sia ben formato. All’URL validator.w3.org è disponibile uno strumento utilizzabile on-line per la verifica sintattica di documenti XML e di pagine HTML. Anche se un documento XML è ben formato (cioè sintatticamente corretto) rimane il problema di verificare che impieghi effettivamente i tag previsti e in modo corretto; inoltre il contenuto di un elemento rappresenta spesso un dato che deve rispettare regole di tipizzazione.

Perché un documento XML sia ben formato deve rispettare le seguenti regole: 1.Ogni documento XML deve contenere un unico elemento di massimo livello (root) che contenga tutti gli altri elementi del documento. Le sole parti di XML che possono stare all'esterno di questo elemento sono i commenti e le direttive di elaborazione (per esempio, la dichiarazione della versione di XML) 2.Ogni elemento deve avere un tag di chiusura o, se vuoti, possono prevedere la forma abbreviata (/>) 3.Gli elementi devono essere opportunamente nidificati, cioè i tag di chiusura devono seguire l'ordine inverso dei rispettivi tag di apertura 4.XML fa distinzione tra maiuscole e minuscole, per cui i nomi dei tag e degli attributi devono coincidere nei tag di apertura e chiusura anche in relazione a questo aspetto 5.I valori degli attributi devono sempre essere racchiusi tra singoli o doppi apici

... abcdefghi... </testo Nel codice XML seguente ci sono diversi errori e il documento pertanto non né ben formato.

Stefano Benni Terra! Feltrinelli 83 Mark Twain Le avventure di Huckleberry Finn 1884 Herman Melville Moby Dick milleottocentocinquantuno Il seguente documento XML che rappresenta una collezione di libri è ben formato Tuttavia i dati relativi ai singoli libri non sono presenti in modo coerente. Riesci a individuare le 5 anomalie? (Se no, fai click) libro 3: elemento editore vuoto libro 3: l’anno è espresso in caratteri libro 2: manca elemento editore libro 2: usa il tag anziché libro 1: l’anno è in forma abbreviata

Per evitare i problemi dell’esempio precedente, ci vuole un metodo per: a)definire la struttura che un dato documento XML deve avere; b)definire la tipologia che i dati contenuti negli elementi devono rispettare. Il metodo più comune per definire uno schema di validazione per un documento XML è XSD (XML Schema Definition). Uno schema XSD definisce: gli elementi di un documento XML e la loro relazione gerarchica; gli eventuali attributi degli elementi; il numero e l’ordinamento degli elementi; gli eventuali elementi vuoti; il tipo dei dati contenuti negli elementi e negli attributi; i valori predefiniti o costanti del contenuto degli elementi e degli attributi. Note: il linguaggio XSD per definire lo schema è a sua volta un linguaggio XML prima di XSD si usava DTD (Document Type Definition), che però presenta diverse limitazioni

Un possibile schema XSD per un documento XML che rappresenta un singolo libro potrebbe essere il seguente: Se il precedente schema XSD è salvato nel file libro.xsd, un documento XML che si attiene a tale schema potrebbe essere il seguente: <libro xmlns:xsi=" xsi:noNamespaceSchemaLocation="libro.xsd"> Stefano Benni Terra! Feltrinelli 1983

Progettare un linguaggio XML significa definirne lo schema, cioè la sintassi che un qualsiasi documento XML deve rispettare per appartenere al linguaggio. Un documento XML valido è un documento XML ben formato che rispetta le regole dello schema che riferisce. La validazione di un documento XML rispetto allo schema riferito viene normalmente effettuata mediante strumenti software automatici (es.: software open source XSV)

Il successo di XML è legato alla sua flessibilità: spesso le aziende e gli sviluppatori software definiscono schemi XML per i file che costituiscono l’input o l’output delle applicazioni che realizzano. Per esempio, i formati dei file prodotti dalle applicazioni Office di Microsoft sono in formato XML (docx, xslx, ecc.) CML (Chemical Markup Language), che è usato per la definizione di strutture molecolari; EPUB (Electronic Publication), che è un formato aperto per la pubblicazione di e-book; GML (Geographic Markup Language) In alcuni casi sono stati definiti dei veri e propri linguaggi XML aventi scopi specifici; tra questi ricordiamo:

Il linguaggio di programmazione Java prevede una API (Application Program Interface) standard per la gestione di documenti XML denominata JAXP (Java API for XML Processing). Le classi del package JAXP consentono di effettuare le seguenti elaborazioni: validazione di un documento XML rispetto a uno schema XSD; produzione di un nuovo documento XML ed eventuale salvataggio in un file di testo; lettura di un documento XML contenuto in un file di testo o reso disponibile come risorsa in rete ed eventuale verifica della correttezza; trasformazione di un documento XML La lettura di un documento XML in una struttura dati che è possibile gestire da parte del codice di un programma è tecnicamente definita parsing.

Il parsing di un documento XML può avere 2 modalità: SAX (Simple API for XML) DOM (Document Object Model) I package JAXP consentono di effettuare il parsing sia con modalità SAX che con modalità DOM SAX lettura sequenziale del documento non consente di modificare il documento analizzato più efficiente ma piuttosto rigido DOM memorizzazione dell’intero albero del documento maggiore flessibilità consente di modificare il documento analizzato e/o costruirne uno nuovo richiede molta più memoria