DTD Practice es una colección de Document Type Definitions validadas contra sus documentos XML correspondientes, desarrollada como práctica de la asignatura Lenguajes de Marca y Sistemas de Gestión de Información del Grado Superior de DAW — IES Augustóbriga.
Este repositorio contiene ejercicios prácticos de DTD organizados en cuatro bloques temáticos. Cada bloque incluye un documento XML y su DTD de validación asociada. Los esquemas trabajan con:
- Declaración de elementos (
<!ELEMENT>) con modelos de contenido:EMPTY,ANY, mixtos y secuencias. - Declaración de atributos (
<!ATTLIST>) con tiposCDATA,ID,IDREF,NMTOKENy valores por defecto. - Indicadores de ocurrencia (
?,*,+) para controlar la cardinalidad de los elementos. - DTD interna y externa referenciada desde el prólogo del documento XML.
- Entidades (
<!ENTITY>) para reutilización de contenido y referencias.
DTD_Practice/
├── Aeropuerto/
│ ├── aeropuerto.xml # Documento XML de vuelos y aeropuerto
│ └── aeropuerto.dtd # DTD de validación
├── Departamentos/
│ ├── departamentos.xml # Documento XML de departamentos y empleados
│ └── departamentos.dtd # DTD de validación
├── EjercicioLiga/
│ ├── liga.xml # Documento XML de clasificación de liga de fútbol
│ └── liga.dtd # DTD de validación
└── Factura/
├── factura.xml # Documento XML de facturas y líneas de pedido
└── factura.dtd # DTD de validaciónClona el repositorio:
git clone https://github.com/sorgazb/DTD_Practice.git
cd DTD_Practice- Instala la extensión XML de Red Hat.
- Añade la referencia a la DTD en el prólogo del
.xml:
<!DOCTYPE raiz SYSTEM "esquema.dtd">- VS Code validará automáticamente al guardar.
xmllint --dtdvalid Aeropuerto/aeropuerto.dtd Aeropuerto/aeropuerto.xml --nooutSi la DTD está embebida dentro del propio .xml:
xmllint --valid --noout aeropuerto.xmlHaz fork del repositorio.
Crea una rama de trabajo:
git checkout -b feature/nueva-dtdRealiza tus cambios y haz commit.
Abre un Pull Request describiendo tus mejoras.
Práctica LMSGI – GS DAW – IES Augustóbriga – Sergio Orgaz Bravo