DTD - Descripción general
La declaración de tipo de documento XML, comúnmente conocida como DTD, es una forma de describir con precisión el lenguaje XML. Los DTD comprueban la validez de la estructura y el vocabulario de un documento XML con las reglas gramaticales del lenguaje XML apropiado.
Un documento XML se puede definir como:
Well-formed- Si se adhiere el documento XML en todo el XML Normas generales tales como etiquetas deben estar correctamente anidados, apertura y de cierre deben estar equilibrados, y las etiquetas vacías deben terminar con '/>', entonces se llama como bien formada .
O
Valid- Un documento XML que se dice que es válido cuando no solo está bien formado , sino que también se ajusta a la DTD disponible que especifica qué etiquetas utiliza, qué atributos pueden contener esas etiquetas y qué etiquetas pueden aparecer dentro de otras etiquetas, entre otras propiedades. .
El siguiente diagrama representa que se utiliza una DTD para estructurar el documento XML:
Tipos
DTD se puede clasificar en base a su declaración en el documento XML, como:
DTD interno
DTD externo
Cuando se declara una DTD dentro del archivo, se llama Internal DTD y si se declara en un archivo separado se llama External DTD.
Aprenderemos más sobre estos en el capítulo Sintaxis DTD
Caracteristicas
A continuación se presentan algunos puntos importantes que describe un DTD:
los elementos que pueden aparecer en un documento XML.
el orden en que pueden aparecer.
elementos opcionales y obligatorios.
atributos del elemento y si son opcionales u obligatorios.
si los atributos pueden tener valores predeterminados.
Ventajas de usar DTD
Documentation- Puede definir su propio formato para los archivos XML. Al mirar este documento, un usuario / desarrollador puede comprender la estructura de los datos.
Validation - Permite comprobar la validez de los archivos XML comprobando si los elementos aparecen en el orden correcto, los elementos y atributos obligatorios están en su lugar, los elementos y atributos no se han insertado de forma incorrecta, etc.
Desventajas de usar DTD
No admite los espacios de nombres. El espacio de nombres es un mecanismo mediante el cual los nombres de elementos y atributos se pueden asignar a grupos. Sin embargo, en una DTD, los espacios de nombres deben definirse dentro de la DTD, lo que viola el propósito de usar espacios de nombres.
Solo admite el tipo de datos de cadena de texto.
No está orientado a objetos. Por tanto, el concepto de herencia no se puede aplicar a los DTD.
Posibilidades limitadas para expresar la cardinalidad de los elementos.