Cómo definir un elemento en XML con DTD ELEMENT

20/Mar/2013 XML , 1 Comentario

Los DTD son los documentos que nos sirven para definir documentos XML. Los DTD son básicos para la formulación de documentos XML por tanto usar los DTD es necesario para tener documentos XML bien formados. Por lo tanto nos ayudarán a la definición de los elementos de un documento XML mediante DTD ELEMENT.

Dentro del DTD estableceremos qué elementos puede contener nuestro documento XML. Imaginen una estructura XML que pueda albergar mensajes de texto, es decir, una estructura como la siguiente:

  1. <texto>
  2. <mensaje></mensaje>
  3. </texto>

Tanto texto como mensaje son dos elementos XML que deberemos de definir dentro del DTD del documento XML con DTD ELEMENT.

Lo primero que tenemos que hacer al iniciar el DTD es la definición del XML y su versión además de su codificación.

  1.  
  2. <?xml version="1.0" encoding="UTF-8"?>
  3.  

Acto seguido pasaremos a definir los elementos texto y mensaje con DTD ELEMENT. Para definir elementos utilizamos el tag DTD ELEMENT mediante la siguiente estructura:

  1. <!ELEMENT nombreelemento tipo>
  2. <!ELEMENT nombreelemento (contenido)>

El primer de DTD ELEMENT caso lo utilizaremos para codificar elementos sencillos, es decir, aquellos que no aniden a otros elementos. En este caso indicaremos el tipo de contenido que puede albergar mediante un tipo.

Esto nos servirá para definir nuestro elemento mensaje, al cual le daremos un tipo PCDATA.

  1. <!ELEMENT mensaje (#PCDATA)>

En el segundo caso del DTD ELEMENT nos sirve para definir elementos que contengan a otros elementos. En ese caso el contenido será el nombre de los elementos que contengan, separados por coma y con modificadores que indiquen la cantidad de veces que pueden aparecer.

Esta segunda estructura DTD ELEMENT nos servirá para definir el texto, el cual contiene el mensaje.

  1. <!ELEMENT texto (mensaje+)>

En el caso de texto pusimos (mensaje+) para indicar que mensaje es un subelemento del elemento texto. El más (+) significa que el elemento mensaje debe aparecer al menos una vez dentro del elemento texto, pero que puede aparecer N veces.

Otros modificadores de DTD ELEMENT que indican el número de ocurrencias son:

  • No poner nada, el elemento aparecerá una sola vez.
  • ?, el elemento puede aparecer o no.
  • +, el elemento aparece 1 o N veces.
  • *, el elemento puede aparecer 0 o N veces

Finalmente nuestro DTD final sería este:

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!ELEMENT texto (mensaje+)>
  3. <!ELEMENT mensaje (#PCDATA)>

Para hacer uso del DTD desde nuestros documentos XML lo haríamos de la siguiente forma:

  1. <?xml version="1.0"?>
  2. <!DOCTYPE texto SYSTEM "texto.dtd">
  3. <texto>
  4. <mensaje>Hola mundo</mensaje>
  5. </texto>

Difunde el Conocimiento

Si te ha gustado el artículo o te ha sido de utilidad, no dejes de compartirlo con tus amigos en las redes sociales... Te estaremos muy agradecidos. :-D

¿Algo que nos quieras comentar?

Déjanos tu comentario, no te preocupes que tu email no será publicado

*

*