Az XML alapjai

Hallhatott már az Extensible Markup Language-ről (XML), valamint a számos, cégeknek nyújtott előnyéről. De mi is az XML pontosan? Ez a cikk az XML alapjait ismerteti: mit jelent és hogyan működik.

Tartalom

Korrektúra, jelölés és címkék – rövid áttekintés

Miből áll az XML?

Néhány szó a szabályos adatokról

A sémákról röviden

Az átalakításokról röviden

Betekintés az XML-be a Microsoft Office rendszerében

Korrektúra, jelölés és címkék – rövid áttekintés

Az XML megértéséhez először célszerű megérteni az adatok korrektúráját. Évszázadok óta készítünk dokumentumokat, és ezzel együtt azok korrektúráit is. A tanárok például rengeteg diák dolgozatához készítenek korrektúrát. A diákokat bekezdések áthelyezésére, mondatok egyértelművé tételére, a helyesírási hibák javítására és egyéb javításokra ösztönzik. A dokumentumok korrektúrájával határozzuk meg a bennük található információ struktúráját, jelentését és vizuális megjelenését. Ha már használta a Microsoft Office Word Változások követése funkcióját, akkor a korrektúra egy számítógépes formáját alkalmazta.

Az informatikában a korrektúra jelölésekké fejlődött. A jelölés az a folyamat, amely során címkéknek (esetleg tokeneknek) nevezett kódokkal határozzuk meg az adatok struktúráját, vizuális megjelenését, és – az XML esetében – jelentését.

A jelen cikk HTML-kódja jó példa a számítógépes jelölésre. Ha áttekinti (a Microsoft Internet Explorerben kattintson a jobb gombbal a lapra, majd a Forrás megtekintése lehetőségre), olvasható szöveg és Hypertext Markup Language (HTML-) címkék (például <p> és <h2>) egyvelegét láthatja. A HTML- és XML-dokumentumok címkéi könnyen felismerhetők a csúcsos zárójelekről. A cikk forráskódjában található HTML-címkék számos különböző feladatot ellátnak, például meghatározzák a bekezdések elejét és végét (<p> ... </p>), valamint az összes kép helyét.


Miből áll az XML?

A HTML- és XML-dokumentumok címkékkel körülvett adatokat tartalmaznak, azonban ennél több közös nincs a két nyelvben. A HTML esetében a címkék az adatok kinézetét határozzák meg – itt legyen egy címsor, itt kezdődjön a bekezdés stb. Az XML esetében a címkék az adatok struktúráját és jelentését határozzák meg – az adatok milyenségét.

Az adatok struktúrájának és jelentésének körülírásával lehetővé teszi, hogy azokat bármennyiszer újra felhasználja. Ha például egy tömbnyi értékesítési adat minden elemét pontosan meghatározza, betöltheti csak azokat az elemeket, amelyekre egy értékesítési jelentéshez szüksége van, a többit pedig betöltheti egy könyvelési adatbázisba. Másképp mondva: egy rendszerrel létrehozhatja és elláthatja XML-címkékkel az adatokat, majd bármennyi rendszerben feldolgozhatja azokat hardverplatformtól és operációs rendszertől függetlenül. Ez a hordozhatóság tette az XML-t az adatcsere egyik legnépszerűbb technológiájává.

Az eljárás közben ne feledkezzen meg a következőkről:

  • Nem használhat HTML-t XML helyett. Az XML-adatokat azonban elláthatja HTML-címkékkel, és megjelenítheti egy weboldalon.

  • HTML-ben csak egy előre meghatározott címkekészletet használhat, amely minden felhasználó számára elérhető.

  • Az XML-lel bármilyen egyéni címkét létrehozhat az adatok és azok struktúrájának körülírásához. Tegyük fel például, hogy háziállatokról szeretne adatokat tárolni és megosztani. Az alábbi XML-kódot hozhatja létre:

    <?xml version="1.0"?>
    <CAT>
    <NAME>Izzy</NAME>
    <BREED>Siamese</BREED>
    <AGE>6</AGE>
    <ALTERED>yes</ALTERED>
    <DECLAWED>no</DECLAWED>
    <LICENSE>Izz138bod</LICENSE>
    <OWNER>Colin Wilcox</OWNER>
    </CAT>

Itt láthatja, hogy az XML-címkék lehetővé teszik, hogy tudja, pontosan milyen típusú adatokról van szó. Tudhatja például, hogy ezek az adatok egy macskához kapcsolódnak, így könnyen megtalálhatja a nevét, korát stb. Ettől lesz a szinte bármilyen adatstruktúra meghatározására képes XML-t „extensible”, azaz kiterjeszthető.

Azonban ne tévessze össze a kódminta címkéit egy HTML-fájl címkéivel. Ha például ezt az XML-struktúrát egy HTML-fájlba illesztené be, majd megnyitná egy böngészőben, ehhez hasonló eredményt kapna:

Izzy Siamese 6 yes no Izz138bod Colin Wilcox

A böngésző figyelmen kívül hagyja az XML-címkéket, és csak az adatokat jeleníti meg.


Néhány szó a szabályos adatokról

Előfordulhat, hogy az informatikai részleg egyik munkatársától a „szabályos” XML kifejezést hallja. A szabályos XML-fájloknak rendkívül szigorú szabályokhoz kell igazodniuk. Ha a fájl nem igazodik a ezekhez a szabályokhoz, az XML nem fog működni. Az előző kódmintában például mindegyik nyitócímkéhez tartozik egy zárócímke, így a minta megfelel a szabályos XML-ek egyik szabályának. Ha eltávolítja a címkét, és így próbálja meg megnyitni a fájlt egy Office-programban, hibaüzenetet fog látni, a program pedig nem fogja engedélyezni a fájl használatát.

Nem feltétlenül kell ismernie a szabályos XML-ekre vonatkozó szabályokat (bár könnyen megérthetők), azonban azt mindenképp észben kell tartania, hogy csak akkor oszthat meg XML-adatokat programok és rendszerek között, ha azok szabályosak. Ha nem tud megnyitni egy XML-fájlt, az valószínűleg nem szabályos.

Az XML platformfüggetlen, tehát bármilyen, XML-hez fejlesztett program olvashatja és feldolgozhatja az XML-adatokat a hardverektől vagy az operációs rendszertől függetlenül. A megfelelő XML-címkékkel például egy asztali programot is megnyithat, valamint azzal adatokat dolgozhat fel egy nagyszámítógépen. Az XML-adatok létrehozójától függetlenül Ön több Office-programban is dolgozhat ugyanazokkal az adatokkal. A hordozhatósága miatt az XML mára az egyik legnépszerűbb, adatbázisok és felhasználói számítógépek közti adatcsere-technológiává nőtte ki magát.

XML használata más programokban

A címkézett és szabályos adatokon kívül az XML-rendszerek általában két további összetevőből állnak: sémákból és átalakításokból. Az alábbi szakaszok ezen összetevők működését ismertetik.


A sémákról röviden

Ne ijedjen meg a „séma” kifejezéstől. A séma mindössze egy XML-fájl, amely az XML-adatfájlok tartalmával kapcsolatos szabályokat tartalmazza. A sémafájlok általában .xsd fájlkiterjesztéssel rendelkeznek, az XML-adatfájlok pedig a .xml kiterjesztést használják.

A sémákkal a programok adatokat érvényesíthetnek. Ők adják az adatstrukturálás keretrendszerét, és biztosítják annak értelmezhetőségét a létrehozó és a többi felhasználó számára. Ha például egy felhasználó érvénytelen adatokat ad meg, például szöveget egy dátummezőben, a program felszólíthatja a felhasználót, hogy írja be a helyes adatokat. Amíg az XML-fájlok adatai igazodnak az adott séma szabályaihoz, minden XML-formátumot támogató program használhatja a sémát az adatok olvasásához, értelmezéséhez és feldolgozásához. Például, ahogyan az alábbi ábrán látszik, az Excel érvényesítheti a <CAT>-adatokat a CAT- (MACSKA-) séma szerint.

A sémák segítségével tudják az alkalmazások megosztani az adatokat egymás közt.

A sémák témaköre bonyolult, a létrehozásuk ismertetése pedig túlmutat a cikk céljain. (Az informatikai részleg valószínűleg tud ebben segíteni.) Azonban segíthet, ha tudja, hogyan néznek ki. Az alábbi séma a <CAT> ... </CAT> (<MACSKA> ... </MACSKA>) címkekészlet szabályait definiálja.

<xsd:element name="CAT">  
<xsd:complexType>
<xsd:sequence>
<xsd:element name="NAME" type="xsd:string"/>
<xsd:element name="BREED" type="xsd:string"/>
<xsd:element name="AGE" type="xsd:positiveInteger"/>
<xsd:element name="ALTERED" type="xsd:boolean"/>
<xsd:element name="DECLAWED" type="xsd:boolean"/>
<xsd:element name="LICENSE" type="xsd:string"/>
<xsd:element name="OWNER" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>

Ne aggódjon, ha nem ért mindent a példában. Csak tartsa észben a következőket:

  • A mintaséma sortételeit deklarációknak nevezzük. Ha további információra van szüksége egy állattal kapcsolatban, például kíváncsi a színére vagy a megkülönböztető jeleire, az informatikai részleg hozzáadhat egy deklarációt a sémához. Az XML-rendszert az üzleti igényeihez igazíthatja.

  • A deklarációk páratlan vezérlést nyújtanak az adatstruktúra felett. Az <xsd:sequence> deklaráció például azt jelenti, hogy a <NAME> és <BREED> címkékhez hasonló címkéknek a fent ismertetett sorrendben kell szerepelniük. A deklarációk a felhasználók által megadható adatok típusát is vezérlik. A fenti sémában például pozitív értéket kell megadni a macska életkoránál, és logikai (IGAZ vagy HAMIS) értéket az ALTERED (MEGVÁLTOZOTT) és a DECLAWED (KAROMTALANÍTOTT) címkéknél.

  • Amikor egy XML-fájl adatai megfelelnek egy séma szabályainak, az adatokat érvényesnek nevezzük. Az XML-adatfájlok egy adott sémának megfelelően történő ellenőrzését (logikus módon) érvényesítésnek nevezzük. A sémák nagy előnye, hogy megelőzhetik az adatok sérülését. Ezen kívül megkönnyítik a sérült adatok keresését, mivel az XML leáll, ha hibát észlel.


Az átalakításokról röviden

Ahogy korábban említettük, az XML az adatok hatékony használatában és újbóli felhasználásában is segít. Az adatok újbóli felhasználásához alkalmazott mechanizmus az Extensible Stylesheet Language Transformation (XSLT), egyszerűbb nevén átalakítás.

Az átalakításokkal (az informatikai részleg) háttérrendszerek, például adatbázisok között is végezhet adatcserét. Tegyük fel például, hogy az „A” adatbázis egy, az értékesítési részlegnek megfelelő táblázatszerkezetben tárolja az értékesítési adatokat. A „B” adatbázisban egy, a könyvelési részleg igényeire szabott táblázatszerkezetben találhatók a bevételek és a kiadások adatai. A „B” adatbázis egy átalakítással elfogadhatja az „A” adatait, és a megfelelő táblázatokba írhatja azokat.

Egy adatfájl, séma, és átalakítás együttese alkotják az alapvető XML-rendszert. Az alábbi ábra ismerteti az ilyen rendszerek általános működését. A program érvényesíti az adatfájlt a sémának megfelelően, majd egy átalakítással megjeleníti azt tetszőleges számú felhasználható módon. Ebben az esetben az átalakítás egy weboldal táblázatába tölti fel az adatokat.

Alapvető XML fájlszerkezet egy sémával és egy átalakítóval

Az alábbi kódminta az átalakítás írásának egyik módját ismerteti. Elsőként betölti a <CAT> (<MACSKA>) adatait egy weboldalon. A minta nem azt mutatja meg, hogy hogyan írhat átalakítást, hanem az átalakítás által felvehető egyik formát hivatott illusztrálni.

<?xml version="1.0"?>
<xsl:stylesheet version="1.0">
<TABLE>
<TR>
<TH>Name</TH>
<TH>Breed</TH>
<TH>Age</TH>
<TH>Altered</TH>
<TH>Declawed</TH>
<TH>License</TH>
<TH>Owner</TH>
</TR>
<xsl:for-each select="CAT">
<TR ALIGN="LEFT" VALIGN="TOP">
<TD>
<xsl:value-of select="NAME"/>
</TD>
<TD>
<xsl:value-of select="BREED"/>
</TD>
<TD>
<xsl:value-of select="AGE"/>
</TD>
<TD>
<xsl:value-of select="ALTERED"/>
</TD>
<TD>
<xsl:value-of select="DECLAWED"/>
</TD>
<TD>
<xsl:value-of select="LICENSE"/>
</TD>
<TD>
<xsl:value-of select="OWNER"/>
</TD>
</TR>
</xsl:for-each>
</TABLE>

Ezen a mintán láthatjuk, hogy hogyan mutat egy átalakítástípus kódolás után. Azonban tartsa észben, hogy egyszerű angol kifejezésekkel is körülírhatja, mit szeretne kinyerni az adatokból. Megmondhatja például az informatikai részlegnek, hogy adott régiók értékesítési adatait szeretné kinyomtatni az elmúlt két évre, „és szeretné, ha így nézne ki.” Az informatikai részleg megírhatja (vagy módosíthatja) úgy az átalakítást, hogy ezt a feladatot lássa el.

Még kézenfekvőbbé teszi őket, hogy a Microsoft és egyre több további forgalmazó is létrehoz átalakításokat különféle munkákhoz. A jövőben valószínűleg letölthetők lesznek az igényeinek megfelelő, vagy szabadon módosítható átalakítások. Ez azt jelenti, hogy az XML idővel olcsóbb lesz.


Betekintés az XML-be a Microsoft Office rendszerében

Az Office professzionális verziói kiterjedt XML-támogatást nyújtanak. A Microsoft Office 2007 rendszere óta a Microsoft Office olyan XML-alapú fájlformátumokat használ, mint a .docx, .xlsx, és .pptx. Mivel az XML az adatokat bináris helyett szöveges formátumban tárolja, az ügyfelek meghatározhatják a saját sémáikat és több módon használhatják fel az adatokat – és még jogdíjat sem kell fizetniük. További információ az új formátumokról: Open XML Formats and file name extensions (Nyílt XML formátumok és fájlnévkiterjesztések). További előnyök:

  • Kisebb fájlméretek. Az új formátum a ZIP és hasonló tömörítési technológiáknak köszönhetően az Office korábbi verzióiban használt bináris formátumokhoz képest akár 75 százalékkal csökkenti a fájlméretet.

  • Könnyebb adat-helyreállítás és nagyobb biztonság. Az XML emberi olvasásra alkalmas, így a fájlok sérülés esetén is megnyithatók a Microsoft Jegyzettömbben vagy egy másik szövegolvasóban, ami lehetővé teszi, hogy legalább az adatok egy része helyreállítható legyen. Az új fájlok biztonságosabbak is, mert nem rendelkeznek Visual Basic for Applications (VBA-) kóddal. Ha az új formátummal hoz létre sablonokat, az ActiveX-vezérlők és a VBA-makrók a fájl egy különálló, biztonságosabb szakaszába kerülnek. Emellett a Dokumentumfelügyelővel és hasonló eszközökkel eltávolíthatja a személyes adatokat. További információ a Dokumentumfelügyelő használatáról: Remove hidden data and personal information from Office documents (Rejtett adatok és személyes adatok eltávolítása az Office-dokumentumokból).

Eddig jó, de mi van akkor, ha séma nélküli XML-adatokkal dolgozunk? Az XML-t támogató Office-programok saját megoldásokkal segítik az adatokkal való munkát. Ha például megnyit egy séma nélküli XML-fájlt, az Excel kikövetkezteti a sémát. A program ezután felkínálja, hogy betölti az adatokat egy XML-táblázatba. Az XML-listákkal és -táblázatokkal rendezheti és szűrheti az adatokat, valamit különböző számításokat adhat hozzájuk.

Az XML-eszközök engedélyezése az Office-ban

A Fejlesztőeszközök lap alapértelmezés szerint nem jelenik meg, de hozzáadható a menüszalaghoz, ha XML-parancsokat szeretne használni az Office-ban.

Ismeretek bővítése
Oktatóanyagok megismerése
Új szolgáltatások listájának lekérése
Részvétel az Office Insider programban

Hasznos volt az információ?

Köszönjük a visszajelzését!

Köszönjük visszajelzését. Jobbnak látjuk, ha az Office egyik támogatási szakemberéhez irányítjuk.

×