Partiendo del siguiente fichero XML, implementar su DTD.
<?xml version="1.0" encoding="UTF-8"?>
<inventario>
<material id="C001" categoria="Computadora" marca="Lenovo" modelo="ThinkPad X1 Carbon">
<especificaciones procesador="Intel Core i7" memoriaRAM="16GB" almacenamiento="512GB SSD">
<sistemaOperativo>Windows 10 Pro</sistemaOperativo>
<puertos>USB-C, HDMI, USB-A</puertos>
</especificaciones>
<ubicacion area="IT" edificio="Principal">Sala de servidores</ubicacion>
</material>
<material id="C002" categoria="Computadora" marca="Dell" modelo="XPS 15">
<especificaciones procesador="Intel Core i9" memoriaRAM="32GB" almacenamiento="1TB SSD">
<sistemaOperativo>Windows 10 Pro</sistemaOperativo>
<puertos>USB-C, HDMI, SD Card Reader</puertos>
</especificaciones>
<ubicacion area="Diseño" edificio="Secundario">Estudio creativo</ubicacion>
</material>
<material id="I001" categoria="Impresora" marca="HP" modelo="LaserJet Pro M404dn">
<especificaciones tipoConexion="Red cableada" resolucionImpresion="4800 x 600 dpi"/>
<ubicacion area="Contabilidad" edificio="Anexo">Oficina 204</ubicacion>
</material>
<material id="I002" categoria="Impresora" marca="Brother" modelo="HL-L2370DW">
<especificaciones tipoConexion="WiFi" resolucionImpresion="2400 x 600 dpi"/>
<ubicacion area="Administración" edificio="Principal">Recepción</ubicacion>
</material>
<material id="S001" categoria="Software" nombre="Microsoft Office 365">
<licencia tipo="Corporativa" version="2021" plataforma="Multiplataforma"/>
<usuarios maximo="500">Ilimitado en la red corporativa</usuarios>
</material>
<material id="S002" categoria="Software" nombre="Adobe Creative Cloud">
<licencia tipo="Corporativa" version="Última" plataforma="Multiplataforma"/>
<usuarios maximo="300">Diseñadores y equipo de marketing</usuarios>
</material>
<material id="R001" categoria="Router" marca="Cisco" modelo="RV340">
<especificaciones velocidad="Gigabit Ethernet" seguridad="Firewall integrado">
<puertos>4 x Gigabit Ethernet LAN, 2 x Gigabit Ethernet WAN</puertos>
</especificaciones>
<ubicacion area="IT" edificio="Principal">Sala de redes</ubicacion>
</material>
</inventario>
Partiendo del siguiente fichero XML, implementar su DTD.
<?xml version="1.0" encoding="UTF-8"?>
<empresa>
<trabajador id="T001">
<nombre>Juan Pérez</nombre>
<departamento>IT</departamento>
<puesto>Administrador de Sistemas</puesto>
<email>juan.perez@empresa.com</email>
<telefono>555-1234</telefono>
</trabajador>
<trabajador id="T002">
<nombre>Maria Gómez</nombre>
<departamento>Contabilidad</departamento>
<puesto>Contadora Principal</puesto>
<email>maria.gomez@empresa.com</email>
<telefono>555-5678</telefono>
</trabajador>
<trabajador id="T003">
<nombre>Carlos López</nombre>
<departamento>Marketing</departamento>
<puesto>Director de Marketing</puesto>
<email>carlos.lopez@empresa.com</email>
<telefono>555-9101</telefono>
</trabajador>
<trabajador id="T004">
<nombre>Sofía Martín</nombre>
<departamento>Diseño</departamento>
<puesto>Diseñadora Gráfica</puesto>
<email>sofia.martin@empresa.com</email>
<telefono>555-1122</telefono>
</trabajador>
</empresa>
Del siguiente fichero DTD de árboles, implementar un posible fichero xml.
<!ELEMENT bosque (arbol+)>
<!ELEMENT arbol (especie, altura, edad, ubicacion)>
<!ELEMENT especie (#PCDATA)>
<!ELEMENT altura (#PCDATA)>
<!ELEMENT edad (#PCDATA)>
<!ELEMENT ubicacion (latitud, longitud)>
<!ELEMENT latitud (#PCDATA)>
<!ELEMENT longitud (#PCDATA)>
<!ATTLIST bosque nombre CDATA #REQUIRED
ubicacion CDATA #IMPLIED>
<!ATTLIST arbol id ID #REQUIRED
tipo (conifera|frondosa) #REQUIRED>
<!ATTLIST especie nombreCientifico CDATA #REQUIRED
nombreComun CDATA #IMPLIED>
<!ATTLIST altura unidad (metros|pies) "metros">
<!ATTLIST edad unidad (años|decadas) "años">
<!ELEMENT personas (persona+)>
<!ELEMENT persona (nombre, aficion+)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT aficion (actividad, descripcion?)>
<!ELEMENT actividad (#PCDATA)>
<!ELEMENT descripcion (#PCDATA)>
<!ATTLIST personas grupo CDATA #REQUIRED>
<!ATTLIST persona id ID #REQUIRED edad CDATA #IMPLIED genero (masculino|femenino|otro) #IMPLIED>
<!ATTLIST aficion tipo (deporte|arte|tecnologia|musica|lectura|viajar) #REQUIRED nivel (principiante|intermedio|avanzado) #IMPLIED>
<!ATTLIST actividad nombre CDATA #REQUIRED frecuencia (diaria|semanal|mensual|anual) #IMPLIED>