Si scriva un possibile XML-Schema che modelli nel modo piu' accurato possibile una base di dati floreale che si trova all'indirizzo http://www.example.org/fioreria.xml, una cui istanza corrisponde al seguente XML:
<fioreria nome="Il Fiore Allegro"
xmlns="http://www.example.com/fiori">
<prezzi>
<prezzo nome="giacinti-viola">7</prezzo>
<prezzo nome="ibiscus-blu">8</prezzo>
<prezzo nome="leucodendri">4</prezzo>
<prezzo nome="rose-blu">10</prezzo>
<prezzo nome="rose-rosso">11</prezzo>
<prezzo
nome="tulipani-giallo">10</prezzo>
<prezzo nome="lilium-bianco">8</prezzo>
<prezzo
nome="aspidistrie">3</prezzo>
</prezzi>
<mazzo nome="Fantasia" sconto="5%">
<fiore tipo="ibiscus" colore="blu" />
<fiore tipo="rose" colore="rosso" />
<fiore tipo="lilium" colore="bianco" quantita="2"/>
<foglie tipo="aspidistrie" quantita="5"
/>
</mazzo>
<mazzo nome="Vortice">
<fiore tipo="rose" colore="blu" quantita="2" />
<fiore tipo="giacinti" colore="viola" quantita="2" />
<fiore tipo="rose" colore="rosso" />
<fiore tipo="tulipani" colore="giallo" quantita="2"
/>
<foglie tipo="leucodendri" quantita="3" />
<foglie tipo="aspidistrie" quantita="4"
/>
</mazzo>
</fioreria>
Si scriva una query in XQuery che usando la base di dati floreale espressa nell'esercizio 1, generi un annuncio sui prezzi delle composizioni floreali, tale che ad esempio la base di dati precedente venga resa nel seguente modo:
Fioreria Il Fiore Allegro - le nostre composizioni floreali
Lasciatevi tentare dalle nostre composizioni floreali: il mazzo Fantasia,
composto da 1 ibiscus, 2 lilium, 1 rose, ed un contorno di aspidistrie, proposto
al prezzo scontatissimo di 47.5 euro; il mazzo Vortice, composto da 2 giacinti,
3 rose, 2 tulipani, ed un contorno di aspidistrie e leucodendri, al prezzo
di 89 euro.
Si scriva una query in XQuery che usando una base di dati floreale espressa nell'esercizio 1, generi il seguente catalogo floreale:
<html
xmlns="http://www.example.org/myhtml">
<body>
<h1>I nostri fiori (Il Fiore
Allegro)</h1>
<ul>
<li>giacinti: <img src="/fiori/giacinti/viola" />
</li>
<li>ibiscus: <img src="/fiori/ibiscus/blu" />
</li>
<li>lilium: <img src="/fiori/lilium/bianco" />
</li>
<li>rose: <img src="/fiori/rose/blu" /> <img
src="/fiori/rose/rosso" /> </li>
<li>tulipani: <img src="/fiori/tulipani/giallo" />
</li>
</ul>
</body>
</html>
Si scriva una trasformata XSLT che trasformi l'output dell'esercizio 3 in
un altra pagina senza immagini, tale che ad esempio la pagina precedente
venga resa nel seguente modo:
<html>
<body>
<h1>I nostri fiori</h1>
Ecco i fiori che abbiamo disponibili a catalogo: <a
href="/fiori/giacinti/viola">giacinti viola</a>, <a
href="/fiori/ibiscus/blu">ibiscus blu</a>, <a
href="/fiori/lilium/bianco">lilium bianco</a>, <a
href="/fiori/rose/blu">rose blu</a>, <a
href="/fiori/rose/rosso">rose rosso</a>, <a
href="/fiori/tulipani/giallo">tulipani
giallo</a>.
</body>
</html>