Różnica między XSD a DTD

XSD vs. DTD

Definicja schematu XML (znana również jako XSD) jest jednym z wielu języków schematu XML. Ten konkretny język został opublikowany jako zalecenie W3C. Był to język prototypowy dla tych, którzy później byli w stanie oddzielić język schematu dla XML, i jako pierwszy uzyskał status Rekomendacji przez W3C. Aby uniknąć pomyłek z innymi zastosowaniami frazy XML Schema, wielu użytkowników zaczęło nazywać ten język WSD (w celu odróżnienia go jako języka zalecanego przez W3C - oznaczającego schemat W3C XML). Jednak inni użytkownicy odwoływali się do jego bardziej popularnej formy, XSD - co oznacza Dokument schematu XML.

Definicja typu dokumentu (znana również jako DTD) to zestaw deklaracji znaczników, które są używane specjalnie do definiowania typu dokumentu dla języków znaczników z rodziny SGML (z których trzy najczęściej to SGML, XML i HTML). W tej chwili DTD jest specyficznym rodzajem schematu XML. DTD używają zwięzłej formalnej składni, co oznacza, że ​​jest to deklaracja znaczników, która deklaruje dokładne elementy i odwołania, które mogą pojawić się w określonym typie dokumentu. Deklaruje również, jaka jest zawartość i atrybuty elementów. Innym ważnym aspektem DTD jest jego zdolność do deklarowania podmiotów, które mają możliwość wykorzystania w dokumencie instancji.

XSD może być używany do wyrażania zestawu reguł, do których musi się stosować dokument XML. Dokumenty XML muszą być zgodne z tym zestawem reguł, aby można je było uważać za „prawidłowe” zgodnie z ich konkretnym schematem. Tym, co odróżnia XSD od innych języków schematu XML, jest to, że został on również zaprojektowany z myślą, że określenie ważności dokumentu stworzyłoby zbiór informacji, które byłyby zgodne z określonymi typami danych. Chociaż ten zestaw informacji po sprawdzeniu poprawności jest przydatny podczas opracowywania oprogramowania do przetwarzania dokumentów XML, jego zależność od określonych typów danych jest cechą, która wzbudziła znaczną krytykę.

DTD są rozpowszechnione w aplikacjach, które wymagają specjalnych znaków publikujących (na przykład odwołania do encji znaków XML i HTML). Te specjalne znaki publikowania pochodziły z większych zestawów, które zostały zdefiniowane jako cechy standardowego wysiłku ISO SGML. Określona definicja typu dokumentu wiąże DTD z dokumentem XML. DTD pojawiają się w doctypedecl - składniowym fragmencie - blisko początku dokumentu XML. Ta deklaracja ustanawia, że ​​dokument XML jest instancją typu DTD, do którego się odwołuje i jest zdefiniowany typ. Istnieją dwie określone deklaracje DTD: wewnętrzny podzbiór, który stanowi część DTD w samym dokumencie, oraz zewnętrzny podzbiór, który znajduje się w osobnym pliku tekstowym.

Streszczenie:

1. XSD jest językiem schematu XML zalecanym przez W3C; DTD to zestaw deklaracji znaczników używanych do definiowania typu dokumentu.

2. XSD służy do wyrażenia zestawu reguł, do których musi się stosować dokument XML; Definicja typu dokumentu wiąże DTD z dokumentem XML.