XML Merkkauskieli, osa 2
Esimerkki: XML-dokumentti resepti <?xml version="1.0" encoding="utf-8"?> <!- Author Miikka Merikanto 2012, maitokaakaoresepti --> <resepti id= 001 > </resepti> <nimi>maitokaakao</nimi> <ainesosa nimi= kaakaojauhe määrä= 2 yksikkö= rkl /> <ainesosa nimi= maito määrä= 2 yksikkö= dl /> <valmistus>kaada maito lasiin ja sekoita maidon joukkoon kaakaojauhe.</valmistus>
Merkkaus attribuutit Elementteihin voi liittyä attribuutteja, joilla tarkennetaan elementin sisältöä tai ominaisuutta. Attribuutilla on nimi ja arvo. Attribuutti lisätään elementtiin alkutägissä. Attribuutin syntaksi: nimi= arvo Yhdellä elementillä voi olla useita attribuutteja. Esimerkki: <resepti id= 001 >
Merkkaus - kommentit Vaikka XML on suunniteltu olevan itsestään ilmaiseva kieli, XML:ssäkin on mahdollista tehdä kommentteja. Kommentti alkaa merkinnällä <!- ja loppuu merkintään -->. Esimerkki: <!- Author Miikka Merikanto 2012, maitokaakaoresepti --> Toisin kuin esimerkiksi Java-kielessä, XML:ssä ei ole tapana kirjoittaa juurikaan kommentteja. Ei edes esimerkin kaltaisia Author-kommentteja!
XML:n syntaksit Kaikilla XML-elementeillä pitää olla lopputägi. XML-tägit ovat case-sensitivejä. Siis tägi <Viesti> on eri tägi kuin <viesti>. XML-elementtien tulee olla aidosti sisäkkäisiä: Väärin: <b><i>tämä teksti on lihavoitua ja kursivoitua.</b></i> Oikein: <b><i>tämä teksti on lihavoitua ja kursivoitua.</i></b> XML-dokumentilla tulee olla yksi elementti, joka on kaikkien muiden elementtien vanhempi (isä tai esi-isä). Tätä elementtiä sanotaan juurielementiksi. XML:n attribuuttien arvojen pitää olla lainausmerkkien sisällä.
XML:n syntaksit, entiteetit Tietyillä merkeillä on erityinen merkitys XML-kielessä. Jos asetat < -merkin elementin sisään, tulee virhe, koska parseri tulkitsee sen uuden tägin aloitukseksi. Esimerkki: Väärin: <viesti>jos x < 1000, niin </viesti> Oikein: <viesti>jos x < 1000, niin </viesti> XML-kielessä on viisi erikseen määriteltyä entiteettimerkintää: < < vähemmän kuin > > enemmän kuin & & et-merkki ' heittomerkki " lainausmerkki
XML:n syntaksit Tyhjät välit säilyvät XML:ssä. Ylimääräisiä tyhjiä välejä tulee siis välttää. XML säilyttää uuden rivin LF:nä Windows säilyttää uuden rivin kahtena merkkiparina CR:nä (Carriage Return) ja LF:nä (Line Feed). Unixissa (Linux) ja Mac OS säilyttää uuden rivin LF:nä.
XML-kielen kirjoittaminen Aivan kuten muitakin kieliä, voi myös XML:ää kirjoittaa tavalla, josta ihmisen on vaikea saada selvää: <?xml version="1.0" encoding="utf- 8"?><huomautus><vastaanottaja>Veikko</vastaanottaja><lähettäjä >Miikka</lähettäjä><otsikko>Muistutus</otsikko><viesti>Muista seuraavan viikonlopun suunnitelmat!</viesti></huomautus> XML on suunniteltu olemaan itsestään ilmaiseva kieli. Siis kieli, jota ihmisen on helppo lukea ja jota ei tarvitse sen kummemmin kommentoida tai dokumentoida. Yritys säästää resursseja, kun kerralla kirjoitetaan selkeää kieltä, jonka ymmärtää myös vuosien päästä ilman erillisiä ohjeita!
XML-kielen kirjoittaminen jatkuu Käytä: Rivinvaihtoja erottaaksesi eri elementtejä ja/tai tägejä. Sisennyksiä selventääksesi dokumentin hierarkiaa. Kirjoita vähintäänkin näin selkeästi: <?xml version="1.0" encoding="utf-8"?> <huomautus> <vastaanottaja>veikko</vastaanottaja> <lähettäjä>miikka</lähettäjä> <otsikko>muistutus</otsikko> <viesti>muista seuraavan viikonlopun suunnitelmat!</viesti> </huomautus>
XML taipuu moneen tapaan esittää tietoa Esimerkissä esitetään raaka-ainetiedot attribuuttien avulla. <ainesosa nimi= kaakaojauhe määrä= 2 yksikkö= rkl /> Ainesosat olisi voitu esittää eri tavalla, esimerkiksi hierarkiana: <ainesosa> </ainesosa> <nimi>kaakaojauhe</nimi> <määrä yksikkö= rkl >2</määrä> Myös muita järkeviä ratkaisuvaihtoehtoja on olemassa.