Programación en castellano
Inicio > Tutoriales > Java y XML > APIs de Java para XML
-Tutoriales

APIs de Java para XML


Introducción

XML hace los datos portables. La plataforma Java hace los datos portables. Los APIs Java para XML hacen fácil el uso del XML. Pongamos todo esto junto y tendremos la combinación perfecta: portabilidad de datos, portabilidad de codigo y facilidad de uso. De hecho, con los APIs de Java para XML, podremos obtener los beneficios del XML con un uso directo de XML muy pequeño.

Las empresas están descubriendo rápidamente los beneficios de usar XML para la integración de los datos, tanto internamente para compartir datos legales entre departamentos, como externamente para compartir datos con otras empresas. Y a causa de la integración de datos que ofrece XML, se ha convertido en indispensable para los nuevos cálculos relacionados con la Web.

La parte realmente dura del desarrollo de sericios Web es la programación de la infraestructura, o "tuberías", como las capacidades de seguridad y de mensajería, el manejo de transaciones distribuidas, y el control de almacenes de conexiones. Otra dificultad es que esos servicios web deben ser capaces de manejar un enorme número de usuarios simultáneamente, por eso las aplicaciones deben ser altamente escalables. Estos requerimientos son los que ofrece extacmente la plataforma Java TM, Enterprise Editon (J2EE TM ). Si añadimos a esto que la plataforma J2EE es una tecnología demostrada con múltiples vendedores ofreciendo productos compatibles a día de hoy, nos encontramos con que la plataforma J2EE es la mejor plataforma para desarrollar servicios Web. Y con los nuevos APIs de Java para XML, el desarrollo de servicios Web se está convirtiendo cada vez en más sencillo.

El objetivo de este tutorial es aclarar qué hacen los APIs de Java para XML y cómo pueden facilitar la escritura de aplicaciones Web. Describe cada uno de los APIs individualmente y luego presenta un escenrario que muestra como pueden trabajar juntos. También menciona otras tecnologías actualmente disponibles y cómo poder usarlas en conjunción con los API de Java para XML.

En la siguiente dirección podrás encontrar información más detallada sobre los APIs de Java para XML:

http://java.sun.com/xml

. ¿Qué es XML?

XML (eXtensible Markup Language) es un estándar industrial para representar datos, independiente del sistema. Al igual que HTML (HyperText Markup Language), XML encierra los datos en etiquetas, pero hay importantes diferencias entre los dos lenguajes de marcas. Primero, las etiquetas XML tiene relación con el significado del texto que encierran, mientras que las etiquetas HTML específican cómo mostrar el texto encerrado. El siguiente ejemplo XML muestra una lista de precios con el nombre y el precio de dos cafés:

<priceList>
	<coffee>
		<name>Mocha Java</name>
		<price>11.95</price>
	</coffee>
	<coffee>
		<name>Sumatra</name>
		<price>12.50</price>
	</coffee>
</priceList>

Las etiquetas <coffee> y </coffee> le dicen al analizador que la información que hay entre ellas trata sobre un café. Las otras dos etiquetas dentro de las etiquetas <coffee> especifican que la información encerrada son el nombre del café y su precio por libra. Como las etiquetas XML especifican el contenido y la estructura de los datos que encierran es posible hacer cosas como archivar o buscar datos.

Un segunda diferencia importante entre XML y HTML es que las etiquetas XML son extensibles, permiténdonos escribir nuestras propias etiquetas XML para describir nuestro contenido. Con HTML, estábamos limitados a usar sólo aquellas etiquetas que habían sido predefinidas en la especificación HTML.

Con la extensibilidad que proporciona XML, podemos crear las etiquetas que necesitemos para un tipo de documento en particular. Definimos las etiquetas usando un esquema de lenguaje XML. Un esquema describe la estructura de un conjunto de documentos XML y puede usarse para limitar los contenidos de los documentos XML. Probablemente el lenguaje de esquema más ampliamente utilizado es el Document Type Definition. Un esquema escrito en este lenguaje se llama DTD. El siguiente DTD define las etiquetas usadas en el documento XML de la lista de precios. Especifica cuatro etiquetas (elementos) y además específica qué etiquetas podrían ocurrir (o es necesario que ocurran) dentro de otras etiquetas. El DTD también define la estructura de árbol de un documento XML, incluyendo el orden en que deberían ocurrir las etiquetas:

<!ELEMENT priceList (coffee)+>
<!ELEMENT coffee (name, price) >
<!ELEMENT name (#PCDATA) >
<!ELEMENT price (#PCDATA) >

La primera línea del ejemplo nos dá el elemento de más alto nivel priceList, lo que significa que todas las otras etiquetas del documento deben ocurrir entre las etiquetas <priceList> y </priceList>. La primera línea también dice que el elemento priceList debe contener uno o más elementos coffee (indicado por el signo más). La segunda línea especifica que cada elemento coffee debe contener un elemento name y un elemento price, en este orden. La tercera y cuarta línea especifican que los datos entre las etiquetas <name> y </name> y entre las etiquetas <price> y </price> son del tipo caracter y deberían analizarse. El name y el price de cada coffee son el texto real que componen la lista de precios.

. ¿Qué hace que el XML sea Portable?

Un DTD, como el del ejemplo anterior, es lo que le da al XML su portabilidad. Si una aplicación recibe un documento priceList en formato XML y tiene el DTD priceList, puede procesar el documento de acuerdo a las reglas especificadas en el DTD. Por ejemplo, dando el DTD priceList, un analizador conocerá la estructura y el contenido de cualquier documento XML basado en esa DTD. Si el analizador es un analizador validante, sabrá que el documento no es válido si contiene elementos que no están incluidos en la DTD, como <tea>, o si el elemento price precede al elemento name.

Otras características también contribuyen a la popularidad de XML como un método para intercambio de datos. Por una cosa, está escrito en formato de texto, lo pueden leer tanto los humanos como los sofwares de edición de texto. Las aplicaciones pueden analizar y procesar documentos XML, y los humanos también pueden leerlos en caso de que haya algún error en el procesamiento. Otra característica es que como un documento XML no incluye instrucciones de formateo, puede mostrarse de varias formas. Mantener los datos separados de las instrucciones de formateo significa que los mismos datos pueden prublicarse en diferentes medios.

. Introducción a los APIs de Java para XML

Los APIs de Java para XML nos permiten escribir aplicaciones Web completamente en el lenguaje Java. Se dividen en dos categorías: aquellas que tratan directamente con documentos XML y aquellas que tratan con procedimientos:

  • Oientadas a Documento:
    • API Java para Procesar XML (JAXP) — procesa documentos XML usando varios analizadores.
    • Arquitectura Java para Uniones XML (JAXB) — mapea elementos XML a clases del lenguaje Java.
  • Orientadas a Procedimiento:
    • API Java para Mensajería XML (JAXM) — envía mensajes SOAP sobre Internet de una forma estándar.
    • API Java para Registros XML (JAXR) — proporciona una forma estándar para acceder a registros de negocios que comparte información.
    • API Java para RPC basado en en XML (JAX-RPC) — envía llamadas a métodos SOAP a partes remotas sobre Internet y recibe los resultados.

Quizás la característica más importante de los APIs de Java para XML es que todos soportan los estándars de la industria, así se aseguran la interoperabilidad. Varios grupos de estandarización, com el "World Wide Web Consortium" (W3C) y la "Organization for the Advancement of Structured Information Standards" (OASIS), han estado definiendo formas estándars de hacer las cosas para que las empresas que siguan estos estándars pueden hacer que sus datos y aplicaciones funcionen juntos.

Otra característica de los APIs de Java para XML es que pemiten una gran flexibiliad. Los usuarios tienen flexibilidad en el modo de utilizar los APIs. Por ejemplo, el código JAXP puede usar varias herramientas para procesar un documento XML, y el código JAXM puede usar varios protocolo de mensajes encima de SOAP. Los implementadores también tienen flexibilidad. Los APIs Java para XML definen requerimientos de compatibilidad estricta para asegurarse que todas las implementaciones siguen la funcionalidad estándar, pero también le dan a los desarrolladores una gran libertad para proporcionar implementaciones hechas a medida para usos específicos.

Las siguientes secciones explican cada uno de stos APIs, dando una introducción y explicando como usarlos.

 
Patrocinados
 

Copyright © 1999-2007 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network

red internet: musica mp3 | logos y melodias | hospedaje web linux | registro de dominios | servidores dedicados
más internet: comprar | recursos gratis | posicionamiento en buscadores | tienda virtual | gifs animados