Paskutinį kartą atnaujinta: 21 May, 2025

Kas yra XML?
XML (Išplečiamoji žymėjimo kalba) yra žymėjimo kalba ir failų formatas, naudojamas duomenims saugoti, perduoti ir atkurti. Ji suteikia struktūruotą požiūrį į informacijos kodavimą, todėl ji yra tiek žmonėms skaitoma, tiek mašinoms skaitoma.
XML pagrindinės savybės
1. Apibrėžta atvirojo standarto
- Sukūrė World Wide Web Consortium (W3C) 1998 m. pagal XML 1.0 specifikaciją.
- Laikosi griežtų taisyklių, kad duomenys būtų struktūruoti ir lengvai interpretuojami.
2. Projektavimo tikslai
- XML sukurta su paprastumu, bendrumu ir naudojamumu įvairiose platformose.
- Naudoja tekstinį formatą, todėl ją lengva skaityti ir redaguoti.
3. Unicode palaikymas
- XML palaiko Unicode, leidžiantį saugoti ir apdoroti tekstą keliomis kalbomis.
4. Universalumas
- Iš pradžių sukurta dokumentams, XML dabar plačiai naudojama duomenų atvaizdavimui įvairiose srityse, įskaitant žiniatinklio paslaugas, API ir konfigūracijos failus.
5. Schemos ir API
- XML struktūras galima apibrėžti naudojant Document Type Definition (DTD), XML Schema (XSD) arba Relax NG.
- Įvairios API, tokios kaip DOM (Document Object Model) ir SAX (Simple API for XML), leidžia apdoroti XML.
6. Įprasti XML naudojimo atvejai
- Duomenų mainai tarp skirtingų sistemų (pvz., žiniatinklio paslaugos, API).
- Konfigūracijos failai programinės įrangos programose.
- Struktūruotos informacijos saugojimas (pvz., RSS kanalai, SVG grafika, dokumentų formatai kaip DOCX).
- Žiniatinklio kūrimas (pvz., XHTML, SOAP, AJAX pagrindu veikiantys programos).
Dabar, kai žinote, kas yra XML, sužinokite, kaip skaityti ir redaguoti XML failus su šiuo pradedančiųjų vadovu.
XML apžvalga
1. XML pagrindinis tikslas: Serializacija
Serializacija XML reiškia:
- Duomenų saugojimą struktūruotu formatu.
- Duomenų perdavimą tarp skirtingų sistemų.
- Duomenų atkūrimą naudojamoje formoje.
Kai dvi sistemos turi keistis informacija, XML suteikia standartizuotą failo formatą tarpusavio suderinamumui. Ji veikia kaip „lingua franca“ struktūruotam duomenų mainui.
2. XML kaip žymėjimo kalba
XML yra žymėjimo kalba, tai reiškia, kad ji:
- Žymi duomenis žymomis, kad būtų aiški struktūra.
- Organizuoja informaciją hierarchiškai.
- Kategorijuoja duomenis su metaduomenimis.
Pavyzdys:
<book>
<title>XML Basics</title>
<author>John Doe</author>
</book>
Čia <book>, <title> ir <author> yra žymos, apibrėžiančios duomenų elementus.
3. XML schema (XSD) ir validacija
XML schema (XSD) apibrėžia struktūrines taisykles XML dokumentams.
XML dokumentai gali būti:
- Gerai suformuoti → Laikosi pagrindinių sintaksės taisyklių (teisingas įdėjimas, tinkami uždarymo žymenys).
- Galiojantys → Atitinka schemos taisykles (privalomi elementai, teisingi duomenų tipai).
XSD taisyklės pavyzdys:
<xs:element name="title" type="xs:string"/>
Tai užtikrina, kad <title> turi turėti teksto reikšmę.
4. XML medijos tipai (RFC 7303)
IETF RFC 7303 apibrėžia XML medijos tipus duomenų perdavimui:
- application/xml → Standartiniai XML duomenys.
- application/xml-external-parsed-entity → Išanalizuoti XML objektai.
- application/xml-dtd → XML DTD dokumentai.
XML pagrindu sukurtų formatų atveju naudojamas +xml priesaga (pvz., image/svg+xml SVG paveikslėliams).
5. XML tinklų programose (RFC 3470 / IETF BCP 70)
IETF BCP 70 (RFC 3470) aprašo geriausias praktikas XML naudojimui tinklo programose, užtikrinant sklandų duomenų tarpusavio suderinamumą tarp sistemų.
Norėdami dirbti su XML programiškai, peržiūrėkite geriausius XML analizatorius Python, Java ir JavaScript.
1. XML taikymo sritys
XML yra lanksti žymėjimo kalba, skirta duomenų mainams internete. Jos sintaksė įtakojo daugelį dokumentų formatų ir komunikacijos protokolų, todėl ji tapo pagrindine technologija daugelyje pramonės šakų.
Įprasti XML pagrindu sukurti formatai:
- Žiniatinklio kanalai: RSS, Atom
- Biuro dokumentai: Office Open XML, OpenDocument
- Grafika ir 3D modeliai: SVG, COLLADA
- Žiniatinklio technologijos: XHTML
- Duomenų mainų protokolai: SOAP, XMPP
- AJAX: Naudoja XML asinchroniniam duomenų mainui
Pramonės standartai, naudojantys XML:
- Sveikatos priežiūra: HL7 (Health Level 7)
- Kelionių pramonė: OpenTravel Alliance
- Finansai: FpML (Financial products Markup Language)
- Nekilnojamojo turto ir hipotekos: MISMO
- Vyriausybinis duomenų mainas: National Information Exchange Model
XML mokslui:
Meteorologijoje XML naudojama operacinių orų duomenų atvaizdavimui pagal IWXXM standartus. Taip pat Darwin Information Typing Architecture (DITA) yra plačiai naudojama leidybos srityje XML standartu.
Praktiškai įgyvendinant, peržiūrėkite mūsų mokymą, kaip kaip skaityti ir redaguoti XML Python, Java ir JavaScript.
2. Pagrindinė terminologija XML
Suprasti pagrindinę terminologiją XML yra būtina efektyviai dirbti su XML dokumentais.
Simbolis
XML dokumentas yra Unicode simbolių seka. XML 1.1 leidžia beveik visus Unicode simbolius, išskyrus Null simbolį (U+0000), kuris griežtai draudžiamas.
Procesorius ir programa
- XML procesorius (arba analizatorius) skaito ir analizuoja XML žymėjimą.
- Programa gauna struktūruotus duomenis iš procesoriaus ir juos apdoroja.
Žymėjimas ir turinys
XML skiria simbolius į žymėjimą ir turinį:
- Žymėjimas: Apima elementus, atributus ir entitetus (pvz.,
<tag>ir&). - Turinys: Faktinis duomenų turinys elementuose.
- CDATA sekcijos: Leidžia tekstą, kurio negalima analizuoti kaip žymėjimo, įterpiant
<![CDATA[ ... ]]>.
Žymos ir elementai
- Žymos: Žymėjimo konstrukcijos, įterptos tarp
< >.<section>(pradinė žyma)</section>(baigiamoji žyma)<line-break />(tuščia žyma)
- Elementai: Loginiai komponentai, apibrėžti žymomis.
- Pavyzdys:
<greeting>Hello, world!</greeting>
- Pavyzdys:
Atributai
Atributai suteikia metaduomenis elementams, naudojant vardų‑reikšmių poras. Pavyzdys:
<img src="image.jpg" alt="Description" />
src="image.jpg"iralt="Description"yra<img>elemento atributai.
3. Simboliai ir jų pabėgimas XML
Leistini Unicode simboliai XML
XML dokumentai leidžia tik tam tikrus Unicode simbolius, kad būtų užtikrintas teisingas analizavimas.
Leistini simboliai XML 1.0:
- Valdymo simboliai:
U+0009(Tabuliacija)U+000A(Eilučių pertrauka)U+000D(Grąžinimas)
- Teksto simboliai:
U+0020–U+D7FFU+E000–U+FFFDU+10000–U+10FFFF
XML 1.1 patobulinimai:
- Leidžiami visi U+0001–U+001F valdymo simboliai, bet jie turi būti pabėgiami.
- U+0000 (Null simbolis) vis dar draudžiamas.
4. Kodavimas XML
Dažniausi XML kodavimai:
XML palaiko Unicode pagrindu veikiančius kodavimus, įskaitant:
- UTF-8 (rekomenduojamas numatytasis)
- UTF-16 (privalo būti palaikomas visų XML analizatorių)
- ASCII, ISO-8859-X (senesni kodavimai)
Kodavimo deklaracija XML:
XML antraštėje galima nurodyti kodavimą:
<?xml version="1.0" encoding="UTF-8"?>
- Jei kodavimas nenurodytas, UTF-8 laikomas numatytuoju.
- UTF-16 reikalauja BOM (Byte Order Mark) teisingam aptikimui.
5. Specialių simbolių pabėgimas XML
Kadangi XML sintaksė rezervuoja tam tikrus simbolius, juos būtina pabėgti, kad išvengti konfliktų.
Iš anksto apibrėžtos XML entitetų lentelės:
| Simbolis | Užkoduota forma | Pavyzdys |
|---|---|---|
< (Mažiau) | < | I <3 XML → I <3 XML |
> (Daugiau) | > | x > y → x > y |
& (Ampersandas) | & | AT&T → AT&T |
' (Vienguba kabutė) | ' | "O'Reilly" → O’Reilly |
" (Dviguba kabutė) | " | She said "hello" → She said “hello” |
Skaitiniai simbolių nuorodos:
Specialiems simboliams, kurių neįmanoma įvesti, naudojamos skaitinės nuorodos:
- Dešimtainė:
中 <!-- Kinų simbolis "中" --> - Šešioliktainė:
中 <!-- Kinų simbolis "中" --> - Pavyzdys:Rodoma kaip: I <3 Jörg
<message>I <3 Jörg</message>
Dvejetainiai duomenys:
XML nepalaiko neapdoroto dvejetainio duomenų. Vietoje to naudokite Base64 kodavimą.
6. Komentarai XML
XML komentarų sintaksė:
<!-- Tai galiojantis XML komentaras -->
Komentarų taisyklės:
- Negali būti prieš XML deklaraciją.
- Negali turėti
--(dvigubo brūkšnio) viduje komentaro. - Entitetų nuorodos komentarų viduje ignoruojamos.
Pavyzdys:
<!-- Tai komentaras su < ir & simboliais -->
Išvada
XML yra esminė technologija struktūruotam duomenų mainui, maitindama žiniatinklio kanalus, biuro dokumentus, mokslinius duomenis ir pramonės standartus. Suprasdami pagrindinę XML terminologiją, kodavimo taisykles ir pabėgimo mechanizmus, galite kurti gerai suformuotus XML dokumentus, kurie veikia tinkamai įvairiose sistemose.
Laikydamiesi geriausių praktikų simbolių kodavimo ir pabėgimo, kūrėjai gali išvengti analizės klaidų ir užtikrinti suderinamumą XML pagrindu sukurtose programose.