ühilduvus
XML omadus, mis on toodud sisse üksnes garanteerimaks XMLi ühildumist SGMLga.
-
risttöödeldavus
Mittesiduv soovitus, mis on toodud sisse XML-dokumentide töötlemisvõimaluste suurendamiseks olemasolevate SGML protsessoritega, mis ennetavad dokumenti WebSGML Adaption Annex ISO 8879.
Andmeobjektiks on XML-dokument, kui ta on trimmis käesolevas spetsifikatsioonis defineeritud kujul. Trimmis XML-dokument võib olla lisaks kehtiv, kui ta on vastavuses kindlate lisapiirangutega.
Igal XML-dokumendil on loogiline ja füüsiline ülesehitus. Füüsiliselt koosneb dokument kirjetest, mida kutsutakse üksusteks. Üksus võib viidata teistele üksustele põhjustades nende kaasamise dokumenti. Dokument algab juur- ehk dokumendiüksusega. Loogiliselt koosneb dokument deklaratsioonidest, elementidest, kommentaaridest, viitadest märkidele ja töötluseeskirjadest, mis on kõik üksikasjaliku märgistusega ära näidatud dokumendis. Loogiline ja füüsiline struktuur peavad olema sisestatud õigesti vastavalt kirjeldusele “4.3.2. Trimmis parsitud üksused”.
XML-dokumendi elemendi elemendi struktuurile võib kehtivuse eesmärgil esitada piiranguid kui kasutada elemendi tüübi deklaratsiooni ja atribuutide loetelu. Elemendi tüübi deklaratsioon piirab elemendi sisu.
Elemendi tüübi deklaratsioon piirab sageli seda, millise elemendi tüüp esineb elemendi tütrena. XML-protsessor võib kasutaja valiku korral väljastada hoiatuse, kui deklaratsioonis mainitakse elemendi tüüpi, mille jaoks pole deklaratsiooni, kuid see ei ole viga.
Elemendi tüübi deklaratsioon on kujul:
Elemendi tüübi deklaratsioon |
[45]
|
elementdecl
|
::=
|
''
|
[
|
VC: Elemendi tüübi deklaratsiooni unikaalsus (Unique Element Type Declaration) ]
|
[46]
|
contentspec
|
::=
|
'EMPTY' | 'ANY' | Mixed|children
|
|
|
|
Kus Name määrab deklareeritava elemendi tüübi
Kehtivuse piirang kehtestab elemendi tüübi deklaratsiooni unikaalsuse, st. et
ühtegi elemendi tüüpi ei tohi deklareerida üle ühe korra.
Näited elemendi tüübi deklaratsioonidest:
XML dokument võib sisaldada ühte või mitut säilituskirjet. Neid kutsutakse üksusteks; neil kõigil on sisu ja nad kõik on (välja arvatud dokumendiüksus ja väline DTD) identifitseeritud nimega. Igal XML-dokumendil on üks üksus, mida kutsutakse dokumendiüksuseks, mis on XML-protsessorile stardipunktiks ja mis võib sisaldada kogu dokumendi. Üksused võivad olla kas parsitud või parsimata. Parsitud üksuste sisule viidatakse nagu tema asendustekstile (replacement text); seda teksti (text) käsitletakse dokumendi lahutamatu osana.
Parsimata üksus on ressurss, mille sisuks võib ja võib ka mitte olla, tekst ja kui ta on tekst, siis ta võib olla mitte XML-tekst. Igal parsimata üksusel on temaga assotsieeruv notatsioon, mis on identifitseeritav nimega. XML ei kitsenda parsimata üksuste sisu, välja arvatud nõue, et XML-protsessor teeb üksuste identifikaatorid ja notatsiooni kättesaadavaks rakendusele.
Parsitud üksused saab välja kutsuda, kasutades üksuseviita; parsimata üksused atribuutide ENTITY või ENTITIES väärtustes esitatud nimede järgi.
Üldüksused on üksused, mida kasutatakse dokumendi sisus. Selles spetsifikatsioonis on üldüksustele mõnikord viidatud kvalifitseerimata terminiga üksus (entity), seda juhul kui see ei tekita mitmemõttelisust. Parameeterüksused on parsitud üksused kasutamiseks DTD-s. Need kaks üksuse tüüpi kasutavad erinevas vormis viitamist ja tuvastatakse erinevates kontekstides. Liiatigi haaravad nad erinevad nimeruumid; sama nimega parameeterüksus ja üldüksus on kaks eri üksust.
Kohaldavad XML protsessoreid saab jagada kahte klassi: valideerivad ja mittevalideerivad. Kuid nad peavad ühtemoodi raporteerima dokumentüksuse ja mistahes teise parsitud üksuste lugemisel käesoleva spetsifikatsiooni trimmisuse piirangute rikkumistest.
Valideerivad protsessorid peavad raporteerima DTD deklaratsioonides väljendatud piirangute eiramistest ja käesolevas spetsifikatsioonis toodud kehtivuse piirangute teostamise ebaõnnestumistest. Et seda täita peavad valideerivad XML-protsessorid lugema ja töötlema kogu DTD ja kõik dokumendi poolt viidatud parsitud välisüksused.
Mittevalideerivatel protsessorid peavad kontrollima ainult dokumentüksuse trimmisust, kaasa arvatud kogu sisemine DTD alamhulk. Kuna neil pole nõutav kontrollida seda, kas dokument kehtib, siis peavad nad töötlema kõiki sisemisest DTD alamhulgast sisseloetud deklaratsioone ja deklaratsioone igas sisseloetud parameeterüksuses, kuni selle parameeterüksuse viidani, mida nad ei loe - see tähendab, et nad peavad kasutama nendes deklaratsioonides peituvat teavet atribuutide väärtuste normaliseerimiseks, kaasama sisemiste üksuste asendustekstid ja atribuutide vaikeväärtused . Nad ei pea töötlema (process) üksuse deklaratsioone, või atribuudiloetelu deklaratsioone, milleni jõutakse peale mitteloetava parameeterüksuse viita, kuna üksus võib sisaldada ülekirjutatavaid deklaratsioone.
XML on projekteeritud SGML alamhulgana, iga kehtiv XML-dokument peab olema ka vastav SGML-dokument.
Kokkuvõte.
XML on suunatud info kvaliteetsemale levitamisele Interneti kaudu.Teda on efektiivne kasutada, kui suure dokomentide hulga juures on vaja tarvitada struktuurielemente, sealjuures kiiret, lihtsat mittetekstiliste andmete vahetamist sõltumatute, mittefirmapõhiste vahenditega.
Struktuurandmete infotöötlus on tunduvalt kergem ja odavam ning ei vaja SGML formaadile omast keerulist dokumendi defineerimist (DTD – Document Type Description)
|