Lo primero que debemos saber es que hay dos tipos de documentos
XML: válidos y bien formados. Éste es uno de los aspectos
más importantes de este lenguaje, así que hace falta
entender bien la diferencia:
Bien formados: son todos los que cumplen las especificaciones
del lenguaje respecto a las reglas sintácticas que después
se van a explicar, sin estar sujetos a unos elementos fijados en
un DTD (luego veremos lo que es un DTD). De hecho lo s documentos
XML deben tener una estructura jerárquica muy estricta, de
la que se hablará más tarde, y los documentos bien
formados deben cumplirla.
Válidos: Además de estar bien formados, siguen
una estructura y una semántica determinada por un DTD: sus
elementos y sobre todo la estructura jerárquica que define
el DTD, además de los atributos, deben ajustarse a lo que
el DTD dicte.
¿Y qué es un DTD? Pues es una definición
de los elementos que puede haber en el documento XML, y su relación
entre ellos, sus atributos, posibles valores, etc. De hecho DTD
está por Document Type Definition, o Definición de
Tipo de Documento. Es una especie de definición de la gramática
del documento, en definitiva. Más adelante hablaré
de cómo se incluye un DTD en un documento XML, pero lo importante
ahora es entender que cuando se procesa cualquier infomación
formateada mediante XML, lo primero es comprobar si está
bien formada, y luego, si incluye o referencia a un DTD, comprobar
que sigue sus reglas gramaticales. Hay pues diferencia entre los
parsers que procesan documentos XML sin comprobar que siguen las
reglas marcadas por un DTD (sólo comprue ban que está
bien formado), que se llaman parsers no validadores, y los que sí
lo hacen, que son parsers validadores (comprueba que además
de bien formado se atiene a su DTD y es válido).
Pues bien, los DTD no son más que definiciones de los elementos
que puede incluir un documento XML, de la forma en que deben hacerlo
(qué elementos van dentro de otros) y los atributos que se
les puede dar. Normalmente la gramática de un lenguaje se
defi ne mediante notación EBNF; si alguno la conoce, se habrá
dado cuenta de que es bastante engorrosa. Pues el DTD hace lo mismo
pero de un modo más intuitivo.
Las Entidades o Entities:
Mediante estos elementos especiales es posible dotar de modularidad
a nuestros documentos XML. Se pueden definir, del mismo modo que
los propios DTDs de los que ya hemos hablado, dentro del mismo documento
XML o en DTDs externos.
Las primeras entidades que hemos conocido son los carácteres
especiales &, ", ', < y >, que vimos que debíamos
escribir mediante las declaraciones: &, ", ',
< y >. Es decir, que cuando queramos refe renciar
alguna entidad definida dentro de nuestro documento o en otro documento
externo, deberemos usar la sintáxis: &nombre;.
Hojas de estilo para XML: XSL
Aunque se ha establecido un modo para que podamos usar hojas de
estilo CSS (Cascade Style Sheets) dentro de documentos XML, es lógico
pensar que para aprovechar las características del nuevo
lenguaje hace falta tener un estándar paralelo y similar
asoc iado a él. De este modo en el W3C están trabajando
sobre la nueva recomendación XSL: eXtensible Stylesheet Language.
Aún no ha llegado a ser recomendación, y de momento
es un public draft, esto es, un documentosujeto a comentarios y
correcciones. < /P>
|