A veces es más fácil entender cómo escribir un XML bien formado viendo un ejemplo. El boletín de noticias de Web Writer está escrito usando una forma de XML – lo llamamos AML o About Markup Language (ver figura). Aunque se trata de un documento de trabajo, en realidad no es un documento XML válido y bien estructurado.
Índice de contenidos
Bien formado
Hay algunas reglas específicas para crear un documento XML bien formado:
- La declaración XML debe ser lo primero en cada documento.
- Los comentarios no son válidos dentro de una etiqueta. Los comentarios no pueden contener dos guiones en una fila, excepto el principio y el final del comentario.
- Las etiquetas deben tener una etiqueta final, o estar cerradas dentro de la propia etiqueta singleton, por ejemplo
. - Todos los atributos de las etiquetas deben ser citados, preferiblemente comillas dobles, a menos que el atributo en sí mismo contenga una comilla doble.
- Cada documento XML debe contener un elemento que contenga completamente todos los demás elementos.
Sólo hay dos problemas con el documento que hacen que no esté bien formado:
Lo primero que necesita el documento AML es una declaración XML.
El otro problema es que no hay un solo elemento que encierre completamente todos los demás elementos. Para solucionar esto, añadiremos un elemento contenedor externo:
Hacer esos dos simples cambios (y asegurarse de que todos los elementos contengan sólo CDATA) convertirá el documento no bien formado en un documento bien formado.
Un documento XML válido se valida contra una Definición de Tipo de Documento (DTD) o Esquema XML. Son un conjunto de reglas creadas por el desarrollador o por una organización de estándares que definen la semántica del documento XML. Éstos le indican a la computadora qué hacer con el marcado.
En el caso del About Markup Language, como éste no es un lenguaje XML estándar, como XHTML o SMIL, la DTD será creada por el desarrollador. Lo más probable es que la DTD se encuentre en el mismo servidor que el documento XML y se haga referencia a ella en la parte superior del documento.
Antes de empezar a desarrollar un DTD o Esquema para sus documentos, debe darse cuenta de que simplemente por estar bien formado, un documento XML se autodescribe, y por lo tanto no necesita un DTD.
Por ejemplo, con nuestro documento ALD bien formado, existen las siguientes etiquetas:
- wWw.Subs-Team.Tv P r e s e n t a.
- wWw.Subs-Team.Tv P r e s e n t a.
- wWw.Subs-Team.Tv P r e s e n t a.
Si está familiarizado con el boletín de noticias de Web Writer, es posible que reconozca las diferentes secciones del boletín. Esto hace que sea muy fácil crear nuevos documentos XML utilizando el mismo formato estándar. Siempre poníamos el título completo en la etiqueta, y la primera sección URL en la etiqueta.
DTDs
Si se le pide que escriba un documento XML válido, ya sea para utilizar los datos o para procesarlos, lo incluiría en su documento con la etiqueta. En esta etiqueta, se define la etiqueta XML base en el documento y la ubicación de la DTD (normalmente una URI Web). Por ejemplo:
Boletín informativo de DOCTYPE SYSTEM "aml-newsletter.dtd">.
Una cosa buena de las declaraciones DTD es que se puede declarar que una DTD es local al sistema donde se encuentra el documento XML con el «SYSTEM». También puede apuntar a una DTD pública, por ejemplo, con un documento HTML 4.0:
DOCTYPE HTML PUBLIC «-//W3C//DTD HTML 4.0 Transitional///EN»>
.
Cuando se utilizan ambos, se indica al documento que utilice una DTD específica (el identificador público) y dónde encontrarla (el identificador del sistema).
Finalmente, puede incluir un DTD interno directamente en el documento, dentro de la etiqueta DOCTYPE. Por ejemplo (esto no es una DTD completa para el documento ALD):
Newsletter de DOCTYPE <
!
[
<
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>.
.
)
.
>.
.]><
Esquema XML
Para crear un documento XML válido, también puede utilizar un documento de esquema XML para definir su XML. Esquema XML es un documento XML que describe documentos XML. Aprenda a escribir un esquema.
Nota
No basta con apuntar a un esquema DTD o XML. El XML que se encuentra en el documento debe seguir las reglas de la DTD o Esquema. El uso de un analizador de validación es una forma sencilla de comprobar que su XML sigue las reglas de la DTD. Usted puede encontrar muchos de estos analizadores en línea.