Windows - Az XML bemutatása

XML 3. rész

Az előző részben megtanultuk mik azok a jelölőelemek és megnéztük használatuk alapjait. Most tovább megyünk és kicsit speciálisabb XML megoldásokkal foglalkozunk: az attribútumokkal. Megnézzük használatuk különféle módozatait, szintaktikájukat. Továbbá ismertetjük az XML által fenntartott speciális attribútumok jelentését, használatát, mindenhol példákkal illusztrálva a leírtakat.
Attribútumok megadása
A jelölőelemekhez hozzáfűzhetők speciális információk, melyeket attribútumoknak nevezünk. Egy attribútum két részből áll: név és érték. Tulajdonképpen ugyanazon elemtípusokat jelölik részletesebben. Mindig előre kell írni a nevet és utána az értéket. Utóbbit idézőjelek közé kell tenni, de ha az érték is tartalmaz idézőjelet, használhatunk aposztrófot is.
<köny szerző="Animare Software KFT" kód="WSO">
...
</könyv>
Elemezzük ki a fenti példát:
Az alkalmazott jelölőelem neve: <könyv>. Utána található két attribútum, név szerint: szerző és kód. A jelölőelem és az első attribútum között szerepelnie kell egy szóköznek, ugyanez érvényes az attribútumok elválasztására is. Használható szóköz az egyenlőségjel előtt és után is, tehát a szerző = "Animare Software KFT" is helyes. A jelölőelemek zárása ugyanúgy történik, mint más esetben: </könyv>. Ne felejtsük el, hogy az XML különbséget tesz a kis- és nagybetűk között. Mint mondtuk idézőjelek helyett használható aposztróf is:
<köny szerző='Animare Software KFT' kód='WSO'>
...
</könyv>
Ha a szöveg tartalmaz idézőjelet, kötelező az aposztróf használata:
<köny szerző='Animare Software KFT' kód='"WSO"'>
...
</könyv>
Ugyanez fordítva is igaz.
Ritkábban fordul elő, de erre is fel kellett készülniük az XML megalkotóinak, ha valaki idézőjelet és aposztófot is akar értékként használni, határoló karaktereket speciális módon kell megadni: idézőjel helyett a ", aposztróf helyett pedig a &apos kifejezést kell használni:
<köny szerző='Animare Software KFT' kód="WSO'"">
...
</könyv>
Elég azonban csak az egyikre (vagy az idézőjelre, vagy az aposztrófra) ilyen formán hivatkozni. A fenti kódérték így néz ki: WSO'".
Fenntartott attribútumok
Attribútumokat tetszés szerint adhatunk meg, de az XML szabvány két nevet fenntart az értelmező programok számára. Könnyen megismerhetők, mert xml: előtaggal kezdődnek. Ezt az előtag nevet nem is használhatjuk saját adataink számára, tehát a következő kódrészlet hibás:
<köny szerző='Animare Software KFT' xml:kód="Nem alkalmazható attribútumnév">
...
</könyv>
xml:lang
Az egyik fenntartott attribútum név az xml:lang. Nem kötelező megadni. Szerepe szerint az adott dokumentumban használt nyelvet jelöli. Értéke a nyelv kódja, melynek megadására több lehetőség is van.
Egyik az ISO 639-es szabványban foglalt kétbetűs kódokat jelenti:
<köny szerző='Animare Software KFT' xml:lang="hu">
...
</könyv>
Másik megoldás az IANA (Internet Assigned Numbers Authority) szervezet által definiált kódtáblázat használata. Ebben az esetben az érték az i- előtaggal kezdődik:
<köny szerző='Animare Software KFT' xml:lang="i-hu">
...
</könyv>
Meg szoktak különböztetni brit és amerikai angol nyelvet. Ilyenkor az ISO 3166 szabványban előírt nyelv és országkódokat lehet használni, mintegy alkódként "-" karakterrel elválasztva a tagokat:
<köny szerző='Animare Software KFT' xml:lang="en-GB">
...
</könyv>
Ha az x- előtaggal kezdődik az érték, akkor felhasználó által definiált nyelvkódról van szó:
<köny szerző='Animare Software KFT' xml:lang="x-magyar">
...
</könyv>
xml:space
Szintén nem kötelező megadni. Az XML dokumentumokban a kód jobb áttekinthetősége végett szóközöket, tabulátor jeleket használunk, ha új sort akarunk kezdeni, ütünk egy ENTER billentyűt. Tehetjük, hiszen ez nem befolyásolja a szöveg megjelenítését. A számítógép szempontjából a következő formula az ideális, ugyanis nélkülözi a sallangokat:
<könyv><fejezet><bekezdés></bekezdés></fejezet></könyv>
Számunkra viszont sokkal áttekinthetőbb még ilyen egyszerűbb esetben is a következő szerkezet, a bonyolultabb megoldásokról már nem is beszélve:
<könyv>
  <fejezet>
    <bekezdés>
    </bekezdés>
  </fejezet>
</könyv>
Az xml:space attribútum meghatározza, hogy a feldolgozó program vegye-e figyelembe a jelölőelemek közötti pozícionáló karaktereket a szöveg feldolgozásánál vagy sem. Ha az xml:space="default" értéket állítjuk be - vagy nem adjuk meg az xml:space attribútumot - akkor figyelmen kívül maradnak a pozícionáló karakterek, ha viszont az xml:space="preserve", akkor nem.
<köny szerző='Animare Software KFT' xml:space="defult">
...
</könyv>

XML cikksorozat