Informatica Umanistica A.A. 2007/2008 LEZIONE 4 eXtensible Markup Language (XML) INTRODUZIONE.

Slides:



Advertisements
Presentazioni simili
Introduzione all’HTML
Advertisements

DTD Document Type Definition per XML
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.
A. FERRARI Alberto Ferrari. L'HyperText Markup Language (HTML) (traduzione letterale: linguaggio di marcatura per ipertesti) è un linguaggio usato per.
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)
Document Type Definition per XML Presentazione 8.1 Informatica Generale (Prof. Luca A. Ludovico)
Introduzione ai CSS. Cosa è successo allHTML Perché usare i CSS Introduzione ai CSS Fondamenti.
DTD Laurea Magistrale in Informatica Chapter 03 Modulo del corso Thecnologies for Innovation.
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
Query OQL e XQUERY a confronto
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.
XML Prof. Barbara Pernici Politecnico di Milano. Introduzione a XML.
XML Prof. Barbara Pernici Politecnico di Milano aggiornato 10/12/2002.
XHTML Danilo Deana. XHTML2 XHTML (eXtensible HyperText Markup Language) XHTML è una riformulazione di HTML come applicazione XML. Utilizzando XHTML è
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
Lezione 5 Attributi, Entità, Parametri e Namespaces.
DTD, Entità, Parametri, Namespace
Introduzione e nozioni fondamentali di sintassi
Linguaggi di markup1 LINGUAGGI DI MARKUP. Linguaggi di markup2 Documenti su Internet Internet permette (tra laltro) di accedere a documenti remoti In.
XML per documenti e applicazioni transazionali su Internet Alessio Saltarin Progetto XML Factory.
1 Titolo Presentazione / Data / Confidenziale / Elaborazione di... ASP. Net View State e controlli Elaborazione di Franco Grivet Chin.
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.
Linguaggi di codifica.
1 IsaPress. 2 Obiettivo Realizzare uno strumento di facile uso per estrarre il contenuto da documenti binari di vario tipo in un formato utile per l'impaginazione.
1 IsaPress. 2 Obiettivo Realizzare uno strumento di facile uso per estrarre il contenuto da documenti binari di vario tipo in un formato utile per l'impaginazione.
HyperText Markup Language 17-23/6/08 Informatica applicata B Cristina Bosco.
Il metalinguaggio XML: la nuova frontiera per la codifica dellinformazione Relatore: Ing. Marco Porta Tesi di Laurea di: Andrea Mocchi ANNO ACCADEMICO.
Creare pagine web Xhtlm. Struttura di una pagina.
Informatica Umanistica A.A. 2007/2008
Informatica Umanistica A.A. 2005/2006 LEZIONE 6 Ripasso XML – DTD XSL.
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 XML applicazioni in open archives Azalea III Incontro di Formazione, Roma 2-3 febbraio 2004.
INTRODUZIONE A JAVASCRIPT
Programma delle lezioni LABORATORIO B  Lezione 01: 27/02martedi  Lezione 02: 06/03martedi  Lezione 03: 13/03martedi  Lezione 04:
Roma, 16 giugno 2005 AZALEA Un sistema di conoscenza in oncologia a disposizione di pazienti e cittadini Gli aspetti informatici.
XHTML Corso linguaggi per il web a.s. 2011/2012 ITIS A. Righi – Corsico Relatore – Aldo Guastafierro.
WWW Link in XML Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo: u XLink.
Creazione di pagine per Internet Brevi note a cura di Emanuele Lana
Programma delle lezioni LABORATORIO B  Lezione 01: 27/02martedi  Lezione 02: 06/03martedi  Lezione 03: 13/03martedi  Lezione 04:
Internet e HTML Diffusione di informazioni mediante la rete Internet.
Tecnologie di InternetDocument Type Definition Dott. Nicola Dragoni Document Type Definition  Document Type Definition (DTD)  Documento XML valido 
HTML HTML e il web.
HTML e CSS C. Gena, C. Picardi, J. Sproston HTML e CSS.
Introduzione alle Griglie computazionali - aa Introduzione alle griglie computazionali Introduzione alle griglie computazionali Università degli.
A.a. 2004/05Tecnologie Web1 Introduzione a XML: Document Type Definition; parser XML; XML-schema; eXtensible Stylesheet Language.
PROGETTO… Internet Providers, registrazione del dominio Costruire una home page … e renderla visibile sul Web.
Fondamenti di Markup Languages: Richiami di HTML © 2005 Stefano Clemente Stefano Clemente
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.
WWW La sintassi di SGML  XML Fabio Vitali. WWW Fabio Vitali2 Introduzione Qui esaminiamo in breve tutti gli aspetti di SGML che sono in comune con XML:
Servizi Internet Claudia Raibulet
Informatica Umanistica LM - Scienze del Testo Docente Alessia Scacchi.
Documenti XML ben formati Altre componenti di un documento XML – Struttura dei documenti XML.
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)
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.
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:

Informatica Umanistica A.A. 2007/2008 LEZIONE 4 eXtensible Markup Language (XML) INTRODUZIONE

Programma delle lezioni LABORATORIO B 1. Presentazione e introduzione HTML 2. HTML: tag e immagini 3. HTML: liste e tabelle 4. Introduzione linguaggi di mark-up: XML 5. Document Type Definition (DTD) 6. DTD e attributi 7. Il foglio di stile: XSL 8. XSL(T) 9. Passi da seguire per fare il progetto 10. Esempio di progetto. X Noioso, no? ;-) Cosa vuoi fare?

Lezione 4 SOMMARIO 1. Introduzione XML 2. Cos’è un documento XML. 3. XML – HTML 4. Un po’ di storia… 5. XML – DTD – XSL 6. Dichiarazione 7. Regole principali 8. Primo esempio 9. Albero XML 10. DTD 11. Elemento 12. Attributi 13. Validazione di un file XML 14. Esempio completo

HTML  Chiaro a tutti cosa e' HTML, no?

Video 1. Web The Machine is Us/ing Us 2. Video and transcript g/?p=78

XML - Acronimo XMLXML (eXtensible Markup Language): è l'abbreviazione di Linguaggio Estensibile di Markup ed è l'acronimo dell'espressione inglese Extensible Markup Language. Guida:

Cosa è XML?  è un "markup language" molto simile all'HTML  è pensato per descrivere dati.  non esistono tag predefiniti. Lo sviluppatore definisce i suoi tag personali  utilizza un documento di definizione dei tipi (Document Type Definition - DTD) per descrivere i dati.  attraverso l'uso di un DTD diviene auto- descrittivo

Principali differenze fra HTML e XML  XML è pensato per trasportare dati.  XML non è un sostituto del HTML.  XML e HTML sono stati pensati per scopi diversi.  XML è pensato per descrivere dati e porre l'attenzione su cosa sono.  HTML è pensato per visualizzare dati e porre l'attenzione su come presentarli.  HTML si occupa di visualizzare dati, mentre XML di descrivere le informazioni

HTML vs XML  In HTML informazione e sua visualizzazione NON sono separate  In XML informazione e sua visualizzazione sono separate

a XML SGML HTML XHTML WML MathML ……

Un po’ di storia  1997: la convergenza su XML Lo sviluppo e la correttezza degli standard connessi con il WWW sono gestiti dal W3C (World Wide Web Consortium). Nel 1995 la commissione sui linguaggi di markup decise di creare un nuovo linguaggio di markup con la completezza di SGML e la semplicità di HTML: Extended Markup Language (XML). Nel 1997 è uscito il primo standard per il linguaggio di markup (XML 1.0). In seguito i linguaggi connessi (XML-Namespaces, X-Pointer, X-Link, XSL, ecc.). pensato originariamente come sostituto di HTML per il Web (“Web Semantico”).  Successivamente, altre applicazioni adottato come formato di scambio tra applicazioni

Un documento XML è composto da tre parti  XML i dati (struttura fisica - document istance) Quale informazione e' contenuta nel file?  DTD lo schema dei dati (struttura logica) Quali tag posso usare? Dove? Come?  XSL la presentazione dei dati (stylesheet) Come visualizzo questi dati?

XML – DTD – XSL Nel file XML c’è il contenuto “vero e proprio” semanticamente strutturato La DTD (o lo Schema) definiscono la sintassi dell’XML Il file XSL definisce la visualizzazione

XML – HTML XML, come HTML è un dialetto di SGML orientato al web, ma non è un’alternativa a HTML. Il file XML viene trasformato da un programma in un altro linguaggio, tipicamente HTML ma non solo (testo, PDF, VoiceML,..., qualsiasi formato)

Piccolo esempio Cara Beatrice, ti scrivo per comunicarti … cari saluti, Dante Questo e' il file XML (dati). I tag sono liberi e non definiti dal W3C. “lettera” e' l'elemento radice (root). Come viene visualizzato? Lo vediamo dopo

La dichiarazione XML  La dichiarazione XML è obbligatoria e deve essere posta all’immediato inizio del documento (ovvero come primo carattere! Niente spazi!!!):  Gli attributi sono: version: (obbligatorio) la versione di XML usata. encoding: (opzionale) nome della codifica dei caratteri usata nel documento. (default: UTF-8 o 16)  UTF-8 (8-bit UCS/Unicode Transformation Format) e' un character encoding for Unicode. standalone: (opzionale) (default: no)  standalone=yes - il file non fa riferimento ad altri file esterni, ovvero il solo file XML contiene dati e DTD Noi useremo sempre standalone=”yes”  standalone=no – e' necessario un file esterno (che contiere il DTD)

Piccolo esempio (2) Caro Beatrice, ti scrivo per comunicarti… cari saluti, Dante  Quale e' differenza con HTML?  Quale e' l'elemento radice?  Come facciamo a sapere che “saluti” e' un tag valido? O che ci deve essere una sola “firma”?  E' well formed? E' valido?

Elementi  Gli elementi sono le parti di documento dotate di un senso proprio.  Un elemento è individuato da un tag iniziale, un contenuto ed un tag finale.  Non confondere i tag con gli elementi! Primo file XML elemento TITOLO, racchiuso dai tag TITOLO e /TITOLO cari saluti Marianna elemento saluti (contiene un elemento firma)

Elementi - esempio  Gli elementi sono alla base della strutturazione dei documenti XML.  Un elemento è un frammento di dati, limitato ed identificato (tramite un nome) da un tag. Tag di apertura Santana Supernatural Elemento “artist” Elemento “title” Elemento “album” Tag di chiusura

Commenti  I documenti di markup possono contenere commenti, ovvero note da un autore all’altro, da un editore all’altro, ecc.  Queste note non fanno parte del contenuto del documento, e le applicazioni di markup li ignorano.  Sono molto comodi per passare informazioni tra un autore e l’altro, o per trattenere informazioni per se stessi, nel caso le dimenticassimo.

Elementi - Regole  I nomi degli elementi sono case-sensitive.  Ogni elemento aperto deve essere chiuso entro la fine del documento.  Gli elementi possono essere nidificati, e in tal caso vanno chiusi esattamente nell’ordine inverso a quello di apertura. e' ERRATO poiche' non sono chiusi dell'ordine corretto  Un documento XML deve avere un unico elemento “radice”, in cui tutti gli altri sono nidificati

Elementi - Sintassi  Il tag di apertura di un elemento ha la forma seguente: nome è il nome dell’elemento. attributi è una lista di attributi per l’elemento (che può non apparire).  Il tag di chiusura corrispondente ha la forma seguente: nome è lo stesso identificatore usato nell’apertura.  Alcuni elementi possono essere privi di contenuto; in questo caso è possibile omettere il tag di chiusura scrivendo quello di apertura nel modo seguente (empty tag):

Elementi - Gerarchia  Gli elementi, nidificandosi, creano la struttura ad albero tipica dei documenti XML.  All’interno di questa struttura si definiscono alcuni “rapporti di parentela” utili per individuare gli elementi: <a><a> <b><b> <c><c> Testo a è il nodo radice b e c sono figli di a, il testo è figlio di b, d è figlio di c c è il padre di d, b è il padre del testo, a è il padre di b e c b e c sono fratelli b, c, d e il testo sono discendenti di a, d è un discendente di c, il testo è un discendente di b a è un predecessore di b, c, d e del testo, b è un predecessore del testo, c è un predecessore di d.

Attributi  Gli elementi possono contenere uno o più attributi, che sono termini aggiuntivi che definiscono con più precisione l’elemento, es.  Il valore degli attributi è racchiuso tra virgolette (singole: ‘uno’, o doppie: “uno”). N.B. Le virgolette devono essere entrambe singole o entrambe doppie.  Un attributo non può essere usato due volte all’interno dello stesso elemento.  Un elemento può contenere più di un attributo. … Capitolo primo

Attributi - Regole  I nomi degli attributi sono case-sensitive.  Lo stesso tag non può contenere due attributi con lo stesso nome.  Non sono ammessi attributi senza valore (solo nome).  Il valore degli attributi deve essere specificato tra virgolette semplici o doppie.  Il valore può contenere riferimenti ad entità.  Il valore non può contenere markup, sezioni CDATA o virgolette uguali a quelle iniziali.

Attributi - Sintassi  Sintassi di base da usare all’interno dei tag di apertura:  Una lista di attributi si ottiene elencando più attributi separati da uno o più spazi:  Per includere virgolette nel valore, è necessario usare un tipo diverso da quello usato per delimitare il valore stesso:  Si possono includere riferimenti a entità nel valore:

Entità  Le entità sono frammenti di documento memorizzati separatamente e richiamabili all’interno del documento.  Esse permettono di riutilizzare lo stesso frammento in molte posizioni garantendo sempre l’esatta corrispondenza dei dati, e permettendo una loro modifica semplificata. Oggi è una bella giornata. Come dice &NP;: “divertitevi!”

#PCDATA  Rappresenta il contenuto vero e proprio del documento.  Esso corrisponde alle parole, gli spazi e la punteggiatura che costituiscono il testo.  Viene anche detto #PCDATA (Parsed Character DATA) perché i linguaggi di markup definiscono character data (CDATA) il contenuto testuale vero e proprio, e quello degli elementi è soggetto ad azione di parsing (perlopiù per identificare e sostituire le entità).

Regole nella creazione di un file XML  Un documento XML è well formed (ben formato) tutti i tag sono chiusi nell'ordine corretto esiste un solo elemento radice i valori degli attributi sono scritti fra virgolette gli elementi non hanno due attributi con lo stesso nome i nomi degli elementi e degli attributi non contengono caratteri speciali (&,...) i nomi degli elementi non contengono spazi  Un documento XML è valido se è ben formato e rispetta le regole del DTD associato. Cosa e' un DTD? Lo vediamo adesso...

Struttura di un XML  Radice (Documento) Elemento principale  Nodi intermedi (figli): elementi con sottoalberi di elementi, attributi e valori  Nodi foglia: attributi e valori attributi: coppie (nome, valore) valori: stringhe, numeri, date, ecc.  Albero XML (radice, foglie,...) ribaltato

Una rubrica in XML Giulio Cesare Bruto 10 Roma Giovanni Pompeo Catilina 12 Milano

La rubrica, vista come albero

La struttura ad albero di XML 1. Hanno necessariamente un elemento radice (root) che dev’essere unico

Importanza DTD  Quali tag posso usare? Quante volte? Un tag puo' contenere un altro tag? Quale?  Queste cose si specificano nel DTD (Document Type Definition).

Importanza DTD  La DTD (Document Type Definition) è una procedura che consente di dichiarare in maniera univoca e formale la struttura di markup mediante la definizione dello schema dei tags. Ovvero Quali tag posso usare? Quante volte? Un tag puo' contenere un altro tag? Quale?  Questo tipo di procedura consente una rapida interpretazione del materiale pubblicato sia dalla macchina che dall’utente umano.  Un file XML e' valido se rispetta la DTD  CHI scrive il DTD? Tu! (ovvero chi definisce cosa e' valido e cosa no per un certo tipo di documento XML!)

L'HTML e' XML?  Dipende, l'xHTML si'.  Chi definisce il DTD per l'xHTML?

Chi definisce il DTD dell'xHTML?  Per il linguaggio HTML, il W3C definisce il DTD, ad esempio dice che L'element root e' (in realta' e' il tag) Che deve contenere uno e un solo Che dentro a ci possono essere un numero qualunque di (da 0 a n)....

L'xHTML visto come albero

La rubrica, vista come albero

Chi definisce il DTD per la rubrica?  TU.  Come?

La dichiarazione DOCTYPE  La dichiarazione DOCTYPE è obbligatoria (se il documento deve essere validato)  Vari modi, noi useremo il seguente  RootElement (obbligatorio) è il nome dell’elemento radice del documento.  InternalDTDSubset (opzionale) è un DTD specificato inline al documento. <!DOCTYPE RUBRICA [.... qui i vari elementi che possono essere contenuti nel RootElement.... ]

Esempio di un DTD <!DOCTYPE RUBRICA [.... qui i vari elementi che possono essere contenuti nel RootElement.... ]>

Esempio di un DTD <!DOCTYPE RUBRICA [.... qui i vari elementi che possono essere contenuti nel RootElement.... ]> Come li specifico? Lo vediamo la prossima volta.

Esempio di un DTD per la rubrica LO VEDIAMO LA PROSSIMA VOLTA ]>

Validazione di un file XML  Un documento XML è ben formato se rispetta le regole generali di sintassi viste nella parte precedente.  Un documento XML è valido se è ben formato e rispetta le regole sintattiche e semantiche contenute del DTD associato. Un documento senza DTD non è mai valido.  Esistono parser validanti e non validanti.  Per validare l'HTML  Per validare l'XML Lo apriamo col browser che ci dice se e' valido

Ma qualcuno lo usa questo XML?  RSS!   Repubblica.it offre i suoi contenuti con il sistema RSS (Really Simple Syndication)  E i blog? Anche.  Ci sono altri usi reali dell'XML? Si', ad esempio per scambiarsi dati tra applicazioni

Esempio di file XML (completo di DTD) ]>

Esempio di file XML (completo di DTD) Giulio Cesare Bruto 10 Roma Giovanni Pompeo Catilina 12 Milano