Nombre de referencia

xmlintro — Introducción a XML

Descripción

Puede pensarse en un archivo XML[23] como un documento con estructura. Para dar estructura se emplean marquillas que delimitan elementos. Un elemento puede tener atributos, otros elementos que dan estructura o contenido. El siguiente ejemplo comienza con el elemento secuencia:

	
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE secuencia PUBLIC "-//Structio//DTD secuencia 1.1" "sec.dtd">
<secuencia formato="texto" tipos="periodo">
  <desc>Secuencia sobre fe en Jesús</desc>
  <derechos tipo="Dominio público" tiempo="2003">Liberado al dominio público. No se ofrecen garantías</derechos>
  <biblio>http://de.geocities.com/nuestroamigojesus/bdp</biblio>
  <autor fecha="2003">Vladimir Támara</autor>
  <sec tipo="periodo" id="p1"><desc>Primer periodo</desc>
    <refcla tipo="Indicador" idcla="contexto.geografía"/>
    <refcla tipo="Indicador" idcla="contexto.historia"/>
  </sec>
  <sec tipo="periodo" id="p2"><desc>Segundo periodo</desc>
    <refcla tipo="Indicador" idcla="establece.reflexiona"/>
  </sec>
</secuencia>

 

Note que los elementos se encierran entre < y > y que todo elemento que se abre debe cerrarse, por ejemplo el elemento secuencia que se abre en la tercera línea, se cierra en la última con </secuencia>.

Antes del primer elemento, en la primera línea, se declara que se trata de un documento XML que emplea caracteres de español[24].

Las marquillas que pueden emplearse y la forma como se emplean se especifican en un DTD[25], para este ejemplo tal DTD se identifica con

 <!DOCTYPE secuencia PUBLIC "-//Structio//DTD secuencia 1.1" "sec.dtd">

Este DTD es un archivo (sec.dtd) que está en algún directorio de su sistema que puede ser ubicado por los programas que emplean XML[26].

En el ejemplo presentado el elemento secuencia esta formado por otros elementos, por ejemplo por el elemento desc, cuyo contenido es Secuencia sobre fe en Jesús. El elemento secuencia tiene también dos atributos: formato que tiene el valor texto y tipos que tiene el valor periodo

Caracteres y codificación

Dado que la codificación del ejemplo presentado es apropiada para español, pueden emplearse todos los caracteres de nuestro idioma al escribir el contenido de un elemento o el valor de un atributo. Son excepciones los caracteres <, > y & que deben escribirse como &lt;, &gt; y &amp; respectivamente. Los espacios en el contenido no serán tenidos en cuenta más que para separar palabras. Dado que el valor de un atributo debe escribirse entre comillas (") o entre apostrofes ('), pueden ser útiles las secuencias especiales &quot; y &apos; que los generan respectivamente.

Identificadores

Hay algunos atributos especiales que en el DTD están marcados como identificadores, (por ejemplo el atributo id del elemento sec) en tal caso el valor del atributo no debe contener espacios ni signos de puntuación, excepto los siguientes: ':', '.', '-', '_'. Además los identificadores deben ser únicos en todo el documento.

Entidades

Las entidades permiten: (1) incluir un archivo o (2) definir una especie de macro. Una versión simplificada del comienzo del manual de repasa es:

	  <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [
  <!ENTITY % confv SYSTEM "confv.ent">
  %confv;
  <!ENTITY repasa "<literal>repasa</literal>"> 
  <!ENTITY fcreditos SYSTEM "creditos.xdbk">
  <!ENTITY fderechos SYSTEM "derechos.xdbk"> 

Note que las entidades se declaran junto con el tipo de documento, harán parte del DTD y tendrán precedencia sobre entidades del mismo nombre del DTD -//OASIS//DTD DocBook V4.1//EN. Cada entidad se declara primero y se usa después cuantas veces sea necesario. Por ejemplo la entidad confv se declara en la segunda línea y se incluye en la tercera con %confv;. La declaración indica que se trata del archivo confv.ent y el símbolo % indica que es una entidad que se emplea en el DTD. Las otras entidades presentadas no son apropiadas para el DTD sino para el contenido en si del documento XML, por ejemplo la entidad repasa abrevia la cadena <literal>repasa</literal> y cada vez que en un atributo o en contenido se emplee &repasa;. Por su parte la entidad fcreditos hace referencia al archivo creditos.xdbk, cada vez que en el documento se emplee &fcreditos; se incluirá el contenido completo de tal archivo.

Ver también

La descripción de los formatos de repasa def(1), prdef(5) clasif(5) secuencia(5)

La especificación completa de XML 1.0 está disponible en: http://www.w3.org/TR/REC-xml



[23] XML proviene de Extensible Markup Language (lenguaje de marcado extensible)

[24] ISO-8859-1 se refiere a un estándar para codificación de caracteres, que puede codificar todos los caracteres de los lenguajes de Europa occidental.

[25] DTD proviene de Document Type Declaration

[26] Para ubicar archivos XML pueden emplear un catálogo que asocia el identificador del tipo de documento con archivos del sistema de archivos. Las herramientas de repasa no usan catálogos sino vías configuradas en el momento de la instalación.