XML - teknologiat

| KOTISIVU | KURSSIKUVAUS | OHJELMA JA HARJOITUKSET |

XML: perusteiden harjoitus

Huomaa, että kaikki harjoitukset on syytä tallentaa. Joihinkin tehtäviin palataan myöhemmin toisesta näkökulmasta.

XML-tiedostoja voi editoida tavallisella tekstieditorilla kuten Notepad/Muistio, tai ohjelma- ja HTML-editoreilla, jotka tunnistavat XML-syntaksin, luokissa Notepad++ ja Eclipse. Myös nimenomaan XML:ää varten kehitettyjä editoreja on olemassa.

Harjoitus 1a: XML rakenne

Seuraavassa pieni XML -tiedosto. Piirrä sen puurakenne.

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<julkaisu>
<uutinen>
<lähde>
<tuottaja>STT</tuottaja>
<toimittaja>Virtanen</toimittaja>
</lähde>
<luokitus>maakunta</luokitus>
<artikkeli>
<otsikko>Lunta tuli Inarissa</otsikko>
<teksti>lumi.html</teksti>
<lyhennelmä>lumix.html</lyhennelmä>
</artikkeli>
</uutinen>
</julkaisu>

Kirjoita tämä, tallenna se nimellä harjoitus1a.xml ja tutki sen esitystä Internet Explorerilla ja Firefoxilla. Korjaa mahdolliset virheet.

Harjoitus 1b: XML rakennetta

Seuraavassa toinen XML -tiedosto, joka on huonosti suunniteltu. Korjaa suunnitteluvirheet ja piirrä sen puurakenne.

<?xml version='1.0' encoding='ISO-8859-1' standalone='yes'?>
<puhelinluettelo>
<yritys>
<yrnimi>Konera</yrnimi>
<vaihde>09-999000</vaihde>
</yritys>
<toimjoht>Valma Vaahtera
<alanumero>09-9990011</toimjoht></alanumero>
<sihteeri>Ville Vaahtera <alanumero>09-9990012</sihteeri></alanumero>
<yritys>
<yrnimi>Kordea</yrnimi>
<vaihde>09-888000</vaihde>
</yritys>
<toimjoht>Otto Kisko
<alanumero>09-8880011</toimjoht></alanumero>
<sihteeri>Laina Raha
<alanumero>09-8880012</sihteeri></alanumero>
</puhelinluettelo>

Tallenna korjattu XML nimellä harjoitus1b.xml ja tutki sen esitystä Internet Explorerilla ja Firefoxilla. Korjaa mahdolliset virheet.

Kokeile, miten XML deklaraatio toimii erilaisissa merkistöissä ja selaimella. Katso, että tiedosto on tallennettu samassa muodossa kuin merkistö on määritelty (ainakin uusissa Notepad-ohjelmissa on mahdollista valita koodisto):

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>

<?xml version='1.0' encoding='UTF-16' standalone='yes'?>

Harjoitus 1c: CD-levyjen XML -kuvaus

Suunnittele, miten esittäisit CD-levyjäsi tai soittolistojasi koskevat tiedot XML-muodossa. Tiedostosi juurielementti on esimerkiksi <CDluettelo>. Kustakin levystä tulisi kertoa ainakin nimi, esittäjä(t), kappaleet, julkaisuvuosi ja ehkä jonkinlainen luokittelu. Kuvausta on mahdollista syventää esim. kappaleiden osalta (raita nro, nimi, kesto, tms.) Mieti, mitä tietoja haluat musiikista jota kuuntelet, tai mitä tietoja radioaseman juontaja tarvitsee levyjen soittamiseen.
Piirrä ensin puumalli, kirjoita sitten koodi, johon sijoitat todellista esimerkkidataa (sitä löytyy vaikka netistä). Tallenna nimellä harjoitus1c.xml ja testaa avaamalla tiedosto taas selaimella.

Lisätään tämän jälkeen hiukan attribuuttitietoa. Levystä voi laittaa vaikka sarjanumeron ja kokonaiskesto esimerkiksi seuraavasti, jos sinulla on CD elementti. Tai sitten voit laittaa kappaleiden raitanumerot atribuutteina.

<CD serial='B6B41B' disc-length='36:55'>

Tallenna nimellä harjoitus1c2.xml ja testaa. Lisää myös seuraavankaltainen kommenttirivi:

<!-- CD:llä on muitakin kappaleita kuin tässä esimerkissä-->

Harjoitus 1d: XML sovellettuna opinto-ohjelmaan

Suunnittele XML-pohja, johon voit tallentaa tiedot kaikista ohjelmassasi olevista opintojaksoista. Toteuta se niin, että lisäät myös sisällön, ainakin meneillään olevat opintojaksot. Pidä tämäkin tallessa, koska sille tehdään myöhemmin tyylitiedosto, jonka avulla se voidaan tulostaa selaimen näytölle.

Suomalaisten korkeakoulujen opintojen käsitemalli.

| KOTISIVU | KURSSIKUVAUS | OHJELMA JA HARJOITUKSET |
Päivittänyt: Jaana Holvikivi
Muutettu 18.3.2015