XML shema vs DTD
XML je skraćenica za EXtensible Markup Language. Definisan je u XML 1.0 specifikaciji, koju je razvio W3C (World Wide Web Consortium). XML obezbeđuje standardni način, koji je takođe jednostavan, za kodiranje podataka i teksta tako da se sadržaj može razmenjivati preko hardvera drajvera, operativnih sistema i aplikacija uz malo ljudske intervencije. XML shema opisuje strukturu XML dokumenta. XML šema nameće ograničenja na strukturu i sadržaj XML dokumenta pored sintaksičkih pravila koja bi se trebala poštovati u XML-u. XML šema je preporuka koju je dao World Wide Web Consortium (W3C) i postala je preporuka u maju 2001. DTD (Definicija tipa dokumenta) također definira kako su elementi dokumenta poredani i ugniježđeni, koji elementi su uključeni u dokument i atribute uključenih elemenata. DTD definira strukturu dokumenata u SGML-porodičnim markup jezicima.
Šta je XML shema?
XML šema opisuje strukturu XML dokumenta. Definira elemente koji se mogu pojaviti u XML dokumentu i njihove atribute kao što je da li je element prazan ili može sadržavati tekst. Također definira koji će elementi biti podređeni elementi i redoslijed podređenih elemenata. Nadalje, XML shema definira tipove podataka koji se koriste u elementima i njihove atribute. XML šeme se široko koriste u web aplikacijama jer su proširive i pružaju podršku za tipove podataka i prostore imena. Najveća snaga XML šeme je podrška za tipove podataka. Pruža jednostavne metode za definiranje sadržaja dozvoljenog u dokumentu i metode za osiguranje ispravnosti podataka. Nadalje, XML shema ima odredbe za rad s podacima u bazama podataka i omogućava konverziju između tipova podataka.
Šta je DTD?
DTD definiše strukturu dokumenata u jezicima za označavanje porodice SGML kao što su SGML, XML i HTML. Definira kako su elementi dokumenata poredani i ugniježđeni, koji elementi su uključeni u dokumente i atribute uključenih elemenata. U XML dokumentu, DTD je deklarisan u DOCTYPE deklaraciji, koja se nalazi ispod XML deklaracije. Tijelo DTD sadrži definicije za elemente u dokumentu i njihove atribute i može se definirati kao inline definicija ili eksterna definicija. Posjedovanje eksternog DTD-a je vrlo korisno kada koristite XML protokol za komunikaciju između odvojenih sistema jer smanjuje troškove ponovnog slanja DTD-a svaki put kao kod inline definicije. Eksterni DTD bi se mogao postaviti na mjesto poput web servera kojem mogu pristupiti oba sistema.
Koja je razlika između XML sheme i DTD?
DTD je prethodnik XML šeme. Dok DTD obezbeđuje osnovnu strukturu/gramatiku za definisanje XML dokumenta, pored te XML šeme obezbeđuje metode za definisanje ograničenja na podatke sadržane u dokumentu. Stoga se smatra da je XML šema bogatija i moćnija od DTD. Također, XML shema pruža objektno orijentirani pristup za definiranje strukture XML dokumenta. Ali pošto je XML šema nova tehnologija, neki XML parseri je još ne podržavaju. Nadalje, većina bogatih i složenih definicija naslijeđenih sistema definirana je DTD-om. Dakle, njihovo ponovno pisanje ne bi bio lak zadatak.