Forskel mellem XML Schema og DTD

Anonim

XML Schema vs DTD

XML står for EXtensible Markup Language. Det er defineret i XML 1. 0-specifikationen, som er udviklet af W3C (World Wide Web Consortium). XML giver en standard måde, som også er enkel, at kode data og tekst, således at indholdet kan udveksles på tværs af driverens hardware, operativsystemer og applikationer med lille menneskelig indgriben. XML Schema beskriver strukturen i et XML-dokument. XML-skema pålægger strukturer og indholdet af et XML-dokument ud over de syntaktiske regler, der skal følges i XML. XML-skema er en anbefaling fra World Wide Web Consortium (W3C) og blev en anbefaling i maj 2001. DTD (Document Type Definition) definerer også, hvordan elementerne i dokumentet bestilles og nestes, hvilke elementer der er inkluderet i dokumentet og attributterne til de medfølgende elementer. DTD definerer strukturen af ​​dokumenter i SGML-familiens markup-sprog.

Hvad er XML Schema?

XML-skema beskriver strukturen af ​​et XML-dokument. Det definerer de elementer, der kan vises i et XML-dokument og deres attributter, f.eks. Om et element er tomt eller om det kan indeholde tekst. Det definerer også hvilke elementer der vil være barnelementer og rækkefølgen af ​​barnets elementer. Endvidere definerer XML-skema datatyper, der anvendes i elementer og deres attributter. XML-skemaer anvendes i vid udstrækning i webapplikationer, da det er udvideligt og understøtter datatyper og navnepladser. Største styrke med XML-skema yder støtte til datatyper. Det giver nemme metoder til at definere det tilladte indhold i et dokument og metoder til at sikre, at dataene er korrekte. Endvidere har XML-skema bestemmelser til at arbejde med data i databaser og muliggør konvertering mellem datatyper.

Hvad er DTD?

DTD definerer strukturen af ​​dokumenter i SGML-familiens markup-sprog som SGML, XML og HTML. Det definerer, hvordan elementerne i dokumenter bestilles og nestes, hvilke elementer der indgår i dokumenterne og attributterne for de medfølgende elementer. I et XML-dokument er DTD erklæret i en DOCTYPE-erklæring, som er under XML-erklæringen. DTD's krop indeholder definitionerne for elementerne i dokumentet og deres attributter, og det kan defineres som en inline-definition eller en ekstern definition. At have en ekstern DTD er meget nyttig, når du bruger XML-protokollen til at kommunikere mellem separate systemer, da det reducerer overhead for at sende DTD'en hver gang som med inline definition. Den eksterne DTD kunne placeres på et sted som en webserver, der kunne få adgang til begge systemer.

Hvad er forskellen mellem XML Schema og DTD?

DTD er forgængeren af ​​XML-skema. Mens DTD giver den grundlæggende struktur / grammatik til at definere et XML-dokument, ud over det XML-skema, er der metoder til at definere begrænsninger på dataene i dokumentet. Derfor anses XML-skema for at være rigere og stærkere end DTD. XML-skemaet giver også en objektorienteret tilgang til definition af strukturen i et XML-dokument. Men da XML-skema er en ny teknologi, understøtter nogle XML-parsere det endnu ikke. Desuden er de fleste af rige og komplekse definitioner af arvssystemer defineret med DTD. Så omskrivning af dem ville ikke være en let opgave.