Javadabbadoo.org - Tu comunidad Java parlante XML
Inicio | Cursos infosintesis.net liberados | Java SE Avanzado | Creación de una DTD que valida documentos XML
Creación de una DTD que valida documentos XML
Paso 2: Operativa

Nota: La síntesis de las palabras clave y la sintaxis de las DTDs la podemos encontrar en Apéndice - Palabras clave y sintaxis de las DTDs

Añadir un atributo obligatorio

Ampliamos el documento coches.xml añadiendo un nuevo subelemento precio que contiene el atributo moneda

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE coches SYSTEM 'coches.dtd'>
<coches>
 <coche>
  <marca>Renault</marca>
  <modelo categoria="monovolumen">Avantime</modelo>
  <motor tipo="gasolina">
   <cilindrada unidad="cc">3000</cilindrada>
  </motor>
  <precio moneda="euros">36060</precio>
 </coche>
 <coche>
  <marca>Skoda</marca>
  <modelo categoria="berlina">Fabia</modelo>
  <motor>
   <cilindrada>2000</cilindrada>
  </motor>
  <precio moneda="euros">15025</precio>
 </coche>
</coches>

Ahora vamos a ampliar el documento coches.dtd


 

Este es el código ampliado del documento coches.dtd

<?xml version="1.0" encoding="UTF-8"?>

<!ELEMENT coches (coche+)>
<!ELEMENT coche (marca, modelo, motor, precio)>
<!ELEMENT marca (#PCDATA)>
<!ELEMENT modelo (#PCDATA)>
<!ATTLIST modelo categoria (monovolumen | berlina | deportivo | lujo | otro) #REQUIRED>
<!ELEMENT motor (cilindrada)>
<!ATTLIST motor tipo (gasolina | diesel) "gasolina">
<!ELEMENT cilindrada (#PCDATA)>
<!ATTLIST cilindrada unidad CDATA #FIXED "cc">
<!ELEMENT precio (#PCDATA)>
<!ATTLIST precio moneda (
dolares_americanos | euros | libras_esterlinas) #REQUIRED>

JavaDabbaDoo.org
Tu comunidad Java parlante. Cursos abiertos, tutoriales y mucho mucho más ...