3 pagine in totale: <<Indietro 1 [2] 3 Avanti >>
Documenti XML ben formati
XML = eXtensible Markup Language = Linguaggio di Marcatura Estendibile
Un documento XML assomiglia vagamente ad un file HTML. Se conoscete l'HTML, l'idea dei tag che racchiudono un pezzo di informazione vi è già famigliare. Sappiate però che le analogie finiscono quà. Un documento XML, infatti:
- non dà nessuna informazione riguardo a come il file debba essere visualizzato. I tag non rappresentano direttive per la visualizzazione, ma qualificano semanticamente i dati racchiusi.
- non rappresenta necessariamente un documento da pubblicare sul web. A questo proposito, XML può essere visto come un metodo per astrarre il contenuto di un documento dalla sua presentazione. Ma su questo aspetto tornerò in seguito.
- ha regole diverse (più restrittive) sull'uso dei tag che vediamo in dettaglio subito.
Tanto per fare un esempio immaginiamo che vogliate raccogliere i dati degli esami di tutti i vostri amici di università. Volete pubblicare i dati, ma non avete ancora deciso come: su una pagina web, sulla fanzine della facoltà, in WML per poter scaricare o dati attraverso il telefonino WAP, in tutti e tre i sitemi? Non lo sapete, ma volete comunque cominciare a raccogliere i dati senza preoccuparvi di come li visualizzerete dopo.
Ecco l'XML presentarsi a voi come strumento privilegiato. Non sapete nulla di XML, ma sapete che l'amico Paolo è un elemento che deve essere descritto:
<amico>Paolo Rossi</amico>Notate che ogni tag aperto deve essere anche chiuso. Magari volete anche scrivervi a che anno è iscritto e il numero di matricola. Avremo.
<amico>
<nome>Paolo Rossi</nome>
<matricola>1245632</matricola>
<annoiscrizione>3</annoiscrizione>
<fuoricorso>true</fuoricorso>
</amico>Tanta roba? In effetti l'anno di iscrizione e la matricola sono dettagli a se stanti che non necessitano per forza di un elemento a sé. Sono praticamente attributi di Paolo, pezzetti di informazione che possono far comodo, ma solo se non portano con sé confusione.
<amico annoiscrizione="3" fuoricorso="true" matricola="1245632">Paolo Rossi</amico>Prima di andare avanti, ci sono un bel pò di cose da osservare:
- i tag sono annidati perfettamente. Non è un caso. Se due tag si sovrappongono, il documento XML non è ben-formato.
- tutti i valori degli attributi sono racchiusi in doppi apici. In realtà vanno bene anche quelli singoli, ma ci devono comunque essere, altrimenti il documento non è ben-formato.
- non sempre è chiaro quando modellare un aspetto dei nostri dati con un attributo o con un nuovo elemento atonomo.
- Ad esempio, ci sono parecchie informazioni riguardanti l'amico che non si prestano ad essere attributi. Ad esempio il nome potrebbe tranquillamente essere un'entità a sé. Adesso, vogliamo mettere nel file anche l'indirizzo internet di dove troveremo la foto di ogni amico. Ecco come fare:
<amico annoiscrizione="3" fuoricorso="true" matricola="1245632">
<nome>Paolo Rossi</nome>
<foto url="http://www.italia1.com/programmi/spettacoli/
scatafascio/mercato/images/paolo2.jpg" />
</amico>Se siete state attenti, reagirete subito dicendo che il tag 'foto' non è chiuso, come invece dovrebbe essere. Non è proprio così. Il tag foto equivale perfettamente a:
<foto url="http://www.italia1.com/programmi/spettacoli/
scatafascio/mercato/images/paolo2.jpg"></foto>Il che significa che se un elemento non ha contenuto ma solo attributi, avete la scorciatoia di chiudere il tag immediatamente ricordandovi di mettere una barra prima della chiusura del tag. Ricordate però che si tratta di una specie di abbreviazione e non di una eccezione alla regola che vuole tutti i tag accopiati alla loro chiusura (anche se a volte qualcuno li descrive così).
Attenzione a una cosa. Il fatto che il documento XML contenga l'URL di una immagine, non significa affatto che aprendolo con Internet Explorer 5 riusciremo a vederla. La url della foto è solo un pezzo di informazione come un'altro. Magari lo userete davvero per costruire una pagina HTML che visualizzerà la foto, ma per l'XML si tratta di una semplice informazione.
3 pagine in totale: <<Indietro 1 [2] 3 Avanti >>
Contenuti dell'articolo
Per inserire un commento, devi registrarti alla nostra community.








Difficoltà
Stampa
Download 


