Diferența dintre XSD și DTD

XSD vs. DTD

Schema de definiție XML (cunoscută și sub numele de XSD) este una dintre o varietate de limbi de schemă XML. Această limbă a fost publicată ca recomandare W3C. Acesta a fost prototipul limbajului pentru cei care au urmat care au putut separa limbajul de schemă pentru XML, și primul care a atins statutul Recomandării de către W3C. Ca o modalitate de a evita confuzia cu alte utilizări ale frazei XML Schema, mulți utilizatori au început să se refere la limbajul WSD (pentru ao diferenția ca pe o limbă pe care W3C o recomandă - pentru W3C XML Schema). Cu toate acestea, alți utilizatori s-au referit la formularul său mai comun, XSD - ceea ce înseamnă document XML Schema.

Definiția tipului de document (cunoscut și sub numele de DTD) este un set de declarații de marcare care sunt utilizate în mod specific pentru a defini un tip de document pentru limbile de marcare ale familiei SGML (cele mai obișnuite fiind SGML, XML și HTML). Cum este, DTD este un tip specific de Schema XML. DTD-urile folosesc o sintaxă formală, adică o declarație de marcare care declară elementele și referințele exacte care pot apărea într-un anumit tip de document. De asemenea, aceasta declară conținutul și atributele elementelor. Un alt aspect important al DTD este capacitatea sa de a declara entități care au posibilitatea de a fi utilizate în documentul instanței.

XSD are capacitatea de a fi utilizat pentru a exprima un set de reguli la care trebuie să adere un document XML. Documentele XML trebuie să respecte acest set de reguli pentru a fi considerate ca fiind "valabile" în funcție de schema lor particulară. Ceea ce diferențiază XSD de alte limbi de schemă XML este faptul că a fost conceput și cu ideea că determinarea validității unui document ar produce o colecție de informații care au aderat la anumite tipuri de date. În timp ce acest set de informații post-validare este util atunci când dezvoltați software de procesare a documentelor XML, dependența sa de tipuri specifice de date este o caracteristică care a atras o sumă considerabilă de critici.

DTD sunt predominante în aplicațiile care necesită caractere speciale de publicare (de exemplu, referințele pentru Entitatea de caractere XML și HTML). Aceste caractere speciale de publicare au provenit din seturile mai mari care au fost definite ca caracteristici ale efortului standard ISO SGML. O definire specifică a tipului de document asociază un DTD cu un document XML. DTD-urile creează în doctypedecl - un fragment sintactic - aproape de începutul unui document XML. Această declarație stabilește că documentul XML este o instanță a unui tip de referință și definit DTD. Există două declarații specifice pe care DTD le face: Un subset intern, care face parte din DTD în documentul însuși și un subset extern, care se află într-un fișier text separat.

Rezumat:

1. XSD este un limbaj de schemă XML recomandat prinW3C; DTD este un set de declarații de marcare utilizate pentru a defini un tip de document.

2. XSD este folosit pentru a exprima un set de reguli la care trebuie să adere un document XML; o definiție a tipului de document asociază un DTD cu un document XML.