XML oktatóanyag kezdőknek
Mi az XML?
XML jelentése eXfeszíthető MArkupe Lnyelv. Ez egy nyelv (nem> programozási nyelv), amely a jelölést használja és kiterjesztheti. Ebből származik Standard Gáltalánosított MArkupe Lnyelv (SGML). Az XML DTD-ket is használ (DFoglalkozása Type Definitions) az XML dokumentum szerkezetének meghatározásához.
Az XML nem számítási műveletek és algoritmusok kezelésére szolgál. Így az XML nem programozási nyelv. A fő cél az adatok szállítása, nem információ megjelenítése. Az XML áthidalja az emberi olvashatóság és a gépi olvashatóság közötti szakadékot. A HTML címkékkel ellentétben az XML címkék önleíró jellegűek.
Az XML nyílt formátum. Az XML fájlnév-kiterjesztése .xml
Az XML története
Az XML 1996-ban kezdődött, és 1998-ban jelent meg először. World Wide Web Conzorcium (W3C) a fejlesztője XML, és ez lett a W3C ajánlás A 1998.
Az XML-nek két változata van.
- XML 1.0
- XML 1.1
XML 1.1 a legújabb verzió. Még, XML 1.0 a leggyakrabban használt verzió.
Az XML szerkesztői a következők:
- Tim Bray,
- Jean Paoli,
- CM Sperberg,
- Eve Maler,
- François Yergeau.
XML-szolgáltatások
Íme az XML néhány fontos funkciója:
- Bővíthető és ember által is olvasható.
- Platformtól és nyelvtől független.
- Megőrzi a fehér teret.
- Általános egyszerűség.
- Önleíró jelleg.
- Elválasztja az adatokat a HTML-től.
- Az XML címkék nincsenek előre definiálva. Meg kell határoznia a testreszabott címkéket.
- Az XML-t adatok hordozására tervezték, nem pedig az adatok megjelenítésére.
- Az XML jelölőkódja könnyen érthető az ember számára.
- A jól strukturált formátum könnyen olvasható és írható a programokból.
- Az XML egy bővíthető jelölőnyelv, mint a HTML.
XML kódolás
A kódolás a Unicode-karakterek bináris megjelenítésére való átalakítása. Az UTF az XML kódoláshoz használatos. UTF jelentése UCS (FKR jelentése Uuniversális Chármas Sés) Tátalakulás Format.
Főleg kétféle UTF-kódolás létezik.
- UTF-8: Az UTF-8 8 bitet használ a karakterek megjelenítésére.
- UTF-16
Példa:
<?xml version="1.0" encoding="UTF-8"?>
16 bitet használ a karakterek ábrázolására.
Példa:
<?xml version="1.0" encoding="UTF-16"?>
Használhat kódolást az XML deklaráción belül. Az XML alapértelmezett kódolása az UTF-8.
XML szintaxis
Az alábbi kódszegmens az alapvető XML szintaxist mutatja.
<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
<child>
<subchild>.....</subchild>
</child>
</root>
XML nyilatkozat
Az XML deklaráció az XML verzióból, karakterkódolásból és/vagy önálló állapotból áll. A nyilatkozat nem kötelező.
Szintaxis az XML-deklarációhoz
Az alábbi kódszegmens az XML deklaráció szintaxisát mutatja.
<?xml version="version_number," encoding="character_encoding" standalone="yes_or_no" ?>
XML deklarációs szabályok
Az alábbi XML deklarációs szabályok találhatók.
- Ha jelen van az XML-deklaráció, akkor annak kell először megjelennie.
- Az XML deklaráció megkülönbözteti a kis- és nagybetűket, és kisbetűvel kell kezdődnie <?xml.
- Nincs zárócímke.
Példa XML deklarációra
A következő kódszegmens egy XML-deklaráció példáját mutatja be.
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
XML megjegyzések
A megjegyzések nem kötelezőek. Megjegyzések hozzáadása segít megérteni a dokumentum tartalmát.
Szintaxis XML megjegyzésekhez
Egy megjegyzés ezzel kezdődik <!– és véget ér: ->.
A következő kódszegmens az XML megjegyzések szintaxisát mutatja.
<!-- Add your comment here -->
XML címkék és elemek
A címkék párként működnek, kivéve a deklarációkat. Minden címkepár egy nyitócímke (Más néven a kezdőcímke), Valamint egy záró címke (Más néven a végcímke).
A címkék nevei mellékelve vannak <>. Egy adott címkepár esetén a kezdő és záró címkéknek azonosnak kell lenniük, kivéve a záró címkét / miután a <.
<name>...</name>
A nyitó és záró címke között mindenre úgy hivatkozunk, mint tartalom.
A nyitó címkét, a tartalmat és a záró címkét együttesen an elem.
Opening tag + content + closing tag = an element
Jegyzet: Az elemek attribútumokat is tartalmazhatnak. Hamarosan megtanulod a tulajdonságokat.
Tekintsük az alábbi elemet.
<age>20</age>
A fenti elemben
- kor a az elem neve.
Megjegyzés: Címke neve más néven an elem or elem neve.
- – nyitócímke
- 25 - tartalom
- – zárócímke.
Ha nincs tartalom a címkék között, ahogy az alább látható, akkor erre a következőképpen hivatkozunk: üres címkék.
<result></result>
XML címke- és elemszabályok
A következő lista XML-címkéket és elemszabályokat mutat be.
- A címkék megkülönböztetik a kis- és nagybetűket.
Példa:
Helyes:
<age>20</age>
Rossz:
<age>20</Age>
Megjegyzés: AGE, Kor, és a kor három különböző név az XML-ben.
- Minden XML dokumentumnak egyetlen gyökérelemet kell tartalmaznia.
- Minden elemnek rendelkeznie kell záró címkével (kivéve a deklarációkat).
- A címke nevének betűvel vagy aláhúzásjellel kell kezdődnie, és nem kezdődhet a XML.
- A címke neve tartalmazhat betűket, számokat, kötőjeleket, aláhúzásjeleket és pontokat. A kötőjelek aláhúzás, és a pont az egyetlen megengedett írásjel.
- A címke neve nem tartalmazhat szóközt.
- Minden elemet megfelelően be kell ágyazni.
Példa:
Helyes:
<b><u>This text is bold and italic</u></b>
Rossz:
<b><u>This text is bold and italic.</b></u>
XML attribútumok
Az elem attribútuma a címke neve után kerül elhelyezésre a kezdő címkében. Egy elemhez több attribútumot is hozzáadhat különböző attribútumnevekkel.
Tekintsük az alábbi XML dokumentumot.
<company name="ABC Holdings" location="London">
<chairman>Mr. John</chairman>
<gm>Mr. Wood</gm>
</company>
Két attribútum van a vállalat elem, pl név és a elhelyezkedés.
Tanulmányozzuk a név tulajdonság,
- name=”ABC Holdings” – attribútum
- név – attribútum neve
- ABC Holdings – attribútum értéke
Megjegyzések: Egy attribútum neve an is ismert tulajdonság.
Vegye figyelembe azt is, hogy a fenti példában a vállalat a gyökér elem.
XML attribútumszabályok
Az alábbi lista XML attribútumszabályokat mutat be.
- Az attribútumok értékének idézőjelben kell lennie.
- Egy elem nem tartalmazhat több azonos nevű attribútumot.
Attribútum versus elem
Még mindig zavarban van az attribútum és az elem közötti különbséget illetően? Íme egy másik példa.
Tekintsük az alábbi A és B dokumentumokat.
A dokumentum:
<teacher subject="English">
<name>Mr. John</name>.
<qualification>Graduate</qualification>
</teacher>
B dokumentum:
<teacher>
<subject>English</subject>
<name>Mr. John</name>
<qualification>Graduate</qualification>
</teacher>
Az A dokumentumban a tárgy egy tulajdonság.
A B dokumentumban a tárgy egy elem.
XML entitások
Mik azok az XML entitások?
Egyszerűen fogalmazva, az entitások a speciális karakterek megjelenítésének egyik módja. Az entitásokat más néven egység referenciák.
Miért van szükség XML entitásokra?
Egyes karakterek (pl ", & <és így tovább) XML-ben vannak lefoglalva. Úgy emlegetik őket speciális karakterek és más célra közvetlenül nem használhatók fel.
Például a < és a > szimbólumok a használt címkék. Nem írhat be közvetlenül a billentyűzetről a következőhöz: kevesebb, mint és a nagyobb, mint jelek. Ehelyett entitásokat kell használnia.
Az alábbi táblázat néhány népszerű XML-entitást mutat be.
| Karakter | Leírás | Entitás neve | Használat |
|---|---|---|---|
| " | Idézőjel (kettős idézőjel) | quot | " |
| & | Jel | amp | & |
| " | Aposztróf (egy idézet) | után | ' |
| < | Less mint jel | lt | < |
| > | Nagyobb, mint a jel | gt | > |
Példa:
<friend>
<name>My friends are Alice & Jane.</name>
</friend>
HTML versus XML
Hasonlóságok a HTML és az XML között
A következő lista a HTML és az XML közötti hasonlóságokat mutatja be.
- Mindkettő nyílt formátum.
- Mindkettő jelölőnyelv.
- Mindkettő címkéket és attribútumokat használ a tartalom leírására.
A HTML és az XML közötti különbségek
Bár az XML olyan, mint a HTML, az XML nem helyettesíti a HTML-t. A HTML és az XML között is van néhány jelentős különbség.
A következő lista táblázat a HTML és az XML összehasonlítását mutatja be.
| HTML | XML | |
|---|---|---|
| állványok | Hipertext jelölőnyelv | Bővíthető jelölőnyelv |
| A nyelv típusa | Egy előre meghatározott jelölőnyelv. | Keretrendszer a jelölőnyelvek meghatározásához. |
| Szerkezeti részletek | Nem biztosított. | Biztosítani. |
| Cél | Adatok megjelenítésére szolgál. | Adatszállításra szolgál |
| Hajtott | Formátum vezérelt. | Tartalomvezérelt. |
| Természet | Statikus természete van. | Dinamikus természetű. |
| Címke típusa | Előre meghatározott címkék. | Felhasználó által meghatározott címkék. |
| Címkekorlát | Korlátozott számban elérhető címkék. | A címkék bővíthetők. |
| Záró címkék | Nem szükséges záró címkéket használni (de javasolt a záró címkék használata). | A záró címkék kötelezőek. |
| Névtér támogatás | Nem támogatott. | Támogatott. |
| Az eset érzékenysége | A címkék nem különböztetik meg a kis- és nagybetűket. | A címkék megkülönböztetik a kis- és nagybetűket. |
| fehér űr | A fehér szóköz nem őrizhető meg (a szóköz figyelmen kívül hagyható). | A szóköz megmarad (a szóköz nem hagyható figyelmen kívül). |
| Befejezés JavaForgatókönyv | Nincs szükség extra alkalmazásra. | DOM implementációra van szükség. |
| Kód beágyazása | Nem feltétlenül szükséges. | Szükséges. |
| hibák | Figyelmen kívül hagyhatja az apró hibákat. | A hibák nem megengedettek. |
| Fájlnév kiterjesztés | . Html or . Htm | . Xml |
| Méret | Viszonylag nagy. | Viszonylag kicsi. |
| Idézetek | Az attribútumértékekhez nem szükséges idézőjel. | XML attribútumértékekhez szükséges. |
| Objektum támogatás | Natív objektum támogatást kínál. | A tárgyakat konvenciókkal kell kifejezni. |
| Null támogatás | Natív módon felismeri a null értéket. | Az xsi:nil-t kell használni az elemeken. |
| A döntések formázása | Közvetlen leképezést biztosít az alkalmazásadatokhoz. | Jelentősebb erőfeszítést igényel. |
| Tanulási görbe | Less meredek tanulási görbe az XML-hez képest. | Meredek tanulási görbe. |
| weboldal | https://html.spec.whatwg.org/ | https://www.w3.org/TR/xml11/ |
Alapvető HTML szintaxis
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
</body>
</html>
Alapvető XML szintaxis
<?xml version = "1.0" encoding = "UTF-8" ?>
<root>
<child>
<subchild>.....</subchild>
</child>
</root>
Ugyanez a példa HTML-lel és XML-lel
HTML-lel
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<p>Book</p>
<p>Name: Anna Karenina</p>
<p>Author: Leo Tolstoy</p>
<p>Publisher: The Russian Messenger</p>
</body>
</html>
XML-lel
<?xml version = "1.0" encoding = "UTF-8" ?>
<book>
<name>Anna Karenina</name>
<author>Leo Tolstoy</author>
<publisher>The Russian Messenger</publisher>
</book>
JSON versus XML
Hasonlóságok a JSON és az XML között
Az alábbi lista a JSON és az XML közötti hasonlóságokat mutatja.
- Mindkettő nyílt formátum.
- Mindkettő önmagát írja le.
- Mindkettő hierarchikus felépítésű.
- Mindkettő több programozási nyelven is értelmezhető és használható.
A JSON és az XML közötti különbségek
Számos különbség van az XML és a JSON között is.
Az alábbi táblázatok a JSON és az XML összehasonlítását mutatják be.
| JSON | XML | |
|---|---|---|
| állványok | JavaScript objektum jelölése | Bővíthető jelölőnyelv |
| Meghosszabbítva | JavaForgatókönyv | SGML |
| Adattárolás | Kulcs-érték párokként tárolt adatok. | Fastruktúraként tárolt adatok. |
| Névterek | Nincs támogatás a névterekhez. | Támogatja a névtereket. |
| Hozzászólások | Megjegyzések hozzáadása nem támogatott. | Megjegyzéseket fűzhet hozzá. |
| Az adatok hozzáférhetősége | Könnyen elérhető JSON-objektumként. | Az adatokat elemezni kell. |
| Metaadatok | A metaadatok hozzáadása nem támogatott. | Tud írni metaadatokat. |
| Típusai | JSON típusok: karakterlánc, szám, tömb, logikai. | Minden XML adatnak ilyennek kell lennie húrok. |
| Támogatás adattípusai | Támogatja szöveg és a szám csak adattípusok. | Számos adattípus támogatása (szöveg, számok, képek stb.) |
| Array támogatása | Több támogatás a tömbökhöz az XML-hez képest. | Nincs vagy kevesebb a tömbök támogatása. |
| Az objektum támogatása | Natív támogatás az objektumhoz. | Az objektumot konvenciókkal kell kifejezni. |
| AJAX eszközkészlet támogatás | Támogatott. | Nem teljesen támogatott. |
| Értékek lekérése | Egyszerű. | Nehéz. |
| Deszerializálás/szerializálás | Teljesen automatizált. | A fejlesztőknek írniuk kell JavaSzkript kódja. |
| Böngésző támogatás | A legtöbb böngésző támogatja. | A böngészők közötti XML-elemzés bonyolult lehet. |
| kódolás | Csak az UTF-8 kódolást támogatja. | Támogatja a különböző kódolásokat. |
| Megjelenítési képességek | Nincs megjelenítési lehetőség. | Megjelenítési lehetőségeket kínál. |
| Dokumentum mérete | Kisebb, mint az XML. | Nagy, mint a JSON. |
| Fájlnév kiterjesztés | .json | . Xml |
| Biztonság | Less rögzítve. | Biztonságosabb, mint a JSON. |
| Könnyű elolvasni | Viszonylag könnyű. | Viszonylag nehéz. |
| Tanulási görbe | Könnyű megtanulni. | Meredek tanulási görbe. |
| weboldal | https://www.json.org/json-en.html | https://www.w3.org/TR/xml11/ |
Alapvető JSON szintaxis
{string:value, .......}
Ugyanez a példa JSON- és XML-lel
JSON-nal
{"books":[
{"name":"Anna Karenina", "author":"Leo Tolstoy"},
{"name":"One Hundred Years of Solitude", "author":"Gabriel Garcia Marquez"},
{"name":"The Great Gatsby", "author":"Scott Fitzgerald"},
{"name":"Invisible Man", "author":"Ralph Ellison"}
]}
XML-lel
<?xml version = "1.0" encoding = "UTF-8" ?>
<books>
<book>
<name>Anna Karenina</name>
<author>Leo Tolstoy</author>
</book>
<book>
<name>One Hundred Years of Solitude</name>
<author>Gabriel Garcia Marquez</author>
</book>
<book>
<name>The Great Gatsby</name>
<author>Scott Fitzgerald</author>
</book>
<book>
<name>Invisible Man</name>
<author>Ralph Ellison</author>
</book>
</books>
XML DTD
Mi az a DTD?
A DTD jelentése DFoglalkozása Type Ddefiníció. Egy XML-dokumentum szerkezetét határozza meg néhány jogi elem felhasználásával. Az XML DTD opcionális.
DTD szabályok
A következő lista a DTD szabályokat mutatja.
- Ha jelen van DTD, akkor annak a dokumentum elején kell megjelennie (a DTD felett csak az XML deklaráció jelenhet meg).
- Az elem deklarációnak an-al kell kezdődnie ! Mark.
- A gyökérelem DTD nevének és elemtípusának meg kell egyeznie.
Példák a DTD-re
Példa egy belső DTD-re:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE student [
<!ELEMENT student (firstname,lastname,school)>
<!ELEMENT firstname (#PCDATA)>
<!ELEMENT lastname (#PCDATA)>
<!ELEMENT school (#PCDATA)>
]>
<student>
<firstname>Mark</firstname>
<lastname>Wood</lastname>
<school>Hills College</school>
</student>
A fenti példában
- !DOCTYPE diák a DTD deklaráció kezdetét jelzi. És a diák az XML dokumentum gyökéreleme.
- !ELEMENT tanuló jelzi a diák elemnek tartalmaznia kell keresztnév családnév és a iskola elemek.
- !ELEMENT keresztnév jelzi a firstname típusú elem #PCDATA (Parsed Chármas dátum).
- !ELEMENT vezetéknév jelzi a lastname típusú elem #PCDATA.
- !ELEMENT iskola jelzi a iskola típusú elem #PCDATA.
Példa egy külső DTD-re:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE student SYSTEM "student.dtd">
<student>
<firstname>Mark</firstname>
<lastname>Wood</lastname>
<school>Hills College</school>
</student>
A DTD fájl tartalma (student.dtd) az alábbiak szerint.
<!ELEMENT student (firstname,lastname,school)> <!ELEMENT firstname (#PCDATA)> <!ELEMENT lastname (#PCDATA)> <!ELEMENT school (#PCDATA)>
XML DOM
Mi az a DOM?
A DOM jelentése DFoglalkozása Otárgy Model. Meghatározza az XML dokumentumok elérésének és kezelésének szabványos módját. A DOM-nak (hierarchikus) fastruktúrája van.
Példa a DOM-ra
Tekintsük az alábbi XML dokumentumot.
<?xml version="1.0" encoding="UTF-8" ?>
<school>
<student>
<name>
<first_name>Alex</first_name>
<last_name>Clarke</last_name>
</name>
<age>14</age>
<address>No. 35, Flower Road, Leeds</address>
</student>
</school>
A fenti XML-fájl fastruktúrája a következő képhez hasonlóan néz ki.

XML-érvényesítés
Mik azok a jól formázott XML-dokumentumok?
Jól formált Az XML dokumentumok megfelelő szintaxisú XML dokumentumok.
Mik azok az érvényes XML dokumentumok?
Érvényes Az XML dokumentumok jól formázottak és megfelelnek a DTD szabályoknak is.
XML névterek
Miért névterek?
A névterek segítenek elkerülni az elemek névütközését.
Névtér nyilatkozat
Az alábbiakban bemutatjuk a névtér-deklaráció szintaxisát.
<element xmlns:name="URL">
A fenti nyilatkozatban
- A xmlns A kulcsszó a névtér elejét jelöli.
- A név a névtér előtagja.
- A URL a névtér azonosítója.
Példák névterekre
A következő kódszegmens névterekre mutat példát.
<?xml version="1.0" encoding="UTF-8" ?>
<abt:about xmlns:abt="https://www.guru99.com/about-us.html">
<abt:founder>Krishna</abt:founder>
<abt:vision>Fun and Free Education for ALL</abt:vision>
</abt:about>
XML szerkesztők
Számos XML-szerkesztő áll rendelkezésre. Bármely szövegszerkesztő (például jegyzettömb és így tovább) használható XML-szerkesztőként.
Az alábbi lista néhány népszerű XML-szerkesztőt mutat be 2021-ben.
1) XML Jegyzettömb
Az XML Notepad egy nyílt forráskódú XML-szerkesztő. A bal oldali ablaktáblán fanézet és XSL-kimenet, a jobb oldalon pedig csomópontszöveg található. Alul van egy hibakereső ablak.
Főbb statisztikák:
- Típus – XML-szerkesztő
- Fejlesztő – Microsoft
- Támogatott operációs rendszer - Microsoft Windows.
- Ár - Ingyenes
Link: http://microsoft.github.io/XmlNotepad/
2) Stylus Studio
A Stylus Studio egy beírt IDE C++ az Extensible Markup Language (XML) számára. Lehetővé teszi a felhasználó számára XML dokumentumok, adatok, például elektronikus adatcsere (EDI), CSV és relációs adatok szerkesztését és átalakítását.
Főbb statisztikák:
- Típus – Integrált fejlesztői környezet (IDE) XML-hez
- Fejlesztő – Progress Software Corporation
- Támogatott operációs rendszer - Microsoft Windows.
- Ár – Fizetett (Kérjük, tekintse meg az alábbi webhelyet a legújabb árért), ingyenes próbaverzió áll rendelkezésre.
Link: http://www.stylusstudio.com/
3) Altova XMLSpy
Az XMLSpy-t elsősorban JSON- és XML-szerkesztőként forgalmazzák. Beépített sématervezővel és szerkesztővel rendelkezik. Tartalmazza a Visual Studio And-t Eclipse integráció.
Főbb statisztikák:
- Típus – XML-szerkesztő
- Fejlesztő – Altova
- Támogatott operációs rendszer - Microsoft Windows.
- Ár – Fizetett (Kérjük, tekintse meg az alábbi webhelyet a legújabb árért), ingyenes próbaverzió áll rendelkezésre.
Link:https://www.altova.com/xmlspy-xml-editor
4) Oxygen XML szerkesztő
Az Oxygen XML egy többplatformos szerkesztő, amelyet ben fejlesztettek ki Java. Segít az olyan sémák érvényesítésében, mint a DTD, W3C XML séma, RELAX NG, Schematron, NRL és NVDL sémák.
Főbb statisztikák:
- Típus – XML-szerkesztő
- Fejlesztő – SyncRO Soft Kft
- Támogatott operációs rendszer - Windows, Linux és Mac OS X
- Ár – Fizetett (Kérjük, tekintse meg az alábbi webhelyet a legújabb árért
Link:https://www.oxygenxml.com/
5) Egyszerűsítse
Az Xmplify XML Editor teljesen XML-tudatos szerkesztőkörnyezetet biztosít DTD- és XML-séma-alapú automatikus, automatikus dokumentumellenőrzéssel stb.
Főbb statisztikák:
- Típus – XML-szerkesztő
- Fejlesztő – MOSO Corporation
- Támogatott operációs rendszer – Mac OS.
- Ár – Fizetett (Kérjük, tekintse meg az alábbi webhelyet a legújabb árért
Link: http://xmplifyapp.com/
XML elemzők
Az XML-elemző egy szoftverkönyvtár, amely interfészt biztosít az XML-dokumentumok kezeléséhez. Ellenőrzi, hogy az XML dokumentum formátuma megfelelő-e. Egyes értelmezők az XML dokumentumokat is érvényesíthetik. A modern böngészők XML-elemzőkkel rendelkeznek.
SAX
SAX jelentése Svégrehaj API for XML. Ez egy aLKALMAZÁS pprogram iinterfész (API) az XML dokumentumok elemzéséhez. Hasonlóan viselkednek, mint az eseménykezelők Java.
A DOM-mal ellentétben a SAX egy példa az eseményalapú XML-elemzőre.
Íme néhány fontos különbség a SAX és a DOM között.
| SAX | DOM | |
|---|---|---|
| állványok | Egyszerű API XML-hez | Dokumentumobjektum-modell |
| Az elemző típusa | Esemény alapú | Objektum alapú |
| XML olvasása és írása | Csak olvasható | Írni és olvasni egyaránt |
| Csomópontok beszúrása/frissítése/törlése | Nem lehet csomópontokat beilleszteni/frissíteni/törölni | Beszúrhat/frissíthet/törölhet csomópontokat |
| A memória hatékonysága | Jó memória hatékonyság | Változó |
| Sebesség | Lassabb, mint a DOM Parser | Gyorsabb, mint a SAX Parser |
| Alkalmas | Kis méretű fájlok | Nagy méretű fájlok |
XML adatkötés
Az XML-adat-összerendelés egy XML-dokumentumban lévő adatok üzleti objektumként való megjelenítése a számítógép memóriájában.
Három megközelítés létezik az XML-adat-összerendelésre.
- XML séma alapú adat-összerendelés: A megfelelő XML osztályok a séma alapján jönnek létre.
- Osztály alapú adatkötés: A megfelelő XML-séma osztályok alapján jön létre.
- Leképezés alapú adatkötés: Leírja, hogy egy meglévő XML-séma hogyan képezi le az osztályok halmazát (és fordítva).
Léteznek XML adatkötési keretrendszerek is.
Példák:
Az XML adatkötés a keretrendszerekkel egyszerű. Az adatkötési keretrendszer nagy mennyiségű kódot hoz létre az Ön számára. DTD- vagy XML-sémát kell betáplálnia.
XML sémák
XML séma (Más néven XML séma meghatározása or XSD) használja az XML dokumentum szerkezetének leírására. Ez a DTD alternatívája.
Miért fontos a séma?
A DTD nem olyan erős séma, mivel nem bővíthető és nem elég rugalmas. Ezért előfordulhat, hogy bizonyos helyzetekben nem megfelelő. Ilyen helyzetben fontos a séma. Az XML-séma használatának fő célja egy XML-dokumentum elemeinek és attribútumainak meghatározása.
Miben különbözik az XML-séma a DTD-től?
A következő összehasonlítás bemutatja, hogy az XSD (XML-séma) miben különbözik a DTD-től.
| DTD | XSD | |
|---|---|---|
| állványok | Dokumentumtípus meghatározása | XML séma meghatározása |
| Nyújthatóság | Nem bővíthető | Bővíthető |
| XML-struktúra vezérlése | Less ellenőrzés | Több ellenőrzés |
| Támogatás adattípusai | Nem támogatott | Támogatott |
| Névtér támogatás | Nem támogatott | Támogatott |
A következő kódszegmens XML-séma példáját mutatja be.
xs:schema xmlns:xs = "http://www.w3.org/2001/XMLSchema">
<xs:element name = "employee">
<xs:complexType>
<xs:sequence>
<xs:element name = "firstname" type = "xs:string" />
<xs:element name = "lastname" type = "xs:string" />
<xs:element name = "phone" type = "xs:int" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Az XML előnyei
Íme, az XML előnyei/előnyei:
- Könnyűvé tette az adatok szállítását és megosztását.
- Az XML javítja a különböző platformok közötti adatcserét.
- Ez egy jelölőnyelv, amely egy szöveges dokumentumban elhelyezett karakterek és/vagy szimbólumok halmaza.
- Az XML azt jelzi, hogy az XML dokumentumnak hogyan kell kinéznie a megjelenítés után.
- Leegyszerűsíti a platformváltási folyamatot.
- Javítja az adatok elérhetőségét.
- Támogatja a többnyelvű dokumentumokat és a Unicode-ot.
- Viszonylag könnyen megtanulható és kódolható.
- Ez egy jelölőnyelv, amely egy szöveges dokumentumban elhelyezett karakterek és/vagy szimbólumok halmaza.
- Érvényesítést végez a DTD és a séma használatával.
- A dokumentumokat rendszerek és alkalmazások között szállíthatóvá teszi. Az XML segítségével gyorsan cserélhet adatot a különböző platformok között.
- Az XML elválasztja az adatokat a HTML-től.
Az XML hátrányai
Íme az XML használatának hátrányai/hátrányai:
- Az XML feldolgozó alkalmazást igényel.
- Az XML szintaxis hasonló egy másik alternatív „szöveg alapú” adatátviteli formátumhoz, ami néha zavaró.
- Nincs belső adattípus támogatás
- Az XML szintaxis redundáns.
- Nem teszi lehetővé a felhasználó számára, hogy létrehozza címkéit.
Összegzésként
- Az XML az eXtensible Markup Language rövidítése. Az XML egy nyelv (nem programozási nyelv), amely a jelölést használja, és kiterjeszthető.
- A fő cél az adatok szállítása, nem az adatok megjelenítése.
- Az XML 1.1 a legújabb verzió. Ennek ellenére az XML 1.0 a leggyakrabban használt verzió.
- A címkék párként működnek, kivéve a deklarációkat.
- Nyitó címke + tartalom + záró címke = elem
- Az entitások a speciális karakterek ábrázolásának egyik módja.
- A DTD a Document Type Definition rövidítése. Egy XML-dokumentum szerkezetét határozza meg néhány jogi elem felhasználásával. Az XML DTD opcionális.
- A DOM a Document Object Model rövidítése. Meghatározza az XML dokumentumok elérésének és kezelésének szabványos módját.
- A jól formált XML dokumentumok helyes szintaxisú XML dokumentumok.
- Az érvényes XML dokumentumok jól formázottak és megfelelnek a DTD szabályoknak.
- A névterek segítenek elkerülni az elemek névütközését.
