Ya hemos visto como podemos definir un atributo obligatorio en XML dentro de un DTD. Ahora vamos a ver como podemos definir un atributo no obligatorio en XML. Los pasos son iguales, solo que en este caso vamos a utilizar el demarcador #IMPLIED.
Pero vamos por pasos. Lo primero, definir nuestro elemento XML atendiendo a la estructura:
Nuestro elemento XML contacto se definirá de la siguiente forma:
Ahora vamos a crear un atributo para el elemento «contacto». En este caso vamos a crear el atributo «fax». La estructura para crear el atributo será la siguiente:
Por lo tanto nuestro atributo «fax» se definirá así:
Lo siguiente será manejar la clausula #IMPLIED que ya habíamos comentado al principio. Esta se indica después del tipo de atributo, siguiendo la siguiente estructura:
Para conseguir que el atributo fax sea un atributo no obligatorio en XML lo escribiremos de la siguiente forma:
Cuando estemos creando nuestro documento XML atendiendo a un DTD que tenga atributos no obligatorios XML como el que acabamos de definir nos encontraremos que tanto:
Como:
Son elementos que hacen que el documento XML sea válido.