Está en la página 1de 3

Tecnológico Nacional de México Instituto

Tecnológico de Cuautla
SERVICIOS WEB
Diferencia entre documento XML y DTD
ANDRADE CRISTOBAL FRANCISCO
ALBERTO
14680216
ICS
La diferencia crítica entre los DTD y el esquema XML es que el esquema XML utiliza
una sintaxis basada en XML, mientras que los DTD tienen una sintaxis única
retenida de los DTD de SGML. Aunque los DTD a menudo son criticados por esta
necesidad de aprender una nueva sintaxis, la sintaxis en sí es bastante breve. Lo
contrario es cierto para el Esquema XML, que son detallados, pero también utilizan
etiquetas y XML para que los autores de XML encuentren la sintaxis del Esquema
XML menos intimidante.

El objetivo de los DTD era mantener un nivel de compatibilidad con SGML para las
aplicaciones que querrían convertir los DTD de SGML en DTD XML. Sin embargo,
de acuerdo con uno de los objetivos de XML, "la brevedad en el marcado XML es
de importancia mínima", no existe una preocupación real por mantener breve la
sintaxis. [...]

Entonces, ¿cuáles son algunas de las otras diferencias que podrían ser
especialmente importantes cuando estamos convirtiendo un DTD? Vamos a ver.

Mecanografía

La diferencia más significativa entre DTDs y XML Schema es la capacidad de crear


y usar tipos de datos en Schema junto con declaraciones de elementos y atributos.
De hecho, es una diferencia tan importante que la mitad de la Recomendación del
Esquema XML está dedicada al tipo de datos y al Esquema XML.

Restricciones de ocurrencia

Otra área donde los DTD y el esquema difieren significativamente es con las
restricciones de ocurrencia. hay tres símbolos que puede usar para limitar el número
de ocurrencias de un elemento: *, + y?. [...]

Enumeraciones Entonces, digamos que teníamos un elemento, y queríamos poder


definir un atributo de tamaño para la camisa, lo que permitió a los usuarios elegir un
tamaño: pequeño, mediano o grande. Nuestro DTD se vería así:

<! ELEMENTO (camisa)> <! ELEMENTO camisa (#PCDATA)> <! ATTLIST


shirt size_value (pequeño | mediano | grande)> [...] Pero,
¿y si quisiéramos que el tamaño fuera un elemento? No podemos hacer eso con un
DTD. Los DTD no proporcionan enumeraciones en el contenido de texto de un
elemento. Sin embargo, debido a los tipos de datos con Schema, cuando
declaramos la enumeración en el ejemplo anterior, en realidad creamos un tipo
simple llamado size_values que ahora podemos usar con un elemento: <xs: element
name = "size" type = "size_value"> [...]

También podría gustarte