Skip to content

sorgazb/DTD_Practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DTD Practice

DTD XML W3C VS Code Lenguajes de Marca

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.


📋 Descripción

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 tipos CDATA, ID, IDREF, NMTOKEN y 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.

🏗️ Estructura del Proyecto

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ón

⚙️ Validación

Clona el repositorio:

git clone https://github.com/sorgazb/DTD_Practice.git
cd DTD_Practice

Opción 1 — Visual Studio Code (recomendado)

  1. Instala la extensión XML de Red Hat.
  2. Añade la referencia a la DTD en el prólogo del .xml:
<!DOCTYPE raiz SYSTEM "esquema.dtd">
  1. VS Code validará automáticamente al guardar.

Opción 2 — xmllint (Linux / macOS)

xmllint --dtdvalid Aeropuerto/aeropuerto.dtd Aeropuerto/aeropuerto.xml --noout

Opción 3 — Validación inline (DTD interna)

Si la DTD está embebida dentro del propio .xml:

xmllint --valid --noout aeropuerto.xml

🤝 Contribución

Haz fork del repositorio.

Crea una rama de trabajo:

git checkout -b feature/nueva-dtd

Realiza tus cambios y haz commit.

Abre un Pull Request describiendo tus mejoras.


Práctica LMSGI – GS DAW – IES Augustóbriga – Sergio Orgaz Bravo

About

Repository with DTD Scripts

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors