DTD – Document Type Definition

Los DTD permiten especificar:

  • Qué elementos pueden formar parte de un documento XML.
  • Qué relación existe entre esos elementos.
  • Qué atributos pueden tener los elementos.
  • Qué posibles valores pueden tomar los atributos.

Pueden declararse junto con el documento XML o externamente
Si se incluye en el documento XML debe declarase dentro de la etiqueta: 
       <!DOCTYPE root-element [element-declarations]>

Si se declara externamente la etiqueta sería:
       <!DOCTYPE root-element SYSTEM “filename”>

Las DTDs tienen una sintaxis propia. Los bloques principales son:

  • Elements : define la etiqueta de un documento XML
  • Attributes : define los atributos que puede tener un elemento. Son parejas atributo/valor”
  • Entities : variables que definen texto
  • PCDATA : parsed character data. Será analizado por el parser.
  • CDATA: character data. No es analizado por el parser

Declaración de elementos

Cabe distinguir las siguientes opciones

1) Un elemento compuesto por otros
  <!ELEMENT element-name child-element-name,child-element-name,…..)>

2) Un elemento compuesto por la sola ocurrencia de otro elemento
  <!ELEMENT element-name (child-name)>

3) Un elemento compuesto por uno o más ocurrencias de otro elemento
  <!ELEMENT element-name (child-name+)>

4) Un elemento compuesto por cero o más ocurrencias de otro elemento
  <!ELEMENT element-name (child-name*)>

5) Un elemento compuesto por cero o uno ocurrencia de otro elemento
  <!ELEMENT element-name (child-name?)>

6) Un elemento compuesto por uno u otro elemento
  <!ELEMENT element-name (child-name| child-name)>

Declaración de atributos

La sintaxis por defecto empleada para definición de atributos de un elemento es:

<!ATTLIST element-name attribute-name attribute-type default-value>

Declaración de entidades

La sintaxis por defecto empleada para definición de entidades se basa en la siguiente etiqueta:

  <!ENTITY entity-name “entity-value”>
 

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: