Razlika između XSD i DTD

XSD naspram DTD

Definicija XML sheme (poznata i kao XSD) jedan je od različitih jezika XML sheme. Taj je jezik objavljen kao preporuka W3C. Bio je prototip jezika za one koji su slijedili koji su mogli razdvojiti jezik sheme za XML, a prvi je W3C dobio status preporuke. Kao sredstvo za izbjegavanje zabune s drugim uporabama izraza XML shema, mnogi su se korisnici počeli baviti jezikom kao WSD (da bi ga razlikovali kao jezik koji je preporučio W3C - zastupajući W3C XML shemu). Ipak, drugi su se korisnici pozivali na njegov uobičajeniji oblik, XSD - što znači XML Schema Document.

Definicija vrste dokumenta (poznata i kao DTD) skup je označnih deklaracija koje se koriste posebno za definiranje vrste dokumenta za označne SGML obitelji (od kojih su tri najčešće SGML, XML i HTML). DTD je specifičan tip XML sheme. DTD-ovi koriste kratku formalnu sintaksu, što znači da je označna deklaracija koja deklarira točne elemente i reference koje se mogu pojaviti u određenoj vrsti dokumenta. Također objavljuje što su sadržaji i atributi elemenata. Drugi važan aspekt DTD-a je njegova sposobnost da izjavljuje subjekte koji mogu biti korišteni u dokumentu instance.

XSD se može koristiti za izražavanje skupa pravila kojih se XML dokument mora pridržavati. XML dokumenti moraju biti u skladu s ovim nizom pravila kako bi se prema njihovoj određenoj shemi smatralo „valjanim“. Ono što razlikuje XSD od ostalih jezika XML sheme jest to da je on također osmišljen s idejom da bi se određivanjem valjanosti dokumenta proizvela zbirka informacija koje se odnose na određene tipove podataka. Iako je ovaj skup informacija o validaciji koristan za razvoj softvera za obradu dokumenata XML, njegova ovisnost o određenim tipovima podataka obilježje je koje je izazvalo veliku kritiku.

DTD prevladava u aplikacijama kojima su potrebni posebni znakovi za objavljivanje (primjerice XML i HTML Character Entity Reference). Ovi posebni likovi objavljivanja poticali su se iz većih skupina koje su definirane kao značajke ISO SGML standardnog napora. Specifična definicija vrste dokumenta povezuje DTD sa XML dokumentom. DTD-i se pojavljuju u doctypedecl - sintaktičkom fragmentu - blizu početka XML dokumenta. Ovom se izjavom utvrđuje da je XML dokument primjer DTD-a na koji se odnosi i definiranog tipa. DTD daje dvije posebne izjave: unutarnji podskup, koji čini dio DTD-a u samom dokumentu, i vanjski podskup, koji se nalazi u zasebnoj tekstnoj datoteci.

Sažetak:

1. XSD je jezik XML sheme koji se preporučuje putem W3C; DTD je skup markupnih deklaracija koji se koriste za definiranje vrste dokumenta.

2. XSD se koristi za izražavanje skupa pravila kojih se XML dokument mora pridržavati; Definicija vrste dokumenta povezuje DTD sa XML dokumentom.