miércoles, 9 de abril de 2008

Trabajar con ficheros XML, diferentes opciones

Como sabéis, los más potentes validadores XML y transformadores XSLT son los navegadores que tenemos instalados en nuestros equipos: IE, Firefox, Opera, etc.

Arrastrando sobre ellos un XML nos lo validan, nos lo transforman (si hay un XSLT asociado), nos lo muestran en forma de árbol, nos permiten navegar por sus nodos, etc.

No necesitamos instalar nada para ello!!!

Si no es suficiente:

Editores XML:

1. ECLIPSE: de serie incluye un sencillo editor XML, pero podemos "pegarles" otros más potentes mediante plugins, como el XMLBuddy.

Ver: http://www.eclipse.org
Ver: http://xmlbuddy.com/2.0/products.html

2. FOXE: muy sencillo (para instalar con un simple zip), consume muy pocos recursos y más que suficiente, la mayor parte de las veces. Yo lo utilizo mucho.

Ver: http://www.firstobject.com/dn_editor.htm

3. WMHELP XMLPAD: un poco más potente que el anterior.

Ver: http://www.wmhelp.com/download.htm

4. Y de pago tenemos... OXIGEN y ALTOVA XMLSPY: son dos de los productos más maduros, famosos y profesionales del mercado.

Trabajar con XML (fundamentalmente con APIs JAVA) :

1. Java incorpora un API (JAXP) en su JVM para trabajar con ficheros XML.

2. También son muy interesantes los proyectos XALAN y XERCES de Apache, que tienen "ports" en Java y en C++.

3. A mi, personalmente, me gusta mucho DOM4J (http://www.dom4j.org) que es el que yo utilicé, en su día, para los proyectos de la empresa donde trabajo.

4. Uno de los APIs Java más interesantes lo proporciona, también, Apache en su proyecto commons-digester (http://commons.apache.org/digester). Este API te permite mapear ficheros XML a clases Java.

Este proyecto es utilizado internamente por muchos de los productos con los que trabajamos, día a día, y que utilizan XML como ficheros de configuración, por ejemplo.

5. Hay más: JDOM (http://www.jdom.org), Jaxen (http://jaxen.org) que es un motor XPath, etc.

Generar ficheros XML en nuestras aplicaciones:

DOM4J y JDOM (y otros) permiten generar ficheros XML mediante la exportación a texto (por ejemplo) de documentos XML que vamos generando con estos APIs: creando el objeto documento, generando los nodos, enganchándolos al documento (o a otros nodos) y luego "serializando" este objeto documento a un fichero de texto.

A veces resulta tedioso y es más sencillo generar un fichero de texto, como un fichero de texto más de los que genera nuestra aplicación, que cumpla con las reglas de un fichero XML (claro está).

No hay comentarios: