DTD
Significa "Document Type Definition". Una DTD define la estructura, los elementos y los atributos de un documento XML. Proporciona un conjunto de reglas que los archivos XML deben seguir, lo que garantiza la coherencia y validez entre documentos similares.
Una DTD especifica:
- Qué elementos (etiquetas) están permitidos
- El orden y la anidación de los elementos
- Qué atributos pueden tener los elementos
- Los tipos de valores que pueden contener esos atributos
A continuación se muestra un ejemplo de DTD para guardar datos de automóviles como XML:
<!DOCTYPE automobile [
<!ENTITY header "Car Details">
<!ELEMENT make (#PCDATA)>
<!ELEMENT model (#PCDATA)>
<!ATTLIST model doors (two | four) #REQUIRED>
<!ELEMENT year (#PCDATA)>
<!ELEMENT engine (#PCDATA)>
<!ATTLIST engine transmission (manual | automatic) #REQUIRED>
]>
En la DTD anterior:
- Se define una entidad llamada header con el valor "Car Details".
- Se declaran elementos como <make>, <model>, <year> y <engine> para que contengan datos de caracteres analizados (#PCDATA), lo que significa que aceptan texto.
- Las listas de atributos (ATTLIST) definen valores de atributos válidos. Por ejemplo, el elemento model debe especificar "two" o "four" para el atributo doors, y el elemento engine debe incluir un atributo transmission establecido en "manual" o "automatic".
Este ejemplo de automóviles es una Document Type Definition relativamente sencilla. Las DTD que se usan en aplicaciones reales, especialmente las que admiten grandes conjuntos de datos XML, pueden tener cientos o miles de líneas. Las DTD pequeñas suelen incluirse dentro de los documentos XML, mientras que las grandes se guardan como archivos independientes (con una extensión .DTD) y se referencian mediante una URL. Aunque los lenguajes de esquemas más recientes, como XML Schema (XSD), ofrecen opciones de validación más flexibles, las DTD siguen siendo la forma estándar de definir la estructura de los documentos XML.
NOTE: HTML 2 a 4.01 (1995-1999) usaban DTD para definir las etiquetas y los atributos permitidos de un archivo HTML. HTML5 abandonó las referencias a DTD externas y comienza cada documento HTML con <DOCTYPE html>.
Pon a prueba tu conocimiento