Legutóbb frissítve: 2025. május 21

Mi az XML?
XML (Kiterjeszthető jelölőnyelv) egy jelölőnyelv és fájlformátum, amelyet adatok tárolására, továbbítására és újraépítésére használnak. Strukturált megközelítést biztosít az információk kódolásához, így az ember és a gép számára egyaránt olvasható.
Az XML főbb jellemzői
1. Nyílt szabványok által meghatározva
- 1998-ban a World Wide Web Consortium (W3C) hozta létre a XML 1.0 specifikáció keretében.
- Szigorú szabályokat követ, hogy az adatok strukturáltak és könnyen értelmezhetők legyenek.
2. Tervezési célok
- Az XML-t egyszerűség, általánosság és használhatóság szempontjából tervezték különböző platformokon.
- Szövegalapú formátumot használ, ami könnyen olvasható és szerkeszthető.
3. Unicode támogatás
- Az XML támogatja a Unicode-t, lehetővé téve több nyelvű szöveg tárolását és feldolgozását.
4. Sokoldalúság
- Kezdetben dokumentumokhoz készült, ma már széles körben használják adatábrázolásra különböző területeken, beleértve a webszolgáltatásokat, API-kat és konfigurációs fájlokat.
5. Séma és API-k
- Az XML struktúrákat Document Type Definition (DTD), XML Schema (XSD) vagy Relax NG segítségével lehet meghatározni.
- Különféle API-k, mint a DOM (Document Object Model) és a SAX (Simple API for XML) teszik lehetővé az XML feldolgozást.
6. Az XML gyakori felhasználási területei
- Adatcsere különböző rendszerek között (pl. webszolgáltatások, API-k).
- Konfigurációs fájlok szoftveralkalmazásokban.
- Strukturált információk tárolása (pl. RSS hírcsatornák, SVG grafikák, dokumentumformátumok, mint a DOCX).
- Webfejlesztés (pl. XHTML, SOAP, AJAX-alapú alkalmazások).
Most, hogy tudod, mi az XML, tanuld meg, hogyan olvass és szerkessz XML fájlokat ebben a kezdőknek szóló útmutatóban.
XML áttekintés
1. Az XML fő célja: sorosítás
Az XML sorosítás azt jelenti:
- Adatok tárolása strukturált formátumban.
- Adatok továbbítása különböző rendszerek között.
- Adatok újraépítése használható formában.
Amikor két rendszernek információt kell cserélnie, az XML egy standardizált fájlformátumot biztosít az interoperabilitáshoz. Ez egy „lingua franca” a strukturált adatcsere számára.
2. Az XML jelölőnyelvként
Az XML egy jelölőnyelv, ami azt jelenti, hogy:
- Címkézi az adatokat címkékkel a tiszta struktúra érdekében.
- Hierarchikusan szervezi az információkat.
- Metaadatokkal kategorizálja az adatokat.
Példa:
<book>
<title>XML Basics</title>
<author>John Doe</author>
</book>
Itt a <book>, <title> és <author> címkék, amelyek adatmezőket definiálnak.
3. XML séma (XSD) és validálás
Az XML séma (XSD) strukturális szabályokat határoz meg az XML dokumentumokhoz.
Az XML dokumentumok lehetnek:
- Jól formált → Alapvető szintaxis szabályoknak megfelel (helyes beágyazás, megfelelő záró címkék).
- Érvényes → Megfelel a séma szabályainak (kötelező elemek, helyes adattípusok).
XSD szabály példa:
<xs:element name="title" type="xs:string"/>
Ez biztosítja, hogy a <title> szöveges értéket tartalmazzon.
4. XML média típusok (RFC 7303)
Az IETF RFC 7303 meghatározza az XML média típusokat adatátvitelhez:
- application/xml → Standard XML adat.
- application/xml-external-parsed-entity → Feldolgozott XML entitások.
- application/xml-dtd → XML DTD dokumentumok.
XML-alapú formátumoknál a +xml utótagot használják (pl. image/svg+xml a SVG képekhez).
5. XML hálózati alkalmazásokban (RFC 3470 / IETF BCP 70)
Az IETF BCP 70 (RFC 3470) a legjobb gyakorlatokat írja le az XML hálózati alkalmazásokban való használatra, biztosítva a zökkenőmentes adatinteroperabilitást a rendszerek között.
Az XML programozott feldolgozásához tekintsd meg a legjobb XML elemzők Python, Java és JavaScript számára.
1. Az XML alkalmazásai
Az XML egy rugalmas jelölőnyelv, amelyet adatcsere az interneten céljából terveztek. Szintaxisa számos dokumentumformátumot és kommunikációs protokollt befolyásolt, így alapvető technológiává vált számos iparágban.
Gyakori XML-alapú formátumok:
- Webes hírcsatornák: RSS, Atom
- Irodai dokumentumok: Office Open XML, OpenDocument
- Grafika és 3D modellek: SVG, COLLADA
- Webtechnológiák: XHTML
- Adatcsere protokollok: SOAP, XMPP
- AJAX: XML-t használ aszinkron adatcseréhez
Iparági szabványok XML használatával:
- Egészségügy: HL7 (Health Level 7)
- Utazási ipar: OpenTravel Alliance
- Pénzügy: FpML (Financial products Markup Language)
- Ingatlan és jelzálog: MISMO
- Kormányzati adatcsere: National Information Exchange Model
XML a tudományban:
A meteorológiában az XML-t operációs időjárási adatok ábrázolására használják az IWXXM szabványok szerint. Hasonlóképpen a Darwin Information Typing Architecture (DITA) egy széles körben használt XML szabvány a kiadói iparban.
A gyakorlati megvalósításhoz nézd meg a hogyan olvass és szerkessz XML-t Pythonban, Java-ban és JavaScriptben útmutatónkat.
2. Az XML kulcsfontosságú terminológiája
Az XML alapvető terminológiájának megértése elengedhetetlen a dokumentumok hatékony használatához.
Karakter
Egy XML dokumentum Unicode karakterek sorozata. Az XML 1.1 szinte minden Unicode karaktert engedélyez, kivéve a Null karaktert (U+0000), amely szigorúan tiltott.
Feldolgozó és alkalmazás
- Az XML feldolgozó (vagy parser) olvassa és elemzi az XML jelölést.
- Az alkalmazás a feldolgozótól kapott strukturált adatot felhasználja.
Jelölés és tartalom
Az XML a karaktereket jelölésre és tartalomra osztja:
- Jelölés: Elemeket, attribútumokat és entitásokat tartalmaz (pl.
<tag>és&). - Tartalom: Az elemekben ténylegesen tárolt adat.
- CDATA szekciók: Olyan szöveget engednek, amelyet nem kell a parsernek jelölésként értelmeznie,
<![CDATA[ ... ]]>között.
Címkék és elemek
- Címkék:
< >közé zárt jelölőelemek.<section>(nyitócímke)</section>(zárócímke)<line-break />(üres elemcímke)
- Elemek: A címkék által definiált logikai komponensek.
- Példa:
<greeting>Hello, world!</greeting>
- Példa:
Attribútumok
Az attribútumok metaadatot adnak az elemekhez név-érték párok formájában. Példa:
<img src="image.jpg" alt="Description" />
A src="image.jpg" és az alt="Description" attribútumok a <img> elemhez tartoznak.
3. Karakterek és escape-olás az XML-ben
Érvényes Unicode karakterek az XML-ben
Az XML dokumentumok csak meghatározott Unicode karaktereket engedélyeznek a helyes feldolgozás érdekében.
Engedélyezett karakterek az XML 1.0-ban:
- Vezérlő karakterek:
U+0009(Tab)U+000A(Line Feed)U+000D(Carriage Return)
- Szövegkarakterek:
U+0020–U+D7FFU+E000–U+FFFDU+10000–U+10FFFF
XML 1.1 fejlesztések:
- Engedélyezi az összes U+0001–U+001F vezérlő karaktert, de escape-olni kell őket.
- U+0000 (Null karakter) továbbra is tiltott.
4. Kódolás az XML-ben
Gyakori XML kódolások
Az XML Unicode-alapú kódolásokat támogat, többek között:
- UTF-8 (ajánlott alapértelmezett)
- UTF-16 (minden XML parsernek támogatnia kell)
- ASCII, ISO-8859-X (örökölt kódolások)
Kódolás deklarációja az XML-ben
Az XML fejlécben megadható a kódolás:
<?xml version="1.0" encoding="UTF-8"?>
- Ha nincs kódolás megadva, UTF-8 a feltételezett.
- UTF-16 esetén BOM (Byte Order Mark) szükséges a helyes felismeréshez.
5. Speciális karakterek escape-olása az XML-ben
Mivel az XML szintaxis fenntart bizonyos karaktereket, ezeket escape-olni kell, hogy elkerüljük az ütközéseket.
Előre definiált XML entitások:
| Karakter | Escapelt forma | Példa |
|---|---|---|
< (Kisebb mint) | < | I <3 XML → I <3 XML |
> (Nagyobb mint) | > | x > y → x > y |
& (Ampersand) | & | AT&T → AT&T |
' (Egyes idézőjel) | ' | "O'Reilly" → O’Reilly |
" (Dupla idézőjel) | " | She said "hello" → She said “hello” |
Numerikus karakterhivatkozások:
Speciális karakterekhez, amelyeket nem lehet beírni, numerikus hivatkozásokat használunk:
- Decimális:
中 <!-- Chinese character "中" --> - Hexadecimális:
中 <!-- Chinese character "中" --> - Példa:Megjelenik: I <3 Jörg
<message>I <3 Jörg</message>
Bináris adatok kezelése:
Az XML nem támogat nyers bináris adatot. Ehelyett Base64 kódolást kell használni.
6. Megjegyzések az XML-ben
XML megjegyzés szintaxis:
<!-- This is a valid XML comment -->
XML megjegyzések szabályai:
- Nem jelenhet meg az XML deklaráció előtt.
- Nem tartalmazhat
--(kettős kötőjelet) a megjegyzésen belül. - Entitás hivatkozásokat a megjegyzésben figyelmen kívül hagyják.
Példa:
<!-- This is a comment with < and & symbols -->
Összegzés
Az XML egy alapvető technológia a strukturált adatcsere számára, amely webes hírcsatornákat, irodai dokumentumokat, tudományos adatokat és iparági szabványokat táplál. A kulcsfontosságú XML terminológia, kódolási szabályok és escape-módszerek megértése biztosítja a jól formált XML dokumentumokat, amelyek helyesen működnek különböző rendszerekben.
A karakterkódolás és escape-olás legjobb gyakorlatai követésével a fejlesztők elkerülhetik a feldolgozási hibákat és biztosíthatják a kompatibilitást az XML-alapú alkalmazásokban.