Indire, sito ufficiale
Istituto Nazionale di Documentazione, Innovazione e Ricerca Educativa MIUR
immagine di contorno      Formazione separatore dei progetti      Documentazione separatore barra alta      Didattica separatore barra alta      Comunicazione separatore barra alta Europa
contorno tabella centrale
LINGUAGGI DELLA COMUNICAZIONE

XML in 10 punti

Questo sommario in 10 punti cerca di raccogliere alcuni concetti basilari che permettano al neofita di vedere un po' di luce attraverso la nebbia.

di Andrea Benassi
26 Novembre 2003


 
1. XML serve per strutturare informazioni

Per informazioni strutturate si intendono oggetti come fogli di calcolo, agende, parametri di configurazione, transazioni finanziarie o disegni tecnici. XML è un insieme di regole (ma possono essere viste anche come linee guida o convenzioni) per realizzare formati di testo che consentano di strutturare informazioni. XML non è un linguaggio di programmazione, e non è necessario essere un programmatore per impararlo. XML rende facile la generazione e la lettura di dati attraverso il computer, e controlla che la struttura di questi dati sia chiara. XML non ha i difetti tipici di altri linguaggi: è estensibile, indipendente dalla piattaforma, e supporta l'internazionalizzazione e la localizzazione. XML è pienamente compatibile con il formato Unicode.

2. XML assomiglia un pò all'HTML

Come HTML, XML fa uso di tags (parole racchiuse tra '<' e '>') e attributi (dalla forma nome="valore"). Ma mentre HTML specifica cosa significano ogni nome ed attributo, e spesso come il testo fra di essi apparirà in un browser, XML usa i tag solo per delimitare porzioni di informazione, e ne lascia completamente l'interpretazione all'applicazione che li leggerà. In altre parole, se vedi scritto "

" in un file XML, non è detto che sia un paragrafo. A seconda del contesto, può essere un prezzo, un parametro, una persona, un p...  (e chi l'ha detto che dev'essere per forza una parola che inizia con la "p"?).

3. XML è testo, ma non da leggere

Programmi che producono fogli di calcolo, agende ed altre informazioni strutturate spesso salvano i dati su disco, usando un formato binario o testuale. Un vantaggio del formato testuale è che permette, se necessario, di guardare le informazioni senza l'ausilio del programma che li ha prodotti; all'occorrenza, puoi leggere un file testuale con il tuo editor di testi preferito. Con il formato testuale, inoltre, è più facile per gli sviluppatori effettuare il debug delle applicazioni. Come l'HTML, i file XML sono file di testo che l'utente non dovrebbe leggere, ma che in alcuni casi può essere utile leggere. Confrontate con l'HTML, le regole per i file XML permettono molte poche variazioni. Un tag dimenticato o un attributo senza virgole rendono il file XML inutilizzabile, mentre in HTML tali pratiche sono spesso esplicitamente permesse. Le specifiche ufficiali XML proibiscono alle applicazioni di tirare ad indovinare cosa intendesse il creatore di un file non utilizzabile; se il file non è corretto, un'applicazione deve fermarsi e segnalare l'errore.

4. XML è prolisso per scelta

Poiché XML è un formato testuale e usa i tag per delimitare i dati, i file XML sono sempre più grandi di analoghi file in formato binario. Questa è una decisione cosciente da parte degli sviluppatori di XML. I vantaggi del formato testo sono evidenti  (vedi punto 3), e gli svantaggi possono di solito essere compensati a livelli diversi. Lo spazio su disco non è più costoso come una volta, e i programmi di compressione come zip e gzip possono comprimere i file molto bene e molto in fretta. Inoltre, i protocolli di comunicazione come quelli per i modem e HTTP/1.1, il protocollo basilare per il Web, possono comprimere i dati automaticamente, risparmiando banda proprio come i file binari.

5. XML è una famiglia di tecnologie

XML 1.0 è la specifica che definisce cosa sono i "tag" e gli "attributi". Oltre ad XML 1.0, "la famiglia XML " è un insieme in crescita costante di moduli che offrono servizi utili per compiti importanti e frequentemente richiesti. XLink descrive una modalità standard per aggiungere collegamenti ipertestuali ad un file XML. XPointer è una sintassi in via di sviluppo per puntare a parti di un documento XML. Un XPointer assomiglia molto a un URL, ma invece di puntare a documenti sul web, punta a porzioni di dati all'interno di un file XML. CSS, il linguaggio dei fogli di stile, è applicabile all'XML così come all'HTML. XSL è il linguaggio avanzato per scrivere i fogli di stile. È basato su XSLT, un linguaggio di trasformazione usato per ordinare, aggiungere e cancellare tag e attributi. DOM è un insieme standard di funzioni chiamate da un linguaggio di programmazione per manipolare i file XML (e HTML) . XML Schema 1 e 2 aiutano gli sviluppatori a definire con precisione le strutture basate su formati XML. Ci sono ancora un'infinità di moduli e strumenti disponibili o in fase di sviluppo. Si veda W3C's technical reports page (in inglese).

6. XML è nuovo, ma non più di tanto

Lo sviluppo dell'XML è iniziato nel 1996 ed è una W3C Recommendation dal Febbraio 1998, il che potrebbe far pensare ad una tecnologia ancora immatura. A dire il vero, la tecnologia non è così nuova come sembra. Prima di XML c'era SGML, sviluppato nei primi anni 80, ISO standard dal 1986, e largamente usato per progetti di documentazione. Lo sviluppo dell'HTML è iniziato nel 1990. Gli sviluppatori dell'XML hanno semplicemente preso le parti migliori dell'SGML, guidati dall'esperienza con HTML, per produrre qualcosa non meno potente dell'SGML, ma molto più regolare e semplice da usare. Alcune evoluzioni, comunque, sono difficili da distinguere dalle rivoluzioni... E va detto che mentre l'SGML è molto usato nella documentazione tecnica e molto meno per altri scopi, con XML è esattamente l'opposto.

7. XML: dall' HTML all' XHTML

Esiste un'importante applicazione XML che è un formato di documento: l'XHTML del W3C, il successore dell'HTML. XHTML ha molti elementi in comune con HTML. La sintassi è stata leggermente cambiata per conformarsi alle regole dell'XML. Un formato "XML-based" eredita la sintassi XML ed in certi casi la restringe(es. XHTML accetta "

", ma non ""); in altri casi aggiunge significati alla sintassi (XHTML dice che "

" sta per "paragrafo", e non per "prezzo", "persona", o altro).

8. XML è modulare

Con XML puoi definire un nuovo formato di documento combinando o riutilizzando altri formati. Dal momento che due formati sviluppati indipendentemente possono avere elementi o attributi con lo stesso nome, occorre fare attenzione quando si combinano insieme ("

" significa "paragrafo" in un formato e "persona" nell'altro?). Per eliminare la confusione sui nomi quando si combinano formati, XML fornisce un meccanismo detto namespace. XSL e RDF sono ottimi esempi di formati basati su XML che usano i namespace. XML Schema è nato per supportare la modularità a livello di definizione delle strutture dei documenti, e rende facile combinare due schemi per produrne un terzo che comprenda una struttura di documento risultante dai due.

9. XML è la base per RDF e il Web Semantico

Il Resource Description Framework (RDF) del W3C è un formato testuale XML che supporta la descrizione di risorse e l'applicazione di metadati come playlist musicali, album di foto e bibliografie. Per esempio, con RDF puoi identificare una persona su un album fotografico Web usando delle informazioni prese dalla lista personale di contatti; dopodiché il tuo client di posta invia automaticamente un messaggio a queste persone per avvisarli che le loro foto sono sul Web. Come HTML integra documenti, immagini, menu e form per dare vita al Web come lo intendiamo oggi, RDF fornisce strumenti per fare anche di più, per trasformare il Web in Web Semantico. Come le persone si accordano sul significato delle parole che impiegano nelle loro comunicazioni, i computer hanno bisogno di meccanismi per accordarsi sul significato dei termini in modo da comunicare efficacemente. Le descrizioni formali dei termini in certe aree (acquisti o settore manufatturiero, ad esempio) sono dette ontologie e sono una parte necessaria del Web Semantico. RDF, ontologie, e la rappresentazione del significato in modo che i computer possano aiutare le persone nel loro lavoro, sono tutti temi di discussione della Semantic Web Activity (in inglese).

10. XML è gratuito, indipendente dalla piattaforma e ben supportato

Con XML accedi ad una vasta comunità di strumenti (uno dei quali può essere proprio quello che cercavi!) e di sviluppatori, in continua espansione. Scegliere XML è un po' come scegliere SQL per i database: devi ancora costruire il database, i programmi e le procedure che lo gestiscono, ma sai di avere molti strumenti disponibili e molte persone che ti possono aiutare. E poiché XML è gratis, per il tuo software non dovrai pagare niente a nessuno. Il grande e crescente supporto significa che non sei vincolato ad un unico venditore. XML può non essere sempre la soluzione migliore, ma vale sempre la pena di prenderlo in considerazione.


Bert Bos
Documento originale:
http://www.w3.org/XML/1999/XML-in-10-points

Copyright © 1999-2003 W3C® ( MIT, INRIA, Keio), All Rights Reserved.

 
Articoli correlati

Il CoderDojo: come imparare una programmazione strutturata
di Mario Boninsegni (11 Dicembre 2014)

Al via le iscrizioni al corso "Didattica Digitale"
di G. Cannella, R. Carro, E. Mosa, L. Tosi (29 Febbraio 2012)

Che cos’è la competenza digitale?
di Silvia Panzavolta (19 Ottobre 2010)

Il modello I-CLEEN
di Matteo Cattadori e Maddalena Macario (17 Maggio 2010)

3.0 verso il Web semantico: THINKERS WANTED!
di Silvia Dell Acqua (17 Febbraio 2010)

Dentro la Scuola: strumenti utili e motivazioni quotidiane
di Renato Montemurro (26 Maggio 2009)

Dove il libro non è il medium prevalente della conoscenza
di Francesco Vettori (29 Aprile 2009)

Francesc Pedró: per capire quel che sta accadendo
di Francesco Vettori (18 Aprile 2006)

Mai più una comunicazione "usa e getta"
di Gianluca Torrini (03 Gennaio 2006)

A un mese di distanza dalla morte di Mario Luzi
di Francesco Vettori (21 Marzo 2005)

Il valore della conoscenza, la forza della comunicazione
di Stefania Chipa (09 Febbraio 2005)

Cammina cammina
di Stefania Chipa (01 Gennaio 2005)

Strappate quella pagina
di Stefania Chipa (18 Novembre 2004)

Nuovi linguaggi: scrivere, leggere, interagire
di Antonio Sofia (12 Novembre 2004)

Il registro comunicativo ritrovato
di Giovanni Nulli (21 Settembre 2004)