Manual de XML en castellano

Ir al Indice General


En esta página:

Preparándonos para trabajar

A lo largo de este capítulo, vamos a ver las herramientas y aplicaciones que son necesarias para poder trabajar con los ejemplos de este tutorial.

En principio, y para los primeros capítulos, sólo nos hará falta:

Más adelante, a medida que vayamos profundizando en el XML y tecnologías asociadas, seguro que nos irán haciendo falta nuevas aplicaciones que ya iremos describiendo en su momento.

A continuación vamos a ver que herramientas existen hoy en día para trabajar con XML, aunque de una forma muy superficial. A lo largo de 1998 ha sido increíble la gran cantidad de aplicaciones que han aparecido y, sin duda, a lo largo del 1999 esta evolución va a continuar de forma más notable. Por tanto, no me parece práctico profundizar en el tema si tenemos en cuenta que esta información será caduca en unas cuantas semanas. Por lo tanto, sólo describiré brevemente las herramientas que estoy utilizando para elaborar este tutorial y sus ejemplos.

Para estar al día sobre este tema os recomiendo que visitéis las direcciones que recomiendo al final del capítulo y la sección Recursos de HTML en castellano.

Editores XML

Un editor XML es una aplicación que nos ofrece facilidades para crear y editar documentos XML.

Para empezar, es recomendable que utilicéis un simple editor de texto y, una vez que estéis familiarizados con la sintaxis y características del XML, podremos pasar a editores que nos hagan la vida un poco más fácil (¡o más difícil!).

Podemos diferenciar dos tipos de editores XML:

Los del primer tipo presentan la estructura del documento XML en forma de árbol, y nos permiten construir nuestro documento trabajando sobre este árbol y formularios adicionales.

Algunos de este tipo son:

Los del segundo tipo son editores normales de ficheros de texto, pero con facilidades de edición enfocadas al XML.

De los que conozco os recomiendo:

En ambos tipos hay que diferenciar los que trabajan contra una DTD y, por lo tanto, validan el contenido de lo que escribimos, y los que simplemente nos aseguran que el documento XML es bien formado, es decir, sintácticamente correcto respecto de las especificaciones del XML.

La elección de uno u otro dependerá del tipo de documento que estemos escribiendo. Si queremos escribir un documento XML como el ejemplo del capítulo anterior (tipo la información que introducimos en una base de datos) nos vendrá bien uno del primer tipo. En cambio, si queremos escribir un documento con gran cantidad de texto (por ejemplo un manual) nos vendrá mejor uno del segundo tipo. En cualquiera de los dos casos es recomendable que permita trabajar sobre una DTD.

Hay que aclarar que simplemente estoy hablando de editores sencillos y al alcance de la mayoría de nosotros al ser gratuitos o muy baratos. Por supuesto existen editores muchos más complejos, que nos permiten editar nuestros documentos XML/SGML como si lo hiciésemos en un procesador de texto. Es el caso del ADEPT de ArborText o de las facilidades para trabajar sobre SGML/XML de la última versión de WordPerfect, y FrameMaker+SGML.

Pero para empezar, lo que os decía en un principio, el editor de textos de toda la vida.

Editor DTD

En una DTD se define como es la estructura de un documento XML, es decir, los elementos que formarán ese tipo de documento y cómo están relacionados. Recordad, que al contrario que en SGML, no son obligatorias en XML, aunque si recomendable utilizarlas al menos durante el periodo de diseño y validación de los documentos.

Para empezar, os recomiendo que como editor de DTD utilicéis también vuestro editor de textos habitual. Además, en este caso, nos encontramos con el problema de que resulta bastante complicado encontrar un editor gratuito de DTDs.

De los que conozco y he probado os recomiendo:

También son interesantes las aplicaciones que dado un documento XML te generan una DTD. Es el caso de:

Pero para empezar, lo dicho, nuestro editor de textos habitual.

Parsers XML

Un parser o procesador de XML es la herramienta principal de cualquier aplicación XML. Mediante este parser no sólo podremos comprobar si nuestros documentos están bien formados o válidos, sino que también podremos incorporarlos a nuestras aplicaciones, de manera que estas puedan manipular y trabajar con documentos XML.

Actualmente hay muchos y para todos los lenguajes y plataformas: Java, C, Phyton, Visual Basic, Perl, Tcl, Delphi, etc., aunque los parsers en Java son mayoría. Y es que el Java y el XML son la pareja perfecta porque ambos se complementan muy bien. El XML contribuye con datos independientes de la plataforma (documentos y datos portables). Java contribuye con el procesamiento independiente de la plataforma (soluciones de software portátiles orientadas a objetos). Como dijo Jon Bosak [1] en su conocido artículo, XML, Java y el futuro de la Web: "XML dará trabajo al Java".

Todas las grandes compañías ya han elaborado sus propios procesadores de XML:

Y existen muchos más completamente gratis.

La utilización de uno u otro dependerá de vuestras necesidades, aunque es importante que siempre tengáis en cuenta la diferencia entre los que simplemente comprueban que el documento está bien formado, o el que valida respecto de una DTD.

Aunque si tenéis una buena conexión a Internet, también os pueden resultar útiles las siguientes direcciones desde las que podréis validar vuestros documentos XML.

Yo por el momento estoy utilizando el parser de IBM en su versión 1_1_14. Para poderlo utilizar tenéis que seguir los siguientes pasos:

  1. Está realizado en Java, por lo que en tendríais que tener vuestra máquina preparada para trabajar con este lenguaje. Yo tengo instalado el JDK 1.1.5 y por ahora me funciona perfectamente.

  2. Una vez instalado el JDK y comprobado que funciona, nos bajamos el parser desde la Web de IBM. Ocupa 1324 KB.

  3. Descomprimimos el ZIP, y nos creará la carpeta XML4J. Dentro nos encontramos más carpetas con ejemplos y documentación, aunque por el momento lo que más nos interesa son los dos ficheros JAR que cuelgan de la carpeta principal: xml4j_1_1_14.jar y xml4jSamples_1_1_14.jar

  4. Para utilizarlo con comodidad he creado el fichero pxml.bat:

    
    jre -cp d:\xml4j\xml4j_1_1_14.jar;d:\xml4j\xml4jSamples_1_1_14.jar 
    	 samples.XJParse.XJParse -d %1 >tmp.txt
    
    

    De esta manera, cada vez que quiera parsear un documento XML no tendré más que escribir:

    
    pxml mifichero.xml
    
    

    Fijaros que simplemente tenéis que indicar la dirección de los ficheros .jar.

    La razón del fichero tmp.txt, es que el parser vuelve a generar en la salida el fichero XML, por lo que la reenvio hacia este fichero, obteniendo de esta manera simplemente los errores.

  5. Y ahora ya estamos en condiciones de probarlo. Para ello si queréis os podéis bajar los siguientes ficheros XML:

    Y si tenemos el pxml.bat y los ficheros XML en el mismo directorio, no tenemos más que escribir:

    
    pxml libro.xml
      y
    pxml libro1.xml
    
    

Más adelante

Por el momento, con las herramientas descritas tenemos más que suficiente para empezar. Seguro que a lo largo del curso nos irán haciendo falta nuevas aplicaciones. Ya existen para trabajar con XSL, DSSSL, con Xlink, Xpointer, RDF, etc. y mi intención es irlas utilizando y explicando a lo largo de este manual.

Enlaces Recomendados

Robin Cover's XML Information
http://www.oasis-open.org/cover/
Sin duda alguna la guía más completa sobre SGML/XML que nos podemos encontrar en Internet.

Free XML software
http://www.stud.ifi.uio.no/~larsga/linker/XMLtools.html
Estupenda recopilación de software gratuito relacionado con XML. Esta página esta mantenida por Lars Marius Garshol.

XMLSOFTWARE
http://www.xmlsoftware.com/
Estupenda página sobre software XML mantenida por James Tauber.

Anotaciones:

[1]Jon Bosak es el padre del XML. No sólo fue el que tuvo las ideas originales y seleccionó el equipo de trabajo, sino que organiza y dirige actualmente el grupo de trabajo de XML del W3C. Sin Bosak el XML no hubiera existido.

Ir al Indice General Ir al principio de la página.


© 99, Joaquin Bravo Montero
Convertido a HTML utilizando DSSSL y el Jade de James Clark.