>
ICT03D -> XML -> Viikkoharjoitukset 1
Tee projektin kokouskutsusta XML-dokumentti, joka on rakenteeltaan alla olevan puurakenteen mukainen. Hae XML-dokumenttiin sisältö kokouskutsu.html-tiedostosta.

Lisämateriaalia 1. viikkotehtävien tekoon: Rakennepuu
Laadi tehtävän 1.2 kokouskutsun rakennepuuta vastaava DTD-tiedosto. Liitä DTD-tiedosto myös tehtävässä 1.1 laatimaasi XML-dokumenttiin.
Korjaa tuote.xml-dokumentti siten, että XML-dokumentti ja DTD ovat kelvollisia ja vastaavat toisiaan.
<?xml encoding="ISO-8859-15"?>
<!DOCTYPE tuote [
<!ELEMENT tuotteet (tuote, tilaus)>
<!ELEMENT tuote (nimi, pakkaus, kuva)>
<!ATTLIST tuote tuoteryhma CDATA #REQUIRED>
<!ELEMENT nimi (#PCDATA)>
<!ATTLIST nimi
tyyppi (kuusenkoriste | ovikoriste) #REQUIRED
vari CDATA #REQUIRED>
<!ELEMENT pakkaus (kappale, hinta)>
<!ATTLIST pakkaus materiaali NMTOKEN>
<!ELEMENT kappale (#PCDATA)>
<!ELEMENT hinta CDATA>
<!ELEMENT kuva EMPTY>
<!ELEMENT kuva src NMTOKEN #REQUIRED>
<!ELEMENT tilaus (myyja)>
<!ELEMENT myyja (#PCDATA)>
<!ATTLIST tun ID #REQUIRED>
]>
<tuotteet tuoteryhma=joulukoristeet>
<tuote>
<nimi tyyppi="kuusenkoriste" vari="punainen">Pallo</Nimi>
<pakkaus materiaali="muovi">
<kappale>10</kappale>
<hinta>10 €</hinta>
</pakkaus>
<kuva src="punainen pallo.jpg"/>
</tuote>
<tuote>
<nimi>Havukranssi</nimi>
<pakkaus>
<kappale>1</kappale>
<hinta>8 €
</pakkaus>
</tuote>
<tuote>
<nimi tyyppi="pöytäkoriste" vari=valkoinen>Kynttilä</nimi>
<pakkaus>
<kappale>6</kappale>
</pakkaus>
<hinta>12 €</hinta>
<kuva src="valkoiset kynttilät.jpg">
</tuote>
<tilaus tun="A10"/>
<myyja tun="A10">Ville Virtanen</myyja>
</tuotteet>
Laadi tilaus.xml-dokumentille DTD.
<?xml version="1.0" encoding="ISO-8859-15"?>
<!-- numero on pakollinen, yksilöi tilauksen
paivays on pakollinen-->
<tilaus numero="t001" paivays="23.9.2009">
<tilaaja>
<!-- Y-tunnus yksilöi yrityksen, on pakollinen -->
<yritys Y-tunnus="Y 123456-7">Eläinkauppa Virtanen</yritys>
<nimi>
<sukunimi>Virtanen</sukunimi>
<etunimi>Veikko</etunimi>
</nimi>
<!-- Puhelin ei ole pakollinen, voi olla max. 1 puhelin -->
<puhelin>+358401234567</puhelin>
<!-- Voi olla joko kaynti- tai postiosoite -->
<postiosoite>
<!-- Määrittele postiosoitteen rakenne DTD:hen parametrientiteettinä -->
<lahiosoite>Jermunkuja 1</lahiosoite>
<postinumero>41160</postinumero>
<postitoimipaikka>Tikkakoski</postitoimipaikka>
</postiosoite>
</tilaaja>
<toimittaja>
<yritys Y-tunnus="Y 123456-2">Ruokatukku eläimille</yritys>
<nimi>
<sukunimi>Majava</sukunimi>
<etunimi>Maija</etunimi>
</nimi>
<puhelin/>
<!-- Voi olla joko kaynti- tai postiosoite -->
<kayntiosoite>
<!-- Määrittele kayntiosoitteen rakenne DTD:hen parametrientiteettinä -->
<lahiosoite>Rautatieläisenkatu 5</lahiosoite>
<postinumero>00500</postinumero>
<postitoimipaikka>Helsinki</postitoimipaikka>
</kayntiosoite>
</toimittaja>
<tilausrivit>
<tilausrivi>
<!-- koodi on yksilöllinen avain -->
<nimeke koodi="k12345">Menu-Vital</nimeke>
<maara>100</maara>
<!-- kappalehinnalla on alennusprosentti-attribuutti, minkä oletusarvo on 0
alennusprosentti voi saada arvot 0, 3, 5 tai 10 -->
<kappalehinta>1.70</kappalehinta>
</tilausrivi>
<tilausrivi>
<nimeke koodi="k4321">Puruja</nimeke>
<maara>10</maara>
<kappalehinta alennusprosentti="3">5</kappalehinta>
</tilausrivi>
</tilausrivit>
<!-- toimitusaikaa ei ole pakollinen -->
<!-- toimitusviikko on pakollinen, toimituskuluja ei tarvitse olla -->
<toimitusaika toimitusviikko="52" toimituskulut="5.80"/>
</tilaus>
Tutustu Tietojenkäsittelyn ko, Helsinki - ops 2009.
Laadi XML-dokumentti, missä on vähintää kahden kurssin tiedot.
Päivitetty: 26.10.2009