10.11.2014 Views

DTD, XSD e documenti XML validi - SisInf Lab

DTD, XSD e documenti XML validi - SisInf Lab

DTD, XSD e documenti XML validi - SisInf Lab

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Corso di Laurea Specialistica in Ingegneria Informatica<br />

Corso di Linguaggi e Tecnologie Web<br />

A. A. 2011 - 2012<br />

<strong>DTD</strong> ed <strong>XML</strong> Schema - Esercizi<br />

Eufemia TINELLI


Contenuti<br />

• Esercizi: <strong>DTD</strong> <strong>XML</strong> e <strong>XSD</strong> <strong>XML</strong><br />

• Design Pattern per <strong>XML</strong><br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 2


Esercizio 1<br />

• Si progetti il <strong>DTD</strong> e si scriva un <strong>XML</strong> valido per un<br />

linguaggio di markup per lettere.<br />

• Requisiti:<br />

– Ogni lettera ha un mittente, una data, un destinatario, un<br />

oggetto, una forma cortese di saluto, un corpo, una<br />

chiusura, una firma.<br />

– Il corpo della lettera ha quanto meno un paragrafo.<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 3


<strong>DTD</strong> es. 1<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 4


<strong>XML</strong> es. 1<br />

<br />

<br />

<br />

Max Temporali<br />

23 Ottobre 2011<br />

I tifosi della MotoGP<br />

Dramma a Sepang durante la gara della MotoGP<br />

Ciao Marco<br />

<br />

Non mi sembra vero, sono frastornato. Mi tremano le mani ed ho un<br />

senso di nausea da malessere. […]<br />

Non la commento, non le voglio nemmeno rivedere quelle immagini.<br />

Sono crude, impietose, devastanti per la sensibilità di chiunque.[…]<br />

Marco è stato un campione di umanità e di simpatia prima di tutto,<br />

l’unico pilota a cui ho chiesto una dedica su un poster […]<br />

Non oso mettermi nei panni del babbo di Marco, della fidanzata, della<br />

mamma e […]<br />

<br />

Con affetto,<br />

Max Temporali<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 5


<strong>XML</strong> di uno schema relazionale <strong>DTD</strong><br />

<br />


<strong>XML</strong> <strong>DTD</strong>: Soluzione<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 7


Esercizio 2 - http://www.w3.org/TR/xmlschema-0/<br />

• Si progetti un <strong>XSD</strong> e si scriva un <strong>XML</strong> valido per un<br />

linguaggio di markup per un ordine di acquisto.<br />

• Requisiti:<br />

– Ogni ordine di acquisto ha la data dell’ordine ed una serie<br />

di informazioni: dati acquirente degli US (nome e<br />

indirizzo), dati venditore degli US (nome e indirizzo) e dati<br />

dei prodotti acquistati.<br />

– Ciascuna di queste informazioni può avere un commento<br />

opzionale<br />

– Ciascun prodotto ha un nome, una quantità (non superiore<br />

a 100), un prezzo, una data di spedizione ed un codice<br />

(es. formato del codice 123-AB)<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 8


<strong>XSD</strong> es. 2 (1)<br />

<br />

<br />

Purchase order schema for<br />

Example.com.Copyright 2000 Example.com. All rights<br />

reserved.<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 9


<strong>XSD</strong> es. 2 (2)<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 10


<strong>XSD</strong> es. 2 (3)<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />


<strong>XSD</strong> es. 2 (4)<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 12


<strong>XSD</strong> es. 2 (5)<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 13


<strong>XML</strong> es. 2<br />

<br />

<br />

<br />

Alice Smith123 Maple Street<br />

Mill ValleyCA<br />

90952<br />

<br />

<br />

Robert Smith8 Oak Avenue<br />

Old TownPA<br />

95819<br />

<br />

Hurry, my lawn is going wild!<br />

<br />

<br />

Lawnmower1148.95<br />

Confirm this is electric<br />

<br />

<br />

Baby Monitor139.98<br />

1999-05-21<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 14


<strong>XML</strong> di una business card <strong>XSD</strong><br />

<br />

<br />

CEO, Widget Inc.<br />

john.doe@widget.com<br />

(202) 555-1414<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 15


<strong>XML</strong> <strong>XSD</strong>: Soluzione<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 16


Best practices -<br />

http://blogs.msdn.com<br />

blogs.msdn.com/b/ /b/skaufman/archive/2005/05/10/416269.aspx<br />

www.xfront.com/GlobalVersusLocal.html<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 17


Approccio “Bambole Russe”<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

• Nessuno dei tipi e degli elementi è riutilizzabile (local scope)<br />

• Stile compatto<br />

• De-accoppiamento: ogni elemento si descrive da se<br />

• Coesione: tutte le informazioni sono raggruppate in un’unica descrizione<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 18


Approccio “Fette di Salame”<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

• Tipi ed elementi riutilizzabili (global scope)<br />

• Stile verboso<br />

• Accoppiamento: elementi interconnessi<br />

• Coesione: tutte le informazioni sono raggruppate in un’unica descrizione<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 19


Approccio “Tende alla Veneziana”<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

• Riuso delle definizioni dei<br />

tipi<br />

• Stile verboso<br />

• Accoppiamento: elementi<br />

interconnessi<br />

• Coesione: tutte le<br />

informazioni sono<br />

raggruppate in un’unica<br />

descrizione<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 20


Approccio “Giardino dell’Eden<br />

Eden”<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

E. TINELLI – LTW A. A. 2011-2012<br />

2012 21

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!