XML-skeem vs DTD
XML tähistab laiendatavat märgistuskeelt. See on määratletud XML 1.0 spetsifikatsioonis, mille on välja töötanud W3C (World Wide Web Consortium). XML pakub standardset viisi, mis on ka lihtne, andmete ja teksti kodeerimiseks, nii et sisu saaks vahetada draiveri riistvara, opsüsteemide ja rakenduste vahel vähese inimese sekkumisega. XML-skeem kirjeldab XML-dokumendi struktuuri. XML-skeem seab XML-is järgitavatele süntaktilistele reeglitele lisaks XML-dokumendi struktuurile ja sisule piiranguid. XML-skeem on World Wide Web Consortium'i (W3C) soovitus ja sellest sai soovitus mais 2001. DTD (Document Type Definition) määratleb ka, kuidas dokumendi elemendid järjestatakse ja pesastatakse, millised elemendid on dokumendis kaasatud ja kaasatud elementide atribuudid. DTD määratleb dokumentide struktuuri SGML-perekonna märgistuskeeltes.
Mis on XML-skeem??
XML-skeem kirjeldab XML-dokumendi struktuuri. See määratleb elemendid, mis võivad esineda XML-dokumendis, ja nende atribuudid, näiteks kas element on tühi või kas see võib sisaldada teksti. Samuti määratletakse, millised elemendid oleksid lapseelemendid, ja nende elementide järjekord. Lisaks määratleb XML-skeem elementides kasutatavaid andmetüüpe ja nende atribuute. XML-skeeme kasutatakse veebirakendustes laialdaselt, kuna need on laiendatavad ja toetavad andmetüüpe ja nimeruume. XML-skeemi suurim tugevus on andmetüüpide toetamine. See pakub lihtsaid meetodeid dokumendis lubatud sisu määratlemiseks ja meetodeid andmete õigsuse tagamiseks. Lisaks on XML-skeemil sätted andmebaasides töötamiseks ja see võimaldab teisendamist andmetüüpide vahel.
Mis on DTD?
DTD määratleb dokumentide struktuuri SGML-perekonna märgistuskeeltes, näiteks SGML, XML ja HTML. See määratleb, kuidas dokumentide elemendid järjestatakse ja pesastatakse, millised elemendid dokumentidesse kaasatakse ja kaasatud elementide atribuudid. XML-dokumendis deklareeritakse DTD DOCTYPE deklaratsioonis, mis asub XML-deklaratsiooni all. DTD põhiosa sisaldab dokumendis sisalduvate elementide ja nende atribuutide määratlusi ning seda saab määratleda kui sisemääratlust või välist määratlust. Välise DTD omamine on väga kasulik, kui kasutate eraldi süsteemide vaheliseks suhtlemiseks XML-protokolli, kuna see vähendab iga kord DTD uuesti saatmise kulusid, nagu sisemise määratluse korral. Väline DTD võidakse paigutada sellisesse kohta nagu veebiserver, millele pääsevad ligi mõlemad süsteemid.
Mis vahe on XML-skeemil ja DTD-l??
DTD on XML-skeemi eelkäija. DTD pakub küll põhistruktuuri / grammatikat XML-dokumendi määratlemiseks, kuid lisaks sellele pakub XML-skeem meetodeid dokumendis sisalduvate andmete piirangute määratlemiseks. Seetõttu peetakse XML-skeemi rikkamaks ja võimsamaks kui DTD-d. Samuti pakub XML-skeem objektorienteeritud lähenemisviisi XML-dokumendi struktuuri määratlemiseks. Kuid kuna XML-skeem on uus tehnoloogia, ei toeta mõned XML-i parserid seda veel. Lisaks määratletakse DTD abil enamik pärandsüsteemide rikkaid ja keerukaid definitsioone. Nii et nende ümberkirjutamine ei oleks lihtne ülesanne.