Prefazione. Piersalvo Ortu 1

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Prefazione. Piersalvo Ortu 1"

Transcript

1 Prefazione Questa tesi ha come obiettivo principale descrivere in che modo i documenti XML possano essere utilizzati per essere visualizzati su diversi apparati, dai browser Web ai dispositivi cellulari, che verranno presi in considerazione nei capitoli 6 e 7. Il primo capitolo tratta il linguaggio XML in generale, e può essere considerato come diviso in due parti. Nella prima parte viene fatta una breve introduzione al linguaggio XML cercando di capire i motivi che hanno portato alla creazione di questo nuovo linguaggio. Vengono esaminate le caratteristiche principali e le differenze tra il linguaggio XML e il suo progenitore SGML, e inoltre viene fatto anche un confronto con il ben noto linguaggio Web, HTML, evidenziando i pregi e i difetti di quest ultimo e le differenze con XML. Nella seconda parte del primo capitolo si tratta il linguaggio XML vero e proprio, facendo riferimento alle caratteristiche proprie del linguaggio e agli elementi della sintassi di cui esso è costituito (ad esempio: tag, namespace, elementi e attributi ecc). Nel secondo capitolo vengono trattate le DTD, cercando di evidenziare le caratteristiche principali e i vari tipi di DTD, attraverso degli esempi. Nel terzo capitolo vengono esaminate le caratteristiche salienti degli Schemi attraverso sempre degli esempi, sia per quanto riguarda la loro struttura e la sintassi. Viene fatto inoltre un confronto tra questi ultimi e le DTD, evidenziandone le principali differenze. Nel quarto capitolo vengono presi in considerazione i fogli di stile, spiegando che cosa sono e la loro principale funzione. Vengono esaminati i due tipi di fogli di stile più usati, i CSS e quelli XSL, spiegandone le differenze principali. Infine vengono trattate le trasformazioni XSLT, che consentono di convertire un documento XML in un altro tipo di documento, ad esempio in HTML. All interno della parte che tratta le trasformazioni, viene preso in esame il linguaggio XPath a cui il linguaggio XSL si appoggia, e grazie al quale è possibile, all interno del foglio di stile, recuperare le parti del documento XML che interessano. Alla fine del capitolo, viene presentata una tabella che elenca gli elementi della sintassi più utilizzati nel linguaggio XSL, viene spiegato come collegare un foglio di stile ad un documento XML e infine vengono trattati i modelli utilizzati nei fogli di stile definiti dagli elementi xsl:template. Piersalvo Ortu 1

2 PREFAZIONE Nel quinto capitolo viene fatta una panoramica dei software attualmente utilizzati in ambito XML, per quanto riguarda la progettazione e la convalida dei documenti. Per primi vengono trattati i tool di editing utilizzati per creare i vari tipi di documenti, da quelli XML, alle DTD, agli Schemi e ai fogli di stile. In particolare viene esaminato il tool di editing XML Spy, che verrà utilizzato per costruire gli esempi presentati nei vari capitoli. Successivamente si parla di analizzatori convalidanti e non convalidanti, esaminando le differenze di entrambi e le funzioni che essi svolgono. Vengono poi trattati gli elaboratori XSLT, con particolare riguardo all elaboratore MSXML della Microsoft e alla sua utility MSXSL, che consente di effettuare le trasformazioni da XML ad HTML, tramite linea di comando. Gli ultimi due capitoli, il sesto e il settimo, sono i più interessanti. Nel sesto vengono messi in pratica i concetti enunciati nei capitoli precedenti, con lo sviluppo di un applicazione XML reale, che consiste nella progettazione di un libretto universitario virtuale, al quale ciascun studente può accedervi per controllare i propri esami. Il progetto inizia con la creazione del documento XML, che viene effettuata in modo automatico a partire dai dati degli studenti contenuti in un database. Vengono presentate anche le DTD e gli Schemi corrispondenti, così da mostrarne le differenze e infine arriva la parte più interessante, che riguarda l applicazione dei fogli di stile ai documenti XML e le trasformazioni XSLT Lato-Server, che consentono di trasformare il documento XML in HTML, in maniera tale da poter visualizzare le informazioni su Internet Explorer 5-6 o Netscape 7. Nel settimo capitolo, invece, viene progettata ed analizzata la stessa applicazione, per poterla rendere disponibile dai dispositivi cellulari che utilizzano la tecnologia WAP (Wireless Application Protocol). Viene innanzitutto fatta una breve panoramica sul linguaggio WML (Wireless Markup Language) e su come funziona il protocollo WAP, spiegando le differenze di comunicazione client-server in un applicazione Web e in un applicazione Wireless. Vengono poi elencati alcuni dei tool più utilizzati per le applicazioni Wireless e infine arriva la parte più importante nella quale è descritta l applicazione del libretto WAP, e nella quale vengono trattate anche le trasformazioni da XML a WML. Piersalvo Ortu 2

3 CAPITOLO 1 IL LINGUAGGIO XML 1.1CENNI SU XML XML è oggi considerato come il linguaggio del futuro nelle applicazioni web e non solo, in quanto può essere utilizzato per definire documenti di qualsiasi tipo e formato. Il linguaggio per eccellenza, che è considerato la base dell World Wide Web è HTML (Hypertext Markup Language), il quale consente di creare pagine di informazione formattate in grado di raggiungere tramite internet un numero di utenti in continuo aumento. Lo scopo principale per cui è stato realizzato HTML è la visualizzazione contenuti testuali e grafici e per questo motivo esso prende in considerazione soprattutto il modo in cui le informazioni vengono presentate agli utenti sulla rete e non il tipo e la struttura di tali informazioni. Proprio per questo motivo è stato sviluppato, da parte di un gruppo di lavoro coordinato dal W3C, (Web Consortium), il linguaggio XML, (Extensible Markup Language). XML è un linguaggio di markup aperto e basato su testo, che fornisce informazioni di tipo strutturale (o sintattico) e semantico relative ai dati veri e propri. È un metalinguaggio, che permette a gruppi di persone o ad organizzazioni di creare dei linguaggi personalizzati di markup specifici per i tipi di informazione che devono trattare. Per molte applicazioni infatti gli esperti hanno già creato linguaggi di markup specifici come ad esempio il Channel Definition Format, (CDF), il Mathematical Markup Language, (MML), utilizzato per definire espressioni matematiche, il Chemical Markup Language, (CML), usato per definire formule chimiche, e molti altri. XML nasce dall esigenza di portare nel Web lo Standard Generalized Markup Language (SGML), il linguaggio internazionale per la descrizione della struttura e del contenuto dei documenti elettronici di qualsiasi tipo, non contiene però tutte le funzioni complesse che SGML possiede. Per questo XML si caratterizza per la semplicità con cui è possibile scrivere documenti. L utilizzo di XML permette di superare il grosso limite attuale del Web che risiede nelle limitazioni del linguaggio HTML, cioè la dipendenza da un tipo di documento HTML, singolo e non estensibile, quindi dipendente dal tipo di visualizzatore utilizzato. Infatti se ci poniamo il problema di visualizzare i vari tipi di documenti esistenti per il Web, ci accorgiamo che ne esistono numerosissimi dai formati più svariati, ad esempio i documenti Word o quelli HTML, dei quali inoltre ne esistono varie versioni. Piersalvo Ortu 3

4 CAPITOLO 1- IL LINGUAGGIO XML Pensare di tradurre tutti questi possibili formati che chiamiamo (di origine) in tutti i possibili formati di destinazione è impensabile. La strada da percorrere è di avere un unico formato di origine, al quale applicare dei metodi standard semplici ed efficaci per la traduzione nei corrispondenti formati di destinazione. Come primo approccio si potrebbe pensare di usare come formato standard HTML, ma non va bene, in quanto se pur ricco di funzioni non ha attualmente la caratteristica di un formato universale; per esempio non è in grado di esprimere la complessità dei documenti Word e non prevede molte possibilità, tra le quali per esempio la scrittura di spartiti musicali o le formule chimiche. È inoltre uno standard di tipo proprietario infatti la sua sintassi contiene tag predefiniti e non è possibile quindi descrivere tag personalizzati. Come secondo approccio si può pensare di usare come formato per esprimere i nostri documenti origine SGML, che in realtà è nato come formato standard e neutrale per esprimere vari tipi di documento, ma neppure quest ultimo ha avuto grande successo. Nei prossimi due paragrafi verranno spiegate le ragioni per le quali sia HTML che SGML non possono essere utilizzati come linguaggi universali di markup, i loro limiti, i pregi e i difetti e le relazioni con XML. 1.2 RELAZIONE TRA SGML E XML SGML è quindi un meta-formato, ovvero un formato utilizzato per definire altri linguaggi, con il quale si può anche descrivere un formato per le formule chimiche, per le partiture musicali o per ipertesti. Il difetto di questo linguaggio, per il quale non ha suscitato particolare interesse tra gli sviluppatori Web è di essere un linguaggio abbastanza complesso e di difficile utilizzo. Come anticipato precedentemente XML contiene una piccola parte delle funzioni complesse di SGML, le caratteristiche opzionali che appesantivano il linguaggio sono state eliminate. Caratteristica ereditata da SGML è la capacità di definire con estrema facilità nuovi marcatori, detti anche (tag), permettendo così di creare linguaggi di markup personalizzati e quindi non proprietari. Tra i pregi di SGML vi è la flessibilità, in quanto è un linguaggio che può essere applicato ad ogni tipo di dato, è espandibile e fortemente strutturato come il linguaggio XML, caratteristica ereditata proprio da SGML. Inoltre è non-proprietario, in quanto chiunque può crearsi un proprio linguaggio di markup, al contrario di HTML, ed è indipendente dalla piattaforma. Piersalvo Ortu 4

5 CAPITOLO 1- IL LINGUAGGIO XML Tra i limiti di SGML, abbiamo una struttura molto pesante, comprensiva di un gran numero di opzioni che lo rendono poco maneggevole da un eventuale software di manipolazione dei dati, quindi può rappresentare un grosso scoglio per i programmatori che lavorano sul Web. Comunque sia, il problema più importante è che SGML richiede una DTD, (Document Type Definition), del quale si tratterà più avanti, per l'identificazione di tutte le relazioni tra le entità che compongono il documento SGML, e di uno Stylesheet cioè un foglio di stile che stabilisce il modo di rappresentare e/o visualizzare i dati e le strutture definite nella DTD. Inoltre ogni documento SGML deve necessariamente essere validato e quindi oltre ad un controllo sintattico viene controllata anche la semantica delle strutture di dati presenti nel documento, (ad esempio non potrà succedere che un titolo di capitolo venga dopo il relativo sottotitolo). Si capisce quindi che in mancanza di uno di questi elementi, o in caso di corruzione dei dati, le istanze SGML saranno visualizzate come codice incomprensibile per l'utente finale. Il risultato di queste considerazioni è che per le applicazioni sul World Wide Web (WWW) le istanze SGML non sono praticamente portabili data la loro intrinseca pesantezza e non robustezza. 1.3 RELAZIONE TRA HTML E XML XML è spesso considerato una sostituzione di HTML. Sebbene questo possa essere in parte vero, in realtà i due linguaggi sono complementari e operano su livelli differenti: infatti nei casi in cui XML viene utilizzato per strutturare e descrivere i dati sul Web, HTML è usato per formattare i dati. La semplicità è una delle caratteristiche salienti di HTML. I documenti HTML non devono essere convalidati ma è sufficiente che siano ben formati, ovvero sintatticamente corretti. Il modo in cui viene visualizzato il documento dipende dallo Style Sheet del browser stesso. I limiti di HTML discendono proprio dai suoi pregi. Dal momento che non è richiesta una struttura semanticamente corretta delle informazioni, HTML diventa molto povero per le applicazioni di elaborazione dei dati, quindi il problema viene demandato agli applicativi scritti in Java, Java script ecc. La sua struttura non è estensibile e questo lo rende praticamente inutilizzabile per le industrie che si sono viste costrette a crearsi standard differenti per ogni diversa applicazione, ed ancora una volta è compito del software elaborare i dati per il trasferimento delle informazioni sul Web. Un altro problema da non sottovalutare si può verificare dalla parte del client, qualora non abbia un dispositivo video del tipo previsto dal server, (per esempio dispositivi per il braille o monitor non grafici). Inoltre HTML non offre i meccanismi per mantenere il controllo della formattazione. Piersalvo Ortu 5

6 CAPITOLO 1- IL LINGUAGGIO XML Infatti non si possono specificare le dimensioni video di un documento o controllare le dimensioni della finestra di un browser. Per superare questo problema sono stati inseriti nuovi tag e i fogli di stile; i nuovi tag forniscono istruzioni di formattazione come ad esempio il tag <FONT> per specificare il tipo di carattere; inoltre questi tag sono di formattazione e non di descrizione (come dovrebbero essere, essendo HTML un linguaggio di descrizione del documento). Tutto questo fa sì che uno sviluppatore di pagine Web non sappia mai con certezza cosa un client visualizzerà sullo schermo del computer. Il W3C (ente guida per lo sviluppo del Web) si rese conto che la creazione di un numero di tag diversi per ogni tipo di formattazione era irrealistica, per cui vennero introdotti i CSS (Cascading Style Sheet), che permettono attraverso delle regole di stile di definire come determinati elementi di un documento devono apparire. Anche i CSS però contengono una serie di proprietà predefinite. Il risultato di tutto questo è che allo stato attuale molte pagine Web, che contengono tag predefiniti e specifici per determinati browser, sono spesso illeggibili. Gradualmente HTML sta passando da un linguaggio di descrizione ad un linguaggio di presentazione. A differenza di quest ultimo, XML fornisce già una soluzione in quanto fornisce un layout a chiunque e indipendentemente dal browser che si utilizza, attraverso l uso di XSL, (Extensible Style Language), che determina il modo in cui il documento dovrà essere presentato all utente. Quindi possiamo dire che XML si differenzia da HTML per tre maggiori aspetti: Possono essere definiti nuovi tag e attributi. La struttura di un documento può essere vista in modo gerarchico annidando i tag a qualsiasi livello di complessità. Ogni documento XML può contenere una opzionale descrizione della sua grammatica, in modo che possa essere utilizzata da applicazioni che richiedono una validazione della struttura del documento. 1.4 OBIETTIVI PROGETTUALI DI XML La progettazione di XML venne eseguita esaminando i punti di forza e di debolezza di SGML. Da ciò ne derivano le caratteristiche intrinseche di XML: 1. XML deve essere utilizzabile in modo semplice su Internet: in primo luogo, XML deve operare in maniera efficiente su Internet e soddisfare le esigenze delle applicazioni eseguite in un ambiente di rete distribuito. Piersalvo Ortu 6

7 CAPITOLO 1- IL LINGUAGGIO XML 2. XML deve supportare un gran numero di applicazioni: deve essere possibile utilizzare XML con un ampia gamma di applicazioni, tra cui strumenti di creazione, motori per la visualizzazione di contenuti, strumenti di traduzione e applicazioni di database. 3. XML deve essere compatibile con SGML: questo obiettivo è stato definito sulla base del presupposto che un documento XML valido debba anche essere un documento SGML valido, in modo tale che gli strumenti SGML esistenti possano essere utilizzati con XML e siano in grado di analizzare il codice XML. 4. Deve essere facile lo sviluppo di programmi che elaborino documenti XML: l adozione del linguaggio dipende dalla disponibilità di strumenti e la proliferazione di questi è la dimostrazione che questo obiettivo è stato raggiunto. 5. Il numero di caratteristiche opzionali deve essere mantenuto al minimo possibile: al contrario di SGML, XML elimina le opzioni, in tal modo qualsiasi elaboratore potrà pertanto analizzare qualunque documento XML, indipendentemente dai dati e dalla struttura contenuti nel documento. 6. I documenti XML dovrebbero essere leggibili da un utente e ragionevolmente chiari: poiché utilizza il testo normale per descrivere i dati e le relazioni tra i dati, XML è più semplice da utilizzare e da leggere del formato binario che esegue la stessa operazione; quindi è necessario che XML sia facilmente leggibile da parte sia degli utenti che dei computer. 7. La progettazione di XML dovrebbe essere rapida: XML è stato sviluppato per soddisfare l esigenza di un linguaggio estensibile per il Web. Questo obiettivo è stato definito dopo aver considerato l eventualità che se XML non fosse stato reso disponibile rapidamente come metodo per estendere HTML, altre organizzazioni avrebbero potuto provvedere a fornire una soluzione proprietaria, binaria o entrambe. 8. La progettazione di XML deve essere formale e concisa: questo obiettivo deriva dall esigenza di rendere il linguaggio il più possibile conciso, formalizzando la formulazione della specifica. 9. I documenti XML devono essere facili da creare: i documenti XML possono essere creati facendo ricorso a strumenti di semplice utilizzo, quali editor di testo normale. 10. Non è di nessuna importanza l economicità nel markup XML: in SGML e in HTML la presenza di un tag di apertura è sufficiente per segnalare che l elemento precedente deve essere chiuso. Benché così sia possibile ridurre il lavoro degli autori, questa soluzione potrebbe essere fonte di confusione per i lettori, in XML la chiarezza ha in ogni caso la precedenza sulla concisione. Piersalvo Ortu 7

8 CAPITOLO 1- IL LINGUAGGIO XML 1.5 PROPRIETÀ DI XML XML è importante in due classi di applicazioni Web: la creazione di documenti e lo scambio dei dati; inoltre i server Web attualmente utilizzati richiedono, per essere in grado di servire documenti XML, minime modifiche di configurazione. La sintassi di XML è molto simile a quella di HTML, ma molto più rigida; anche se questo fatto può sembrare a primo avviso un aspetto negativo, (soprattutto per chi deve scrivere documenti XML), è stata volutamente introdotta dal gruppo di lavoro del W3C, per facilitare lo sviluppo di applicazioni basate su XML e aumentarne le prestazioni. Inoltre una sintassi chiara e pulita aumenta la leggibilità del documento, che unita alla possibilità di creare un proprio set di markup, contribuirà a rendere un file XML più leggibile quanto un file di solo testo. XML non è limitato a un insieme fisso di elementi, ma permette di definire e utilizzare elementi e attributi personalizzati; per far questo viene fornita una sintassi, con cui è possibile specificare elementi e attributi che possono essere utilizzati all interno dei documenti. In altre parole è possibile definire un modello, chiamato Document Type Definition (DTD), che descrive la struttura e il contenuto di una classe di documenti. Lo stesso XML ha una DTD, in cui vengono specificate le regole della specifica stessa del linguaggio, come mostra la figura 1.1. Figura 1.1 Un documento XML può fare riferimento alla DTD di XML o a una DTD personale XML permette di creare dei tag personalizzati; inoltre uno stesso documento XML può essere utilizzato per scopi diversi da applicazioni diverse. Come fa un applicazione a riconoscere il markup designato per lei e ad evitare di confonderlo con il markup designato per altre applicazioni? Ad esempio una applicazione potrebbe utilizzare un elemento chiamato "address" per identificare il domicilio di una persona; un altra applicazione invece potrebbe utilizzare lo stesso elemento per identificare l indirizzo elettronico di una persona. Per risolvere questo tipo di problemi, il gruppo di lavoro del W3C ha pensato ad un metodo per individuare le convenzioni che governano l utilizzo di un particolare set di elementi; l idea è quella di utilizzare un namespace, (vb capitolo 1.9), cioè un documento in cui viene definito l utilizzo di un particolare set di elementi. Un documento XML può far riferimento ad un namespace attraverso un indirizzo Web(o URL). Il documento di riferimento è il WD- Piersalvo Ortu 8

9 CAPITOLO 1- IL LINGUAGGIO XML xml-names XML può essere inoltre utilizzato come piattaforma per lo scambio di dati tra le applicazioni, come mostrato in figura; ciò è possibile perché è orientato alla descrizione dei dati. Figura 1.2 Scambio di dati tra applicazioni Altro aspetto importante di XML è che, a differenza delle pagine HTML, che hanno come unico scopo la visualizzazione su un proprio browser e proprio per questo è molto difficile l elaborazione successiva delle informazioni, i documenti basati su XML non fanno supposizioni su come verranno visualizzati dai client. Infatti XML è un linguaggio orientato alla struttura e al contenuto di un documento e non al modo in cui quest ultimo deve essere visualizzato. Questo dipende dal linguaggio XSL, (Extensible StyleSheet Language), che definisce il modo e l aspetto con cui verranno presentati i documenti XML. XSL è un sottoinsieme del Document Style Semantic Specification Language(o DSSSL), il linguaggio di stile utilizzato in ambiente SGML; gode delle proprietà di essere estensibile e allo stesso tempo di facile utilizzo. Con XSL è possibile creare fogli di stile che permettono la visualizzazione di un documento XML, in un qualsiasi formato (Audio,Video, Braille, etc), come mostra la figura 1.3. Figura 1.3 Applicazione di fogli di stile ai documenti XML 1.6 STRUTTURA E SINTASSI DI UN DOCUMENTO XML Una delle caratteristiche principali di XML è la possibilità di fornire una struttura ad un documento. Ogni documento comprende sia una struttura logica, che una fisica. La struttura logica è simile a un modello che indica quali elementi includere nel documento e in quale ordine, mentre la struttura fisica contiene i dati effettivi utilizzati in un documento, quali il testo memorizzato nella memoria del computer, un immagine, un video e così via. Piersalvo Ortu 9

10 CAPITOLO 1- IL LINGUAGGIO XML Parte Fisica Parte logica : DOCUMENTO PROLOGO Logica : elemento Document Parte fisica 1 Logica : elemento1 Parte fisica 2 Logica : elemento2 Figura 1.4 Struttura di un documento XML STRUTTURA LOGICA La struttura logica fa riferimento all organizzazione delle parti di un documento; in altre parole indica il modo in cui viene creato un documento in contrapposizione al contenuto del documento stesso. Un documento XML è costituito da dichiarazioni, elementi, istruzioni di elaborazione e commenti. Alcune componenti sono essenziali altre sono opzionali IL PROLOGO Il primo elemento strutturale di un documento XML è un prologo iniziale, costituito da due componenti principali anch esse opzionali: la dichiarazione XML e la dichiarazione del tipo di documento DICHIARAZIONE XML La dichiarazione XML identifica la versione delle specifiche XML a cui è conforme il documento. Sebbene la dichiarazione XML sia un elemento opzionale, deve sempre essere inserita in documento XML. Il documento inizia con una dichiarazione XML di base: <?xml version="1.0"?> L indicazione 1.0 specifica la versione dello standard XML alla quale è conforme il documento XML stesso. Una dichiarazione XML può inoltre contenere una dichiarazione di codifica (encoding) e una dichiarazione di documento autonomo (standalone), nel seguente. modo: <?xml version="1.0" encoding="utf-8" standalone="yes or No"?>. La dichiarazione di codifica identifica lo schema di codifica dei caratteri, ad esempio UTF-8 o EUC-JP. Schemi di codifica diversi assegnano formati di caratteri o linguaggi diversi. Piersalvo Ortu 10

11 CAPITOLO 1- IL LINGUAGGIO XML La dichiarazione di documento autonomo, specifica se il documento XML contiene al suo interno una DTD (standalone="yes"), o se la DTD è un documento esterno (standalone="no"), al quale ci si riferisce attraverso la dichiarazione del tipo di documento che analizzeremo di seguito DICHIARAZIONE DEL TIPO DI DOCUMENTO La dichiarazione del tipo di documento è costituita da codice di markup che indica le regole grammaticali o la definizione del tipo di documento DTD per una particolare classe di documenti. Questa dichiarazione può anche essere diretta a un file esterno che contiene tutta o parte della DTD e deve essere visualizzata dopo la dichiarazione XML e prima dell elemento Document. Le seguenti stringhe di codice aggiungono una dichiarazione del tipo di documento alle righe di codice precedenti: <?xml version="1.0"?> <!DOCTYPE Tipo_di_documento SYSTEM "nome_file_dtd.dtd"> Vediamo che oltre alla parola chiave!doctype, bisogna specificare il tipo di documento, che non è altro che un identificatore. La parola chiave SYSTEM permette al sistema di andare a recuperare il file DTD esterno il cui nome è stato specificato tra i doppi apici L ELEMENTO DOCUMENT L elemento Document (detto anche tag radice), contiene tutti i dati di un documento XML, inclusi tutti i sottoelementi annidati e le entità esterne. È paragonabile al tag <html> del linguaggio HTML. Può essere considerato simile anche all unità C: del computer. Tutti i dati del computer sono memorizzati in questa singola unità, in cui le cartelle e le sottocartelle, contengono le singole parti di dati in una struttura logica e di semplice gestione. Nel seguente esempio scriviamo delle stringhe di codice che aggiungono all esempio precedente un elemento Document, in questo caso l elemento Student, e il nome del file DTD nella dichiarazione del tipo di documento (ad esempio studente.dtd) : <?xml version="1.0"?> <!DOCTYPE Student SYSTEM "studente.dtd"> <Student> <!-- elemento document o elemento radice(root)--> <name>marco</name> <surname>rossi</surname> Piersalvo Ortu 11

12 CAPITOLO 1- IL LINGUAGGIO XML </Student> <!--chiusura dell elemento radice --> Caratteristica molto importante in un documento XML è l annidamento, cioè il processo che consente di incorporare un oggetto o un costrutto all interno di un altro come nell esempio precedente. Un documento XML può ad esempio contenere elementi annidati e altri documenti. Ogni elemento secondario, cioè un elemento diverso dall elemento Document risiede interamente all interno del relativo elemento principale, così : <DOCUMENT> <PARENT1> <CHILD1></CHILD1> <CHILD2></CHILD2> </PARENT1> </DOCUMENT> XML segue regole di struttura rigide: ogni volta che un tag viene aperto (es: <PARENT1> ) deve venir chiuso (</PARENT1>), dopo che tutti i tag aperti successivamente siano stati a loro volta chiusi. Inoltre come abbiamo detto più volte, XML non ha marcatori predefiniti, perciò non è possibile distinguere a priori tra tag singoli e tag accoppiati. Per esempio in HTML abbiamo marcatori come <hl> che sono sempre accoppiati, ma ne esistono altri, come <img> che non hanno bisogno di essere accoppiati. Per questo motivo, in XML tutti i tag devono essere accoppiati. Il linguaggio XML supporta anche un collegamento per elementi vuoti, il tag di elemento vuoto. Questo tag unisce i tag di apertura e di chiusura per un elemento senza alcun contenuto. Viene utilizzato un formato speciale: <NOMETAG/>. In questo caso la barra segue il nome del tag, il che non è possibile nel linguaggio HTML STRUTTURA FISICA DEL LINGUAGGIO XML La struttura fisica di un documento XML è costituita da tutto il contenuto del documento stesso. Le unità di memorizzazione definite entità, possono essere parte integrante del documento o possono essere esterne. Ogni entità è identificata da un nome univoco e da un contenuto specifico che può essere costituito da un singolo carattere all interno del documento o da un file esterno di grandi dimensioni. In termini di struttura logica di un documento XML, le entità vengono dichiarate nel prologo e viene loro fatto riferimento nell elemento Document. Dopo aver dichiarato la DTD, l entità può essere utilizzata in un punto qualsiasi del documento. Un riferimento di entità indica all elaboratore di recuperare il contenuto di un entità, come stabilito dalla dichiarazione di entità, e di utilizzarla all interno del documento. Piersalvo Ortu 12

13 CAPITOLO 1- IL LINGUAGGIO XML 1.7 SINTASSI XML Un documento XML è costituito, oltre che dagli elementi visti precedentemente, da elementi, attributi, entità e commenti GLI ELEMENTI Gli elementi sono indicati nel documento XML come i tag di HTML, tra parentesi angolari < > e a differenza di HTML, possono essere personalizzati, attribuendogli nomi qualsiasi. Ogni tag aperto deve essere chiuso con le parentesi angolari e la barra ( / ), seguita dal nome dell elemento. La sintassi per definire un elemento è la seguente: <nome_elemento> testo(opzionale) </nome_elemento> Per esempio definiamo un elemento di tipo studente: <studente> dati_studente </studente> XML è molto più rigoroso di HTML, infatti mentre in quest ultimo è possibile omettere i tag di chiusura per alcuni elementi (per esempio <br>, <hr>, <p>), in XML ciò provocherebbe un errore da parte dell analizzatore del documento. Come si può notare dall esempio precedente all interno dei due tag è possibile inserire del testo, il cui tipo dipende dalla definizione del tipo di contenuto. Quest ultimo può essere di due tipi: PCDATA, Parsed Character Data, ossia dati carattere che possono essere analizzati dall analizzatore sintattico, e CDATA, Character Data, cioè dati considerati come testo. La definizione del tipo di contenuto si trova nella dichiarazione del tipo ELEMENT della DTD. Nel caso in cui tra i due tag non vi sia alcun testo, (ecco perché la scritta testo(opzionale) tra i due tag), l elemento viene detto vuoto o empty. Oltre al normale testo gli elementi possono contenere riferimenti a dati binari o a character data, (cdata). I dati binari assumono la forma di file esterni, quali immagini e altre applicazioni. Di contro i file di testo possono contenere character data, che possono essere costituiti da riferimenti ad entità esterne o caratteri di testo standard. Le sezioni di testo identificate come CDATA sono elaborate dall analizzatore XML come informazioni di caratteri di semplice testo, e non come markup. Ciò consente di visualizzare del testo di markup di esempio all interno del testo visibile del documento. Una sezione CDATA viene identificata con i tag <![CDATA[ e ]]>. Tali elementi di markup devono essere inseriti prima e dopo i character data visualizzati, in modo che tutti i caratteri vengano ignorati dall analizzatore. Il segmento di codice seguente è un esempio di sezione CDATA: <![CDATA[ Piersalvo Ortu 13

14 CAPITOLO 1- IL LINGUAGGIO XML <?xml version="1.0"?> <progetto> </progetto> ]]> Nella creazione degli elementi inoltre, bisogna tenere presenti le varie regole di assegnazione dei nomi agli elementi. Il nome di un elemento può essere costituito da qualsiasi combinazione di lettere, numeri, punti, trattini e caratteri di sottolineatura. Essi possono iniziare con un qualsiasi di questi elementi, ma non è possibile inserire spazi nel nome dell elemento, in quanto lo spazio viene utilizzato come separatore per identificare la transizione da un elemento ad un attributo. Un esempio di elementi sintatticamente corretti è il seguente: <elemento1> <Elemento1> <_elemento> invece il seguente elemento è sintatticamente errato: <elemento 1>, perché vi è uno spazio tra l elemento e il numero GLI ATTRIBUTI Gli attributi consentono di associare valori a un elemento, senza che siano considerati parte del contenuto dell elemento stesso. Ad esempio osserviamo un comune elemento HTML e l utilizzo di un attributo: <A HREF="http://www.microsoft.com">Microsoft Home Page</A> In questo caso l elemento Anchor indicato dal tag <A> contiene un attributo denominato HREF. Il valore dell attributo è Mentre il valore non viene mai visualizzato dall utente, l attributo contiene importanti informazioni relative all elemento e fornisce la destinazione dell ancora. Questo formato del nome e del valore mostra il modo in cui sono utilizzati gli attributi nel linguaggio XML. La sintassi per definire un attributo è la seguente: <nome_elemento nome_attributo="valore"> <! > </nome_elemento> Riprendendo l esempio dello studente aggiungiamo l attributo MATRICOLA all elemento student: <?xml version="1.0"?> Piersalvo Ortu 14

15 CAPITOLO 1- IL LINGUAGGIO XML <!DOCTYPE Student SYSTEM "studente.dtd"> <Student Matricola="50123"> <!--elemento document o elemento radice(root)--> <name>marco</name> <surname>rossi</surname> <indirizzo> via dei Mille </indirizzo> </Student> <!--chiusura dell elemento radice--> Un elemento può avere anche più di un attributo. Questi devono essere definiti tutti all interno del tag dell elemento a cui si riferiscono uno dopo l altro, come nel prossimo esempio: <?xml version="1.0"?> <!DOCTYPE Student SYSTEM "studente.dtd"> <Student Matricola="50123" Corso="ing-inf"> <!-- elemento document o elemento radice(root)--> <name>marco</name> <surname>rossi</surname> <indirizzo>via dei Mille</indirizzo> </Student> <!--chiusura dell elemento radice--> Nell assegnazione dei nomi agli attributi bisogna tener conto di alcune restrizioni, affinché l impiego degli attributi sia coerente con le caratteristiche di un documento formalmente corretto. Gli attributi che contengono errori e che non rispettano tali regole provocano un interruzione dell elaborazione del documento XML. Quindi per gli attributi occorre rispettare le seguenti regole: I nomi degli attributi possono contenere qualsiasi lettera o numero, il punto o il carattere di sottolineatura, (è possibile usare i due punti ma essi sono riservati ai namespace). I valori degli attributi devono essere racchiusi sempre tra le virgolette(" "), a differenza di quanto accade in HTML nel quale vengono omesse. Non sono ammessi più attributi con lo stesso nome in un unico elemento. Come si può notare le regole non sono moltissime. Un altro aspetto importante è che uno stesso attributo può essere utilizzato in un numero illimitato di elementi ad esempio: <studenti> <name1 matricola="20152"> </name1> <name2 matricola="20132"> </name2> </studenti> Piersalvo Ortu 15

16 CAPITOLO 1- IL LINGUAGGIO XML Affinché gli attributi possano essere definiti devono essere dichiarati nella DTD, tramite una dichiarazione di tipo <!ATTLIST di cui tratteremo nel capitolo 2 sulle DTD. La mancanza di tale dichiarazione comporta un errore da parte del processore XML LE ENTITÀ Come ho già accennato precedentemente nel paragrafo 1.6.6, la parte fisica di un documento XML è costituita da entità di memorizzazione definite entità, le quali possono essere interne o esterne. La sintassi per definire un riferimento di entità all interno del documento XML è la seguente : & nome_dell entità; Il contenuto di un entità viene aggiunto al documento ogni volta che viene fatto riferimento a quella particolare entità. Il riferimento ha la funzione di segnaposto e l elaboratore XML colloca il contenuto effettivo proprio nei punti di riferimento. Aggiungiamo ora al nostro esempio un altro elemento, che chiamiamo (cod_fisc), contenente un entità, (codice_fisc), che rappresenta il codice fiscale dello studente: <?xml version="1.0"?> <!DOCTYPE Student SYSTEM "studente.dtd"> <Student Matricola="50123" Corso="ing-inf"> <!--elemento document (o elemento radice( root )--> <!-- questo è un commento--> <name>marco</name> <surname>rossi</surname> <cod_fisc>&codice_fisc</cod_fisc> <!--&codice_fisc è un riferimento di entità--> </Student> <!--chiusura dell elemento radice--> Il motivo principale per cui si utilizzano le entità all interno di un documento XML, è l abbreviazione di sequenze lunghe di caratteri, grazie alla quale il codice del documento risulta più leggibile e compatto. Per questo uso occorre però utilizzare la DTD, nella quale vengono definite le sequenze di sostituzione per ogni entità richiamata all interno del documento XML, tramite una dichiarazione del tipo entità (!ENTITY), di cui tratteremo nel capitolo I COMMENTI I commenti rappresentano una delle parti generiche di un documento XML. Anche se i commenti non sono necessari, vengono ampiamente utilizzati per migliorare la leggibilità di Piersalvo Ortu 16

17 CAPITOLO 1- IL LINGUAGGIO XML un documento, anche da parte di chi non ha sviluppato direttamente il documento XML. È possibile aggiungere commenti per spiegare lo scopo di una determinata sezione del documento, per indicare il significato dei riferimenti e per altri obiettivi. Dato che i commenti sono a vantaggio esclusivo del lettore, qualsiasi elaboratore XML ne ignorerà la presenza. I commenti vengono visualizzati tra tag di commento, (<!-- -->), proprio come accade in HTML e possono includere qualsiasi combinazione di testo, markup e simboli, ad eccezione di combinazioni di simboli che costituiscono i tag di commento. Non è lecito inserire dei commenti prima della dichiarazione XML, che deve essere la prima istruzione di qualunque documento XML. Per esempio il seguente esempio è inaccettabile: <!--Questo è un commento--> <?xml version="1.0"?> inoltre i commenti non devono separare tra loro tag di elementi XML. Per esempio non è ammesso includere in un commento il tag di apertura di un elemento, senza includere anche l elemento finale come mostrato nel seguente esempio: <?xml version="1.0" standalone="yes"?> <!--commento <elemento> chiusura commento--> <!--errato--> </elemento> 1.8 DOCUMENTI XML VALIDI E WELL FORMED Il linguaggio XML possiede due caratteristiche fondamentali, la capacità di fornire una struttura ai documenti e di rendere i dati autodescrittivi. Queste caratteristiche non sarebbero di alcuna utilità se non si potessero far rispettare le regole strutturali e grammaticali. La definizione del tipo di documento, DTD, specificata nel prologo delinea tutte le regole relative a un documento DOCUMENTI VALIDI Un documento XML è considerato valido se segue tutte le regole, sia strutturali che grammaticali. Un documento valido è conforme quindi anche a tutti i limiti di validità relativi ad XML. L elaboratore dovrà comprendere i limiti di validità delle specifiche XML e verificare possibili violazioni all interno del documento. Se l elaboratore trova un errore, deve comunicarlo all applicazione XML. Dovrà inoltre leggere la DTD, convalidare il documento e riportare qualsiasi violazione all applicazione XML. Dato che questi controlli possono richiedere tempo e occupare larghezza di banda e poiché la convalida non sempre è Piersalvo Ortu 17

18 CAPITOLO 1- IL LINGUAGGIO XML necessaria, il linguaggio XML supporta la nozione di documento ben formato o Well Formed DOCUMENTI BEN-FORMATI, (WELL FORMED) Anche se ben formato significa che è necessario seguire alcune regole, non è richiesto la stessa rigidità dei limiti di validità. Il concetto di documento ben formato è relativamente nuovo in XML. Un documento XML ben formato è più facile da leggere per un programma ed è pronto per la distribuzione in rete. Più specificatamente, i documenti ben formati hanno queste caratteristiche: Tutti i tag di apertura e di chiusura corrispondono. I tag vuoti utilizzano una sintassi XML speciale. Tutti i valori degli attributi sono racchiusi tra virgolette. Tutte le entità sono dichiarate. Quindi, un documento XML valido rispetta i tag e le norme di annidamento impostate nella DTD del documento, mentre un documento XML ben formato viene strutturato in modo appropriato per l utilizzo da parte di un computer. 1.9 SPAZIO DEI NOMI XML (XML NAMESPACE) Come sappiamo XML è un linguaggio per definire linguaggi, cioè insiemi di marcatori personalizzati e le loro sintassi di utilizzo. Questa operazione avviene attraverso le DTD che definiscono gli insiemi di marcatori che saranno utilizzati nei documenti e le regole di annidamento di questi ultimi. I marcatori XML che saranno definiti nelle DTD adottate sui siti Web possono anche non essere inventati dai Webmaster, ma possono appartenere a repertori standard per i vari domini applicativi, (i cosiddetti XML namespace), garantendo l uniformità sintattica delle pagine Web. I Namespace permettono la creazione e l uso di marcatori ambigui, ovvero con lo stesso nome, ma in riferimento a significati e ambienti diversi, utilizzando costrutti con nomi non equivoci. Pensiamo per esempio a documenti di una rivista in cui la parola "titolo" a secondo del contesto può referenziare il titolo di una rivista, ma anche il ruolo di un giornalista all interno della struttura aziendale. I dati, ovvero il contenuto di un documento XML, vengono recuperati analizzando i singoli nodi all interno del documento, meccanismo consentito dal fatto che la struttura gerarchica dei documenti XML e le regole di validità e di ben formato che gestiscono la creazione dei documenti XML garantiscono che ogni nodo presente in un documento è unico. Questo Piersalvo Ortu 18

19 CAPITOLO 1- IL LINGUAGGIO XML garantisce a sua volta che esista un solo riferimento per ciascun nodo. L utilizzo di documenti XML in un ambiente di collaborazione potrebbe tuttavia dare luogo a potenziali problemi. Ad esempio, due o più documenti potrebbero contenere elementi con gli stessi nomi, ma con semantica differente. I documenti possono essere strutturati nello stesso modo. Qualora fosse necessario utilizzare entrambi i documenti in un unico ambiente, la sovrapposizione di elementi sarebbe causa di confusione. Consideriamo ad esempio: <student> <matricola>10188</matricola> </student> <teacher> <matricola>50188</matricola> </teacher> Gli elementi student e teacher contengono un elemento (matricola) ciascuno, ma tale matricola assume significato differente nei due casi. Se questi elementi provenienti da fonti diverse sono stati combinati in un solo documento, gli elementi matricola perdono il significato originale. Questo problema, tutt altro che trascurabile, potrebbe aggravarsi parallelamente alla diffusione dell utilizzo del linguaggio XML sul Web e nelle organizzazioni. La soluzione è offerta dagli spazi dei nomi, che consentono di creare nomi univoci indipendentemente dalla posizione in cui gli elementi vengono utilizzati, garantendo l uniformità sintattica delle pagine Web CREAZIONE DI NOMI UNIVOCI TRAMITE GLI SPAZI DEI NOMI XML La definizione spazio dei nomi è utilizzata dal programmatore per indicare un gruppo di nomi in cui non esistono duplicati. Poiché la natura del linguaggio XML consente di definire set di tag personalizzati, che potrebbero dar luogo a nomi duplicati nei documenti XML, nel linguaggio XML gli spazi dei nomi offrono caratteristiche aggiuntive. Costituiscono infatti una metodologia per la creazione di nomi universalmente univoci in un documento XML identificando i nomi degli elementi con una risorsa esterna univoca. Nel linguaggio XML uno spazio dei nomi è pertanto una raccolta di nomi identificata da un URI e può essere qualificato o non qualificato NOMI QUALIFICATI In XML un nome qualificato si compone in due parti: il nome dello spazio dei nomi e la parte locale. Il nome dello spazio dei nomi, ovvero un URI, definisce lo spazio dei nomi, Piersalvo Ortu 19

20 CAPITOLO 1- IL LINGUAGGIO XML mentre la parte locale corrisponde al nome dell elemento o dell attributo del documento locale. Poiché l URI è sempre univoco, il nome dello spazio dei nomi crea insieme alla parte locale un nome di elemento universalmente univoco. Per poter utilizzare uno spazio dei nomi in un documento XML, è necessario includere una dichiarazione dello spazio dei nomi nel prologo del documento. È inoltre possibile includere nella dichiarazione un prefisso dello spazio dei nomi. Utilizzando i due punti (:), il prefisso può essere aggiunto alla parte locale in modo da associarla al nome dello spazio dei nomi. Nel documento riportato nell esempio che segue, i due spazi dei nomi vengono dichiarati con prefissi, quindi utilizzati nel documento. <?xml version="1.0"?> <?xml:namespace ns="http://student/schema/ns" prefix="stu"?> <?xml:namespace ns="http://teachers/schema/ns" prefix="tea"?> <student> <stu:name>mark</stu:name> <stu:esame>math</stu:esame> <tea:name>frank</tea:name> </student> In questo esempio di codice, i prefissi vengono utilizzati per identificare elementi appartenenti allo spazio dei nomi selezionato. Si otterranno in questo modo nomi univoci, ma anche la conservazione del valore semantico dei nomi. Gli elementi stu:esame e tea:name contengono nomi completamente qualificati che risulteranno univoci indipendentemente dalla posizione in cui sono stati utilizzati. Il prefisso è parte del nome dell elemento e deve essere sempre incluso in modo tale da indicare che l elemento appartiene allo spazio dei nomi NOMI NON QUALIFICATI Un nome non qualificato non dispone di un prefisso associato al nome dello spazio dei nomi. I nomi di elementi XML che non sono qualificati, cioè non hanno alcun prefisso associato all elemento, non fanno riferimento ad un namespace AREA DI VALIDITÀ DELLO SPAZIO DEI NOMI Il prologo non è l unica opzione disponibile per la posizione della dichiarazione dello spazio dei nomi. È infatti possibile includere tale dichiarazione direttamente all interno di un elemento appartenente allo spazio dei nomi. A questo scopo, è sufficiente includere la Piersalvo Ortu 20

21 CAPITOLO 1- IL LINGUAGGIO XML dichiarazione, la prima volta che si utilizza l elemento, come mostrato nell esempio che segue: <student> <stu:name>mark</stu:name> <stu:esame>math</stu:esame> <tea:name xmlns:tea="urn:schemas-teachers-com:xml-names"> Frank </tea:name> <date>6/1/00</date> </student> Lo spazio dei nomi risulta quindi disponibile nel contesto dell elemento specifico, (<tea:name>), ovvero tale elemento e tutti i relativi elementi secondari possono utilizzare lo spazio dei nomi. Se dichiarato nell elemento radice del documento, lo spazio dei nomi può essere utilizzato nell intero documento SPAZIO DEI NOMI PREDEFININTI È possibile impostare come predefinito uno spazio dei nomi dichiarandolo senza l assegnazione di un prefisso. In questo caso, lo spazio dei nomi viene considerato all interno del contesto dell elemento in cui è stato dichiarato, come mostrato nel seguente esempio di codice: <student xmlns:stu="urn:shemas-students-com"> <name>mark</name> <esame>math</esame> <date>6/1/00</date> </student> L elemento Student contiene la dichiarazione di uno spazio dei nomi senza prefisso associato. In quanto tale, lo spazio dei nomi viene utilizzato per l elemento Student e tutti i relativi elementi secondari, ma per nessun altro elemento oltre Student, nel caso ce ne fossero. I namespace predefiniti non si applicano agli attributi. Tutti gli attributi devono essere definiti esplicitamente mediante un prefisso di namespace DICHIARAZIONE DELLO SPAZIO DEI NOMI COME URL O URN In quanto univoci, gli URL possono essere utilizzati per rendere univoci i nomi degli spazi dei nomi. Se uno spazio dei nomi è collegato ad un URL, tale spazio dei nomi risulterà univoco nell intero contesto in cui viene utilizzato. Un altra situazione tipica è rappresentata dall esistenza di uno schema dello spazio dei nomi che identifica tutti i nomi contenuti nello spazio dei nomi e il modo in cui sono strutturati. Il nome dello spazio dei nomi XML non fornisce alcun meccanismo per il recupero di tale Piersalvo Ortu 21

22 CAPITOLO 1- IL LINGUAGGIO XML schema, meccanismo che tuttavia può essere reso disponibile utilizzando gli URN (Uniform Resource Names). Un URN consente di individuare e recuperare un file di schema che definisce un determinato spazio dei nomi. Sebbene funzionalità simili possano essere fornite da un comune URL, a questo scopo l URN è più efficiente e facile da gestire poiché può essere riferito a più URL. Il codice seguente mostra l utilizzo di un URN nel contesto di uno spazio dei nomi XML: <tea:teacher xmlns:tea="urn:schemas-teachers-com"> <tea:name>frank</tea:name> <tea:surname>lupo</tea:surname> </tea:teacher> Lo schema relativo allo spazio dei nomi è disponibile nella posizione identificata dall URN e l applicazione di elaborazione è in grado di recuperare tale schema, facendo riferimento all URN stesso. Lo schema contiene informazioni dettagliate relative agli elementi dello spazio dei nomi utilizzabili nel documento SPAZIO DEI NOMI DEGLI ATTRIBUTI Gli spazi dei nomi sono applicabili così come agli elementi, anche agli attributi. Ad esempio: <tea:teacher Materia="informatic" xmlns:tea="urn:teachers:schemas:teacher"> <tea:name>frank</tea:name> <tea:surname>lupo</tea:surname> </tea:teacher> In questo esempio sia all elemento (tea:teacher) che all attributo (Materia="informatic") sono associate dichiarazioni degli spazi dei nomi. Lo spazio dei nomi degli attributi viene utilizzato in modo simile allo spazio dei nomi degli elementi. L importanza degli spazi dei nomi aumenta parallelamente allo sviluppo di nuovi vocabolari e di nuove tecnologie basate sul linguaggio XML. Ci sono comunque già tecnologie che utilizzano gli spazi dei nomi, tra cui XML-Data, i tipi di dati XML e il linguaggio SMIL (Synchronized Multimedia Integration Language). Piersalvo Ortu 22

23 CAPITOLO 2 DTD 2.1 LE DTD E LA CONVALIDA XML è un linguaggio di markup utilizzato per creare altri linguaggi personalizzati a seconda delle varie necessità. Oltre alla creazione del documento XML vero e proprio, bisogna fornire una documentazione e una descrizione del linguaggio o del documento creato. Ciò avviene mediante la DTD (Document Type Definition), che fornisce una lista di istruzioni che l analizzatore convalidante (parser) utilizzerà come regole per verificare gli elementi, gli attributi, le entità del documento XML e quindi per controllare che sia formalmente corretto e che nessuno degli elementi contenuti sia stato utilizzato al di fuori dei vincoli imposti dalla DTD. Quindi le DTD sono essenziali per convalidare un documento XML. Se l analizzatore non rivela incongruenze tra il documento XML e la DTD il documento è formalmente corretto e può essere visualizzato. Il punto forte delle DTD è la flessibilità: infatti la sintassi usata nelle DTD è abbastanza facile e flessibile in quanto consente di creare delle regole e dei vincoli che gestiscano determinate situazioni da applicare poi al documento. 2.2 STRUTTURA DELLE DTD Vi sono due modi per aggiungere una DTD ad un documento XML: il primo tramite un collegamento esterno e l altro incorporando la DTD all interno del documento. Qualsiasi sia il tipo di collegamento scelto, sarà necessaria una dichiarazione del tipo di documento del tipo: <!DOCTYPE elemento-radice..> questa è l istruzione di base per la dichiarazione del tipo di documento. La parola chiave!doctype informa l analizzatore che è stata fornita una DTD per il documento che si sta costruendo, e che deve leggerla durante l elaborazione del documento. La parte elementoradice nella dichiarazione identifica il nome dell elemento radice per cui viene fornita la DTD. Il collegamento ad una DTD esterna è un operazione semplice quanto un collegamento in HTML. In questo caso la dichiarazione del tipo di documento è contenuta su un unica linea di codice. Essa specifica il file da utilizzare quando un particolare documento XML viene convalidato. La dichiarazione si presenta così: Piersalvo Ortu 23

G I O R D A N I A L E S S A N D R A I T T S E R A L E G. M A R C O N I

G I O R D A N I A L E S S A N D R A I T T S E R A L E G. M A R C O N I Introduzione ad XML G I O R D A N I A L E S S A N D R A I T T S E R A L E G. M A R C O N I XML XML (Extensible Markup Language) è un insieme standard di regole sintattiche per modellare la struttura di

Dettagli

HTML e Linguaggi. Politecnico di Milano Facoltà del Design Bovisa. Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione

HTML e Linguaggi. Politecnico di Milano Facoltà del Design Bovisa. Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione HTML e Linguaggi Politecnico di Facoltà del Design Bovisa Prof. Gianpaolo Cugola Dipartimento di Elettronica e Informazione cugola@elet.polimi.it http://home.dei.polimi.it/cugola Indice Il linguaggio del

Dettagli

XML: La nascita del linguaggio

XML: La nascita del linguaggio XML: introduzione alla codifica dei testi Con la codifica dei testi si intende la rappresentazione dei testi stessi su un supporto digitale in un formato utilizzabile dall'elaboratore (Machine Readable

Dettagli

XML. Parte VI - Introduzione e nozioni fondamentali di sintassi. XML: Extensible Markup Language:

XML. Parte VI - Introduzione e nozioni fondamentali di sintassi. XML: Extensible Markup Language: XML Parte VI - Introduzione e nozioni fondamentali di sintassi XML: cosa è XML: Extensible Markup Language: è un linguaggio che consente la rappresentazione di documenti e dati strutturati su supporto

Dettagli

Laboratorio Matematico Informatico 2

Laboratorio Matematico Informatico 2 Laboratorio Matematico Informatico 2 (Matematica specialistica) A.A. 2006/07 Pierluigi Amodio Dipartimento di Matematica Università di Bari Laboratorio Matematico Informatico 2 p. 1/1 Informazioni Orario

Dettagli

Infrastrutture INFormatiche Ospedaliere 2 Corso di laurea di Ingegneria Medica. Indice

Infrastrutture INFormatiche Ospedaliere 2 Corso di laurea di Ingegneria Medica. Indice Indice 4. XML Extensible Markup Language...2 4.1 Usi di XML...3 4.2 Caratteristiche di XML...3 4.3 Elementi...5 4.4 Attributi...5 4.4.1 Documento XML ben formato...6 4.5 Informazioni di controllo...6 4.5.1

Dettagli

extensible Markup Language

extensible Markup Language XML a.s. 2010-2011 extensible Markup Language XML è un meta-linguaggio per definire la struttura di documenti e dati non è un linguaggio di programmazione un documento XML è un file di testo che contiene

Dettagli

Guida all XML INTRODUZIONE CAPITOLO 1. L IMPORTANZA DI XML 1.1 ORIGINE E OBIETTIVI

Guida all XML INTRODUZIONE CAPITOLO 1. L IMPORTANZA DI XML 1.1 ORIGINE E OBIETTIVI Guida all XML (corso online a cura di Marco Giannì; http://www.html.it/xml/guida/) INTRODUZIONE L HTML (Hypertext Markup Language) è considerato la base del World Wide Web. Questo linguaggio consente infatti

Dettagli

Introduzione a XML. Language

Introduzione a XML. Language Introduzione a XML 1 Che cos è XML? XML: Extensible Markup Language anguage: è un linguaggio che consente la rappresentazione di documenti e dati strutturati su supporto digitale è uno strumento potente

Dettagli

Tecnologie Web T Introduzione a XML

Tecnologie Web T Introduzione a XML Tecnologie Web T Introduzione a Home Page del corso: http://www-db.deis.unibo.it/courses/tw/ Versione elettronica: 2.01..pdf Versione elettronica: 2.01.-2p.pdf 1 Che cos è? : Extensible Markup Language:

Dettagli

Tecniche Multimediali

Tecniche Multimediali Chiedersi se un computer possa pensare non è più interessante del chiedersi se un sottomarino possa nuotare Edsger Dijkstra (The threats to computing science) Tecniche Multimediali Corso di Laurea in «Informatica»

Dettagli

a cura di Maria Finazzi

a cura di Maria Finazzi Esercitazioni di XML a cura di Maria Finazzi (11-19 gennaio 2007) e-mail: maria.finazzi@unipv.it pagine web: Il trattamento dell'informazione Testo a stampa: Come

Dettagli

XML e TEI: introduzione alla codifica dei testi letterari. La nascita del linguaggio. Il concetto di metalinguaggio di codifica SGML

XML e TEI: introduzione alla codifica dei testi letterari. La nascita del linguaggio. Il concetto di metalinguaggio di codifica SGML XML e TEI: introduzione alla codifica dei testi letterari Con la codifica dei testi si intende la rappresentazione dei testi stessi su un supporto digitale in un formato utilizzabile dall'elaboratore (Machine

Dettagli

HTML+XML= XHTML. Che cos è l XHTML

HTML+XML= XHTML. Che cos è l XHTML HTML+XML= XHTML Il ritorno al futuro del WEB A cura di Barbara Lotti Che cos è l XHTML Nel gennaio del 2000 il W3C ha rilasciato, anziché una nuova versione, una riformulazione dell HTML come applicazione

Dettagli

Linguaggi per il web oltre HTML: XML

Linguaggi per il web oltre HTML: XML Linguaggi per il web oltre HTML: XML Luca Console Con XML si arriva alla separazione completa tra il contenuto e gli aspetti concernenti la presentazione (visualizzazione). XML è in realtà un meta-formalismo

Dettagli

XML. XML è contemporaneamente: XML non è:

XML. XML è contemporaneamente: XML non è: XML XML è contemporaneamente: Linguaggio di annotazione (Markup) che permette di creare gruppi di marcatori (tag set) personalizzati (MathML, XHTML, chemicalml, ecc..) Formato standard per lo scambio dei

Dettagli

XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS

XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS XML INVITO ALLO STUDIO EUROPEAN NETWORK OF INNOVATIVE SCHOOLS CSS e XML Per formatare i documenti XML è possibile seguire due strade: Quando non c è bisogno della potenza elaborativa di XSL, l utilizzo

Dettagli

APPENDICE C extensible Markup Language

APPENDICE C extensible Markup Language APPENDICE C extensible Markup Language C.1 extensible Markup Language, concetti di base XML è un dialetto di SGML progettato per essere facilmente implementabile ed interoperabile con i suoi due predecessori

Dettagli

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Linguaggi e Tecnologie Web A. A. 2011-2012. Language) Stylesheet.

Corso di Laurea Specialistica in Ingegneria Informatica. Corso di Linguaggi e Tecnologie Web A. A. 2011-2012. Language) Stylesheet. Corso di Laurea Specialistica in Ingegneria Informatica Corso di Linguaggi e Tecnologie Web A. A. 2011-2012 XSL (extensible( Stylesheet Language) Eufemia TINELLI Contenuti XSL = XSLT + XSL-FO (+ XPath)

Dettagli

La struttura: DTD. Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino. laura.farinetti@polito.it

La struttura: DTD. Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino. laura.farinetti@polito.it La struttura: DTD Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino laura.farinetti@polito.it L. Farinetti - Politecnico di Torino 1 Modello di struttura I tag annidati danno origine

Dettagli

XML: extensible Markup Language

XML: extensible Markup Language XML: extensible Markup Language Laura Farinetti Dip. Automatica e Informatica Politecnico di Torino laura.farinetti@polito.it L. Farinetti - Politecnico di Torino 1 Introduzione XML: extensible Markup

Dettagli

Linguaggi per la descrizione dei documenti

Linguaggi per la descrizione dei documenti SGML (Standard General Markup Language) Linguaggi per la descrizione dei documenti SGML,HTML,XML Molteplicità di documenti di tipo diverso (es. web): articoli, cataloghi, rubriche, tabelle di dati etc..

Dettagli

Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language. a.a. 2004/05 Tecnologie Web 1

Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language. a.a. 2004/05 Tecnologie Web 1 Introduzione a XML: Document Type Definition; parser XML; XML-schema; extensible Stylesheet Language a.a. 2004/05 Tecnologie Web 1 XML - I XML (exstensible Markup Language): XML è un formato standard,

Dettagli

ma l XML va ben al di là dell HTML: serve per descrivere

ma l XML va ben al di là dell HTML: serve per descrivere Il metalinguaggio XML 1 Introduzione all'xml Il futuro dei linguaggi di markup: XML = EXtensible Markup Language è una versione semplificata dell SGML Nasce con l'intento di superare alcune limitazioni

Dettagli

Applicazioni e Architetture Internet. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma

Applicazioni e Architetture Internet. T. Catarci, M. Scannapieco, Corso di Basi di Dati, A.A. 2008/2009, Sapienza Università di Roma Applicazioni e Architetture Internet 1 Introduzione Introduzione alle architetture a tre livelli Formati di dati per il Web HTML, XML, DTD 2 Componenti dei sistemi dataintensive Tre tipi separati di funzionalità:

Dettagli

Introduzione alla codifica XML per i testi umanistici

Introduzione alla codifica XML per i testi umanistici Introduzione alla codifica XML per i testi umanistici Daniele Silvi, Domenico Fiormonte, Fabio Ciotti fiormont@uniroma3.it - silvi@lettere.uniroma2.it - ciotti@lettere.uniroma2.it 1 La digitalizzazione

Dettagli

Internet Architettura del www

Internet Architettura del www Internet Architettura del www Internet è una rete di computer. Il World Wide Web è l insieme di servizi che si basa sull architettura di internet. In una rete, ogni nodo (detto host) è connesso a tutti

Dettagli

Simple & Efficient. www.quick-software-line.com

Simple & Efficient. www.quick-software-line.com Cosa è XML? extensible Markup Language Linguaggio è una definizione limitativa XML serve a descrivere con precisione qualsiasi informazione XML è estensibile. Ovvero non ha tag predefiniti come HTML XML

Dettagli

EUROPEAN COMPUTER DRIVING LICENCE WEB EDITING - Versione 2.0

EUROPEAN COMPUTER DRIVING LICENCE WEB EDITING - Versione 2.0 EUROPEAN COMPUTER DRIVING LICENCE WEB EDITING - Versione 2.0 Copyright 2010 The European Computer Driving Licence Foundation Ltd. Tutti I diritti riservati. Questa pubblicazione non può essere riprodotta

Dettagli

XML: sintassi. Prof. Carlo Blundo Tecnologie di Sviluppo per il Web 1

XML: sintassi. Prof. Carlo Blundo Tecnologie di Sviluppo per il Web 1 XML: sintassi Prof. Carlo Blundo Tecnologie di Sviluppo per il Web 1 Cosa è XML 1 XML (Extensible Markup Language ) è un linguaggio di markup È stato progettato per lo scambio e la interusabilità di documenti

Dettagli

Modellazione e Gestione di Informazioni non Strutturate

Modellazione e Gestione di Informazioni non Strutturate Università della Calabria, Corso di Laurea Specialistica in Ingegneria Gestionale Progettazione di Sistemi Informativi Docente: Alfredo Cuzzocrea Modellazione e Gestione di Informazioni non Strutturate

Dettagli

REQUISITO DI ACCESSIBILITA

REQUISITO DI ACCESSIBILITA ISTITUTO COMPRENSIVO Pascoli - Crispi Via Gran Priorato, 11-98121 Messina Via Monsignor D'Arrigo, 18-98122 Messina Tel/Fax. 09047030 090360037 e-mail: meic87300t@istruzione.it / meee00800r@istruzione.it

Dettagli

Dichiarazione di Accessibilità

Dichiarazione di Accessibilità Dichiarazione di Accessibilità Requisito n. 1 : Realizzare le pagine e gli oggetti al loro interno utilizzando tecnologie definite da grammatiche formali pubblicate nelle versioni più recenti disponibili

Dettagli

Manuali.net. Nevio Martini

Manuali.net. Nevio Martini Manuali.net Corso base per la gestione di Siti Web Nevio Martini 2009 Il Linguaggio HTML 1 parte Introduzione Internet è un fenomeno in continua espansione e non accenna a rallentare, anzi è in permanente

Dettagli

Dichiarazione di accessibilità del sito di Ulisse - Nella rete della scienza

Dichiarazione di accessibilità del sito di Ulisse - Nella rete della scienza Dichiarazione di accessibilità del sito di Ulisse - Nella rete della scienza I riferimenti riguardano quanto indicato nelle Recommendation del World Wide Web Consortium (W3C) ed in particolare in quelle

Dettagli

Ipertesto, navigazione e cenni HTML. Lezione Informatica I CLAWEB

Ipertesto, navigazione e cenni HTML. Lezione Informatica I CLAWEB Ipertesto, navigazione e cenni HTML Lezione Informatica I CLAWEB 1 Il concetto di Ipertesto (1/2) Definizione: Modello testuale in cui le diverse unità di contenuti non sono articolate secondo un ordine

Dettagli

Laboratorio di Tecnologie Web HTML: Introduzione Dott. Stefano Burigat

Laboratorio di Tecnologie Web HTML: Introduzione Dott. Stefano Burigat Laboratorio di Tecnologie Web HTML: Introduzione Dott. Stefano Burigat www.dimi.uniud.it/burigat File HTML e tag Un file HTML non è nient'altro che un puro file di testo al cui interno sono presenti delle

Dettagli

Contenuti. Applicazioni di rete e protocolli applicativi

Contenuti. Applicazioni di rete e protocolli applicativi Contenuti Architettura di Internet Principi di interconnessione e trasmissione World Wide Web Posta elettronica Motori di ricerca Tecnologie delle reti di calcolatori Servizi Internet (come funzionano

Dettagli

Internet Terminologia essenziale

Internet Terminologia essenziale Internet Terminologia essenziale Che cos è Internet? Internet = grande insieme di reti di computer collegate tra loro. Rete di calcolatori = insieme di computer collegati tra loro, tramite cavo UTP cavo

Dettagli

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013

Corso di HTML. Prerequisiti. Modulo L3. 1-Concetti generali. Browser Rete Internet Client e server. M. Malatesta 1-Concetti generali-12 28/07/2013 Corso di HTML Modulo L3 1-Concetti generali 1 Prerequisiti Browser Rete Internet Client e server 2 1 Introduzione In questa Unità introduciamo alcuni semplici elementi del linguaggio HTML, con il quale

Dettagli

XML. Concetti principali. Risultato possibile. Differenze tra XML e HTML

XML. Concetti principali. Risultato possibile. Differenze tra XML e HTML Concetti principali Un documento XML contiente delle istruzioni particolari chiamate tag scritte in forma di coppia di parentesi (metalinguaggio con parentesi) Daniele Marini XML questa

Dettagli

2.1 Introduzione ai linguaggi di marcatura

2.1 Introduzione ai linguaggi di marcatura Fondamenti di Informatica Sistemi di Elaborazione delle Informazioni Informatica Applicata 2.1 Introduzione ai linguaggi di marcatura Antonella Poggi Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE

Dettagli

Università della Svizzera italiana

Università della Svizzera italiana Università della Svizzera italiana Il sito dell Università della Svizzera italiana e l accessibilità Vs.1.0 11 / 12 / 2007 TEC-LAB WEB-SERVICE 1. INTRODUZIONE Avere accesso al web, per un utente disabile,

Dettagli

Introduzione al linguaggio XML, extensible Markup Language

Introduzione al linguaggio XML, extensible Markup Language Introduzione al linguaggio XML, extensible Markup Language Lezione del Corso Interazione Uomo Macchina 1, Docente Francesco Mele Corso di Laurea in Informatica Università di Napoli Federico II, Anno Accademico

Dettagli

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML

MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML MODA-ML: Esempi di XSL (Extensible Stylesheet Language) Vocabolario di supporto alla creazione di un set di Schemi di documenti XML Thomas Imolesi imolesi@libero.it fti@bologna.enea.it XML un linguaggio

Dettagli

Modulo 8. Sviluppo di pagine e siti Creare pagine Web

Modulo 8. Sviluppo di pagine e siti Creare pagine Web Pagina 1 di 6 Sviluppo di pagine e siti Creare pagine Web HTML è l'acronimo di HyperText Markup Language; si tratta di un linguaggio utilizzato per la marcatura ipertestuale. A differenza dei comuni linguaggi

Dettagli

HTML 1. HyperText Markup Language

HTML 1. HyperText Markup Language HTML 1 HyperText Markup Language Introduzione ad HTML Documenti HTML Tag di markup Formattazione del testo Collegamenti ipertestuali Immagini Tabelle Form in linea (moduli) Tecnologie di Sviluppo per il

Dettagli

Sommario. Settimana - Gli elementi fondamentali... 1. Introduzione...xv. Giorno 1 - I linguaggi di markup...3

Sommario. Settimana - Gli elementi fondamentali... 1. Introduzione...xv. Giorno 1 - I linguaggi di markup...3 000B-XML-Somm.fm Page iii Wednesday, June 12, 2002 9:25 AM Sommario Introduzione...xv A chi si rivolge questo libro...xvi Convenzioni usate in questo libro...xvi Settimana - Gli elementi fondamentali...

Dettagli

La sintassi di un DTD si basa principalmente sulla presenza di quattro dichiarazioni:

La sintassi di un DTD si basa principalmente sulla presenza di quattro dichiarazioni: XML: DTD Da un punto di vista cronologico, il primo approccio per la definizione di grammatiche per documenti XML è rappresentato dai Document Type Definition (DTD). Un DTD è un documento che descrive

Dettagli

Settimana I...1. Giorno 1 - Introduzione all XSLT...3

Settimana I...1. Giorno 1 - Introduzione all XSLT...3 Settimana I...1 Giorno 1 - Introduzione all XSLT...3 Generalità su XSLT...3 Introduzione a XML e XSLT... 4 Cos è XSLT?... 5 Che cosa fa XSLT?... 6 Come si presenta XSLT?... 6 XSLT e la famiglia di XML...

Dettagli

Conformità: Conforme; tutte le pagine sono realizzate con linguaggio XHTML 1.0 Strict.

Conformità: Conforme; tutte le pagine sono realizzate con linguaggio XHTML 1.0 Strict. Tasti di accesso rapido Al fine di migliorare l'accessibilità del sito sono stati definiti i seguenti tasti di accesso rapido, per attivare le principali funzionalità offerte: [H] = Homepage [R] = Ricerca

Dettagli

Corso html 5. Di Roberto Abutzu. *********** Quarta parte: Body ed elementi strutturali. ********** Cos'è il Body e gli elementi strutturali?

Corso html 5. Di Roberto Abutzu. *********** Quarta parte: Body ed elementi strutturali. ********** Cos'è il Body e gli elementi strutturali? Corso html 5. Di Roberto Abutzu. *********** Quarta parte: Body ed elementi strutturali. ********** Cos'è il Body e gli elementi strutturali? Riprendiamo il discorso, introducendo la tag Body e iniziando

Dettagli

Il funzionamento delle reti

Il funzionamento delle reti Il funzionamento delle reti La rete ci cambia la vita L Età dell Informazione ha prodotto profondi cambiamenti nessun luogo è remoto le persone sono interconnesse le relazioni sociali stanno mutando l

Dettagli

Rappresentare i file XML - XSL

Rappresentare i file XML - XSL Rappresentare i file XML - XSL Laura Papaleo papaleo@disi.unige.it CSS2, XSL, XSLT, XPath 1 XSL - exstensible Stylesheet Language XSL Raccomandazione del W3C (2001) Per aumentare la flessibilità dello

Dettagli

XML e Basi di Dati Corso di Basi di Dati 1. XML e basi di dati. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine

XML e Basi di Dati Corso di Basi di Dati 1. XML e basi di dati. Angelo Montanari. Dipartimento di Matematica e Informatica Università di Udine XML e Basi di Dati Corso di Basi di Dati 1 XML e basi di dati Angelo Montanari Dipartimento di Matematica e Informatica Università di Udine XML e Basi di Dati Corso di Basi di Dati 2 Cos è XML XML è l

Dettagli

Il linguaggio HTML - Nozioni di base

Il linguaggio HTML - Nozioni di base Corso IFTS Informatica, Modulo 3 Progettazione pagine web statiche (50 ore) Il linguaggio HTML - Nozioni di base Dott. Chiara Braghin braghin@dti.unimi.it What is HTML? HTML (HyperText Markup Language)

Dettagli

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI

connessioni tra i singoli elementi Hanno caratteristiche diverse e sono presentati con modalità diverse Tali relazioni vengono rappresentate QUINDI Documenti su Internet LINGUAGGI DI MARKUP Internet permette (tra l altro) di accedere a documenti remoti In generale, i documenti acceduti via Internet sono multimediali, cioè che possono essere riprodotti

Dettagli

SIAGAS Manuale Utente Utente non autenticato

SIAGAS Manuale Utente Utente non autenticato SIAGAS Manuale Utente Utente non autenticato 27 marzo 2007 v.1.7 SIAGAS: Manuale Utente: utente non autenticato 1/10 1 Introduzione 1.1 Destinatario del prodotto SIAGAS è uno Sportello Informativo per

Dettagli

Fogli di stile CSS. 1 Istituto Italiano Edizioni Atlas

Fogli di stile CSS. 1 Istituto Italiano Edizioni Atlas Fogli di stile CSS Il foglio CSS (Cascading Style Sheet, foglio di stile a cascata) è un documento in formato testuale che definisce il controllo sulla visualizzazione della pagina HTML e sul suo layout,

Dettagli

Creare documenti XML. La natura epistemologica della codifica. Perché comprare XML? La struttura gerarchica ordinata. Riassumendo le componenti

Creare documenti XML. La natura epistemologica della codifica. Perché comprare XML? La struttura gerarchica ordinata. Riassumendo le componenti Lez. 7 Creare documenti XML La codifica deve raggiungere 2 traguardi: Accessibilità tecnica Permanenza a lungo termine 05/03/12 Perché comprare XML La natura epistemologica della codifica HTML Descrive

Dettagli

Ipertesto. Reti e Web. Ipertesto. Ipertesto. Ipertestualità e multimedialità

Ipertesto. Reti e Web. Ipertesto. Ipertesto. Ipertestualità e multimedialità Ipertesto Reti e Web Ipertestualità e multimedialità Ipertesto: documento elettronico costituito da diverse parti: nodi parti collegate tra loro: collegamenti Navigazione: percorso tra diversi blocchi

Dettagli

Tecniche Multimediali

Tecniche Multimediali Un programma di computer fa quello che gli dici, non quello che vuoi. Legge di Greer (Leggi di Murphy applicate all informatica) Tecniche Multimediali Corso di Laurea in «Informatica» - aa 2010-2011 Prof.

Dettagli

Il World Wide Web. Il Web. La nascita del Web. Le idee di base del Web

Il World Wide Web. Il Web. La nascita del Web. Le idee di base del Web Il World Wide Web Il Web Claudio Fornaro ver. 1.3 1 Il World Wide Web (ragnatela di estensione mondiale) o WWW o Web è un sistema di documenti ipertestuali collegati tra loro attraverso Internet Attraverso

Dettagli

HTML (Hyper Text Markup Language)

HTML (Hyper Text Markup Language) HTML (Hyper Text Markup Language) E un linguaggio di scrittura di pagine per Internet (pagine web) nato nel 1992. E un linguaggio di marcatura ipertestuale Non è un linguaggio di programmazione, in quanto

Dettagli

Elaborazione di documenti elettronici

Elaborazione di documenti elettronici Elaborazione di documenti elettronici Silvio Peroni speroni@cs.unibo.it http://creativecommons.org/licenses/by-sa/3.0 Sommario Documento, documento elettronico e codifica binaria Markup XML, HTML e fogli

Dettagli

Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. **********

Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. ********** Corso html 5. Di Roberto Abutzu. *********** Terza parte: Prime nozioni: Tag e prima pagina, continuazione. ********** Prime nozioni: Tag e prima pagina, continuazione. Nota bene, al fine di avere anche

Dettagli

Il linguaggio XML. Capitolo 3. 3.1 Introduzione al linguaggio XML

Il linguaggio XML. Capitolo 3. 3.1 Introduzione al linguaggio XML Capitolo 3 Il linguaggio XML 3.1 Introduzione al linguaggio XML Il linguaggio XML (extensible Markup Language) è stato sviluppato nel 1996 da XML Working Group, gruppo di lavoro organizzato dal World Wide

Dettagli

Lezione 8. Motori di Ricerca

Lezione 8. Motori di Ricerca Lezione 8 Motori di Ricerca Basi di dati Un campo prevalente dell applicazione informatica è quello costituito dall archiviazione e dalla gestione dei dati (basi di dati). Sistema Informativo. Un sistema

Dettagli

Capitolo 4 Pianificazione e Sviluppo di Web Part

Capitolo 4 Pianificazione e Sviluppo di Web Part Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,

Dettagli

Reti di Telecomunicazione Lezione 6

Reti di Telecomunicazione Lezione 6 Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server

Dettagli

Corso Creare Siti WEB

Corso Creare Siti WEB Corso Creare Siti WEB INTERNET e IL WEB Funzionamento Servizi di base HTML CMS JOOMLA Installazione Aspetto Grafico Template Contenuto Articoli Immagini Menu Estensioni Sito di esempio: Associazione LaMiassociazione

Dettagli

CORSI DI FORMAZIONE AMMEGA.IT. Formazione informatica di base IC 3 /MOS. http://www.ammega.it

CORSI DI FORMAZIONE AMMEGA.IT. Formazione informatica di base IC 3 /MOS. http://www.ammega.it Formazione informatica di base IC 3 /MOS http://www.ammega.it Formazione informatica di base IC 3 Descrizione sintetica IC 3 è un Programma di Formazione e Certificazione Informatica di base e fornisce

Dettagli

Corso basi di dati Introduzione alle ASP

Corso basi di dati Introduzione alle ASP Corso basi di dati Introduzione alle ASP Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Web statico e Web interattivo In principio il Web era una semplice collezione di pagine

Dettagli

Linguaggi e Paradigmi di Programmazione

Linguaggi e Paradigmi di Programmazione Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una

Dettagli

Software. Definizione, tipologie, progettazione

Software. Definizione, tipologie, progettazione Software Definizione, tipologie, progettazione Definizione di software Dopo l hardware analizziamo l altra componente fondamentale di un sistema di elaborazione. La macchina come insieme di componenti

Dettagli

Indice. 4. Logica booleana... 35 4.1 Logica booleana... 35

Indice. 4. Logica booleana... 35 4.1 Logica booleana... 35 Indice NOZIONI DI BASE 1. Macchine per risolvere problemi...3 1.1 Problema, algoritmo, esecutore...3 1.2 L elaboratore...3 1.4 Compilatori/Interpreti...8 Esercizi... 12 2. Il sistema operativo... 13 2.1

Dettagli

Indice PARTE PRIMA L INIZIO 1

Indice PARTE PRIMA L INIZIO 1 Indice Introduzione XIII PARTE PRIMA L INIZIO 1 Capitolo 1 Esplorare il World Wide Web 3 1.1 Come funziona il World Wide Web 3 1.2 Browser Web 10 1.3 Server Web 14 1.4 Uniform Resource Locators 15 1.5

Dettagli

Modulo ECDL WEBSTARTER. Obiettivi del modulo. Categoria Skill set Rif. Task Item. 1.1 Il web - Concetti. 1.2 HTML 1.2.1 Fondamenti

Modulo ECDL WEBSTARTER. Obiettivi del modulo. Categoria Skill set Rif. Task Item. 1.1 Il web - Concetti. 1.2 HTML 1.2.1 Fondamenti EUROPEAN COMPUTER DRIVING LICENCE WEBSTARTER - Versione 1.5 Copyright 2009 The European Computer Driving Licence Foundation Ltd. Tutti I diritti riservati. Questa pubblicazione non può essere riprodotta

Dettagli

TEORIA sulle BASI DI DATI

TEORIA sulle BASI DI DATI TEORIA sulle BASI DI DATI A cura del Prof. Enea Ferri Cos è un DATA BASE E un insieme di archivi legati tra loro da relazioni. Vengono memorizzati su memorie di massa come un unico insieme, e possono essere

Dettagli

Informatica. Prof. M. Colajanni Università di Modena Reggio Emilia

Informatica. Prof. M. Colajanni Università di Modena Reggio Emilia Informatica Prof. M. Colajanni Università di Modena Reggio Emilia PARTE 4 - World Wide Web WORLD WIDE WEB La killer application di Internet I motivi alla base del successo del Web ( perché è risultata

Dettagli

XML e standard connessi. XML, XML-Names, XSL, XPointer, XLink

XML e standard connessi. XML, XML-Names, XSL, XPointer, XLink XML e standard connessi XML, XML-Names, XSL, XPointer, XLink 1 Sommario Introduzione XML 1.0 XML-Names XSL XPointer e XLink 2 XML XML (Extensible Markup Language [sic!]) è un meta-linguaggio di markup,

Dettagli

Informatica per la comunicazione" - lezione 10 -

Informatica per la comunicazione - lezione 10 - Informatica per la comunicazione" - lezione 10 - Evoluzione del Web" Nell evoluzione del Web si distinguono oggi diverse fasi:" Web 1.0: la fase iniziale, dal 1991 ai primi anni del 2000" Web 2.0: dai

Dettagli

HTML 1 AVVISO. Terminologia. Introduzione ad HTML. HyperText Markup Language

HTML 1 AVVISO. Terminologia. Introduzione ad HTML. HyperText Markup Language HTML 1 HyperText Markup Language AVVISO Martedì 4 ottobre in laboratorio ci saranno 2 turni: 11:00 12:15 matricole pari 12:30 13:45 matricole dispari Introduzione ad HTML Documenti HTML Tag di markup Formattazione

Dettagli

SITI WEB DEL COMUNE DI PESARO, RAPPORTO DI CONFORMITA' AI REQUISITI TECNICI DELLA LEGGE N.4-9 GENNAIO 2004

SITI WEB DEL COMUNE DI PESARO, RAPPORTO DI CONFORMITA' AI REQUISITI TECNICI DELLA LEGGE N.4-9 GENNAIO 2004 SITI WEB DEL COMUNE DI PESARO, RAPPORTO DI CONFORMITA' AI REQUISITI TECNICI DELLA LEGGE N.4-9 GENNAIO 2004 Le pagine del sito istituzionale e dei siti tematici del Comune di Pesaro sono state progettate

Dettagli

HTML SITI WEB. FEQUENZA OBBLIGATORIA 80% ESERCITAZIONI (laboratorio) RICONOSCIMENTO 3 CFU. infolab@uniroma3.it host.uniroma3.it/laboratori/infolab

HTML SITI WEB. FEQUENZA OBBLIGATORIA 80% ESERCITAZIONI (laboratorio) RICONOSCIMENTO 3 CFU. infolab@uniroma3.it host.uniroma3.it/laboratori/infolab HTML SITI WEB FEQUENZA OBBLIGATORIA 80% ESERCITAZIONI (laboratorio) RICONOSCIMENTO 3 CFU infolab@uniroma3.it host.uniroma3.it/laboratori/infolab INTERNET Generalmente Internet è definita la rete delle

Dettagli

ESERCITAZIONE Semplice creazione di un sito Internet

ESERCITAZIONE Semplice creazione di un sito Internet ESERCITAZIONE Semplice creazione di un sito Internet Sistemi e Tecnologie Informatiche - Prof. Gregorio Cosentino 1 Internet Una rete globale che connette milioni di computer in tutto il mondo, anarchica

Dettagli

Linguaggi ed Applicazioni mul1mediali

Linguaggi ed Applicazioni mul1mediali Università degli Studi di Urbino "Carlo Bo" Linguaggi ed Applicazioni mul1mediali 06.01- Introduction to mark-up. 06.02- classification 06.03- SGML 06.04- XML Hypertext Maurizio Maffi ISTI Informa1on Science

Dettagli

Facoltà di Farmacia - Corso di Informatica

Facoltà di Farmacia - Corso di Informatica Basi di dati Riferimenti: Curtin cap. 8 Versione: 13/03/2007 1 Basi di dati (Database, DB) Una delle applicazioni informatiche più utilizzate, ma meno conosciute dai non informatici Avete già interagito

Dettagli

Applicazioni delle reti. Dalla posta elettronica al telelavoro

Applicazioni delle reti. Dalla posta elettronica al telelavoro Applicazioni delle reti Dalla posta elettronica al telelavoro Servizi su Internet La presenza di una infrastruttura tecnologica che permette la comunicazione tra computer a distanze geografiche, ha fatto

Dettagli

PROGETTAZIONE DI UN SITO WEB

PROGETTAZIONE DI UN SITO WEB PROGETTAZIONE DI UN SITO WEB UN BUON SITO DEVE AVERE DUE CARATTERISTICHE: USABILITA ACCESSIBILITA Navigazione fluida con contenuti facilmente reperibili. Organizzazione dei contenuti e predisposizione

Dettagli

Laboratorio di Basi di Dati e Multimedia

Laboratorio di Basi di Dati e Multimedia Laboratorio di Basi di Dati e Multimedia Laurea in Informatica Multimediale Docente: Carlo Combi Email: carlo.combi@univr.it Lezione 8 Il linguaggio XML extensible Markup Language XML è un linguaggio di

Dettagli

I punti preliminari da trattare

I punti preliminari da trattare Alma Mater Studiorum Università di Bologna Facoltà di Economia - Bologna CLEA, CLED, CLEF,CLEM Prof. Jacopo Di Cocco Idoneità informatica e Sistemi informatici Parte prima Il word wide web e l informazione

Dettagli

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione

b) Dinamicità delle pagine e interattività d) Separazione del contenuto dalla forma di visualizzazione Evoluzione del Web Direzioni di sviluppo del web a) Multimedialità b) Dinamicità delle pagine e interattività c) Accessibilità d) Separazione del contenuto dalla forma di visualizzazione e) Web semantico

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4) Architettura del WWW World Wide Web Sintesi dei livelli di rete Livelli di trasporto e inferiori (Livelli 1-4) - Connessione fisica - Trasmissione dei pacchetti ( IP ) - Affidabilità della comunicazione

Dettagli

I metadati per la gestione e conservazione dei documenti elettronici. Fiorella Foscarini Firenze, 17 giugno 2007

I metadati per la gestione e conservazione dei documenti elettronici. Fiorella Foscarini Firenze, 17 giugno 2007 I metadati per la gestione e conservazione dei documenti elettronici Fiorella Foscarini Firenze, 17 giugno 2007 Argomenti Che cosa sono i metadati Criticità relative a definizione, indentificazione e classificazione

Dettagli

Come funziona internet

Come funziona internet Come funziona internet Architettura client server URL/URI Richiesta (Request) Risposta (Response) Pagina url e uri Uno Uniform Resource Identifier (URI, acronimo più generico rispetto ad "URL") è una stringa

Dettagli

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in

Gestione Requisiti. Ingegneria dei Requisiti. Requisito. Tipi di Requisiti e Relativi Documenti. La gestione requisiti consiste in Ingegneria dei Requisiti Il processo che stabilisce i servizi che il cliente richiede I requisiti sono la descrizione dei servizi del sistema Funzionalità astratte che il sistema deve fornire Le proprietà

Dettagli

Laboratorio di Programmazione Distribuita. Introduzione a XML. Dott. Marco Bianchi Università degli Studi di L'Aquila

Laboratorio di Programmazione Distribuita. Introduzione a XML. Dott. Marco Bianchi Università degli Studi di L'Aquila Laboratorio di Programmazione Distribuita Dott. Marco Bianchi Università degli Studi di L'Aquila bianchi@di.univaq.it http://di.univaq.it/~bianchi Cos'è XML? XML = extensible Markup Language E' un meta-linguaggio

Dettagli

Il traffico sul Web si moltiplica in maniera impressionante a un tasso annuale superiore al 300%.

Il traffico sul Web si moltiplica in maniera impressionante a un tasso annuale superiore al 300%. Il traffico sul Web si moltiplica in maniera impressionante a un tasso annuale superiore al 300%. La capacità di una rete, ovvero il volume di traffico che è in grado di trasmettere, dipende dalla larghezza

Dettagli