Servicios Web

María Jesús Lamarca Lapuente. Hipertexto: El nuevo concepto de documento en la cultura de la imagen.


 

Inicio     navega al azar mapa conceptual  buscar

Existen numerosas definiciones de Servicios Web y esto demuestra, en parte, la gran complejidad de los servicios que se agrupan bajo este término y las implicaciones asociadas a ellos. Hasta ahora la definición más general y convincente es decir que los Servicios Web son el conjunto de aplicaciones o tecnologías con capacidad para interoperar en la Web. Estas tecnologías intercambian datos entre ellas con el fin de ofrecer unos servicios.

La World Wide Web no es sólo un espacio de información, también es un espacio de interacción. Utilizando la Web como plataforma, los usuarios, de forma remota, pueden solicitar un servicio que algún proveedor ofrezca en la red. Pero para que esta interacción funcione, deben existir unos mecanismos de comunicación estándares entre diferentes aplicaciones. Estos mecanismos deben poder interactuar entre sí para presentar la información de forma dinámica al usuario. Se precisa, pues, una arquitectura de referencia estándar que haga posible la interoperabilidad y extensibilidad entre las distintas aplicaciones y que permita su combinación para realizar operaciones complejas.

funcionamiento de los Servicios Web

Fuente: W3C Oficina Española. "Los Servicios Web en funcionamiento". Guía Breve de Servicios Web. http://www.w3c.es/Divulgacion/Guiasbreves/ServiciosWeb

Con el fin de estandarizar los diferentes aspectos relacionados con los servicios web o Web Services (WS), el W3C recoge todo lo referente a estos en: Web Services Activity (http://www.w3.org/2002/ws/).

Así pues, Web Services (WS) ofrece una un significado estándar para interoperar entre diferentes aplicaciones de software corriendo en diferentes plataformas y/o marcos de trabajo. El W3C pretende diseñar la arquitectura, definirla y crear el núcleo de tecnologías que hagan posible los Servicios Web. Esta arquitectura se basa en los siguientes componentes:

  •  Diseñar un marco de mensajería:

    • Simple SOAP: Simple Object Access Protocol es un protocolo simple para intercambiar información estructurada en un ambiente descentralizado y distribuido. "Messaging Framework" define, usando tecnologías XML, un marco extensible de mensajería que contiene una construcción del mensaje que se pueda intercambiar con una variedad de protocolos subyacentes. http://www.w3.org/TR/soap12-part1/

    • Web Services Addressing (WS-Addressing): Direccionamiento de Servicios Web. La dirección de los servicios Web proporciona mecanismos neutrales para transportar los servicios web y los mensajes. Define un sistema de características abstractas y una representación de XML para referirse a servicios de la Web y para facilitar la dirección final de los mensajes. Esta especificación permite a los sistemas de mensajería soportar la transmisión del mensaje a través de redes que incluyen el procesado de nodos tales como gestión final, cortafuegos y pasarelas mediante una forma de transporte neutro. http://www.w3.org/TR/ws-addr-core/

    • SOAP Message Transmission Optimization (MTOM) Descripción de la Optimización de la Transmisión del Mensaje. Describe una característica abstracta y una puesta en práctica concreta para optimizar el formato de la transmisión y/o de la vía de los mensajes SOAP. http://www.w3.org/TR/soap12-mtom/

  •  Descripción de los Servicios:

    • Web Services Description Language (WSDL): Lenguaje de Descripción de los Servicios Web. Se trata de un lenguaje para describir Servicios Web. La especificación define el lenguaje básico que puede usarse para describir servicios Web basados en un modelo abstracto de lo que ofrece el servicio. También define los criterios de conformidad de los documentos en relación a este lenguaje. http://www.w3.org/TR/wsdl20/

    • Web Services Choreography Description Language (WS-CDL): Lenguaje de Descripción de la Coreografía de los Servicios Web. Es un lenguaje basado en XML que describe colaboraciones peer to peer de los participantes definiendo, desde un punto de vista global, un comportamiento observable común y complementario; donde ordenado el mensaje, intercambia el resultado de acuerdo a un objetivo de negocios común. http://www.w3.org/TR/ws-cdl-10/

Los servicios web que se basan en XML permiten que las aplicaciones compartan información y que además invoquen funciones de otras aplicaciones independientemente de cómo se hayan creado dichas aplicaciones e independientemente del sistemas operativo o plataforma en que se ejecuten y de los dispositivos utilizados en el acceso. Los servicios Web XML, aunque sean independientes entre sí, pueden vincularse para realizar una tarea. Por ejemplo, Google, utiliza un Servicio Web -Google Web APIs- basado en los estándares SOAP y  WSDL que permite programar en Java, Perl ó Visual Studio.NET y que sirve para la recuperación de información permitiendo utilizar este buscador en distintas plataformas y Servicios Web. http://www.google.com/apis/ Por su parte, Amazon Web Services ofrece una serie de de aplicaciones de referencia que permiten a los desarrolladores acceso directo a la plataforma de tecnología de Amazon y construir aplicaciones propias. Una lista promenorizada de muchos de los servicios web existentes en la actualidad los ofrece XMethod: http://www.xmethods.com

Además, existen numerosos proyectos como Web Services and Semantic (WS2) Project (http://www.w3.org/2004/WS2/) cuyo objetivo es promover los Servicios Web y trabajar en la integración de la semántica en la Web, o el proyecto Infrawebs Europe http://www.infrawebs.org/ cuyo objetivo es desarrollar un marco para que los desarrolladores de software y proveedores de servicios puedan generar y establecer plataformas de desarrollo para aplicaciones de Servicios Web que sean abiertas, extensibles y reconfigurables.

Como se ha afirmado anteriormente, los servicios web se componen de varias capas entre las que destacan: servicios de transporte (constituidos por los protocolos del nivel más bajo, que codifican la información independientemente de su formato, y que pueden ser comunes a otros servicios), de mensajería, de descripción y de descubrimiento.

En la capa inferior se encuentran los servicios de transporte que son los encargados de establecer la conexión y el puerto utilizado. Lo más común es emplear el protocolo de hipertexto HTTP, pero también se pueden usar otros protocolos como SMTP (Simple Mail Transfer Protocol o Protocolo de Transmisión de Correo Simple que es el protocolo que nos permite recibir correos electrónicos), o el protocolo FTP (File Transfer Protocol) En la capa siguiente se encuentran los servicios de mensajería que especifican cómo se tiene que codificar el mensaje que contiene los datos que se intercambian entre el ordenador cliente y el ordenador servidor. Como se ha afirmado, el protocolo más utilizado en esta capa es SOAP que permite utilizar cualquiera de los protocolos de transporte antes mencionados y que utiliza el lenguaje XML para especificar los mensajes.

Por su parte, la función del lenguaje  WSDL (Web Service Description Language) es decirle a una aplicación qué formato usar para comunicarse, especificando por medio de un lenguaje estándar, tanto la dirección del servicio como la interfaz que se va a utilizar. WSDL es un lenguaje basado en XML para describir servicios en la Web. Ofrece a los proveedores de servicios, una formato básico de descripción de las peticiones de servicios web sobre diferentes protocolos o codificaciones.

Existe un grupo de trabajo dentro del W3C, el Web Services Description Working Group http://www.w3.org/2002/ws/desc/ que analiza y desarrolla el lenguaje WSDL. WSDL se usa para describir qué puede hacer un servicio web, dónde reside, y cómo invocarlo. WSDL define los servicios como colecciones de puntos finales de la red o puertos. En WSDL la definición abstracta de puntos finales y mensajes se separa de su concreto despliegue en la red o  formato de datos ligados. Esto permite reutilizar las definiciones abstractas de los mensajes, que son descripciones abstractas de los datos que están siendo intercambiados, y los tipos de puerto, que son colecciones abstractas de operaciones. El protocolo concreto y las especificaciones del formato de datos para un tipo particular de puerto constituye un enlace reutilizabe. Un puerto se define por asociación a una dirección de red con un enlace reutilizable; una colección de puertos define un servicio. Y, así, un documento WSDL usa los siguientes elementos en la definición de servicios en red:

  •  Tipos (Types): un contenedor para definiciones del tipo de datos que usan algunos tipos de sistemas (tal como XSD).

  •  Mensaje (Message): una definición abstracta tipo del dato que está siendo comunicado.

  •  Operación (Operation): una descripción abstracta de una acción soportada por el servicio.

  •  Tipo de puerto (Port Type): un conjunto abstracto de operaciones soportadas por uno o más puntos finales.

  •  Conexión   (Binding): un protocolo concreto y una especificación de formato de datos para un tipo de puerto particular.

  •  Puerto (Port): un punto final individual definido como una combinación de una conexióny una dirección de la red.

  •  Servicio (Service): una colección de puntos finales relacionados.

Por último, en la capa superior se encuentra UDDI (Universal Description, Discovery and Integration), un protocolo que permite no sólo describir servicios web, sino también describir productos, compañías, transacciones, etc. UDDI es uno de los principales edificios construidos para llevar a cabo los servicios Web. UDDI provee un mecanismo para que los clientes encuentren de forma dinámica otros servicios web creando una plataforma interoperable estándar que permite a las compañías usar de forma rápida, fácil y dinámica los servicios Web. Usando la interfaz de UDDI, pueden conectarse dinámicamente la empresas con los servicios proporcionados por socios externos. Para ello es necesario registrarse en UDDI y los registros pueden tener diversos propósitos y usarse en distintos contextos. Existen 2 tipos de clientes: compañías que desean publicar un servicio (y su interfaz de uso) y clientes que desean obtener cierta clase de servicios por medio de una conexión. UDDI se monta sobre SOAP y asume que las consultas y las respuestas son objetos de UDDI enviados como mensajes de SOAP. El W3C también está teniendo en consideración los desarrollos del protocolo UDDI. Se trata de un esfuerzo conjunto de la industria y en el que intervienen proveedores de las principales plataformas y software, así como operadores en el mercado y líderes de los negocios dentro del consorcio de los estándares OASIS. El proyecto UDDI no es específico de una industria, sino que cualquier compañía de cualquier parte del mundo puede  beneficiarse de esta iniciativa. http://www.uddi.org/

Así pues, la plataforma básica de los Servicios Web es el lenguaje XML construido sobre el protocolo de hipertexto HTTP y para el intercambio de esta información estructurada en un entorno descentralizado y distribuido, se utiliza el protocolo SOAP (Simple Object Access Protocol), pero en los Servicios Web también intervienen otros mecanismos, lenguajes y tecnologías entre las que se encuentran el lenguaje WSDL, el protocolo UDDI y otros lenguajes como WSFL, WSML, WSMO, WSMX, etc.

El lenguaje WSFL o Web Services Flow Language es un lenguaje XML para describir la composición de los servicios web como parte de una definición del proceso de negocio. Fue diseñado por IBM como parte de un marco tecnológico de servicios web y para completar las especificaciones existentes. WSDL considera 2 tipos de servicios web: el primer tipo especifica un proceso de negocio ejecutable conocido como Modelo de flujo (flowModel) y el segundo tipo es un negocio en colaboración conocido como Modelo global (globalModel).

The layered Web services stack with UDDI. Fuente: Tom Bellwood. Understanding UDDI.
http://www-128.ibm.com/developerworks/webservices/library/ws-featuddi/

      

   Flow of UDDI messages between Client and Registry.Fuente: Tom Bellwood. Understanding UDDI.
http://www-128.ibm.com/developerworks/webservices/library/ws-featuddi/

Para describir los servicios web, el W3C recomienda utilizar el Web Service Modeling Language (WSML) o Lenguaje de Modelado de Servicios Web que provee una sintaxis formal y una semántica para el modelado de ontologías de servicios web (Web Service Modeling Ontology -WSMO-). WSML está basado en diferentes lógicas formales, llamadas Lógica de descripción (Description Logics), Lógica de Primer Orden (First-Order Logic) y Lógica de Programación (Logic Programming), que se usan para el modelado de Servicios de la Web Semántica. WSML consta de un número de variantes basadas en estas diferentes lógicas formales llamadas WSML-Core, WSML-DL, WSML-Flight, WSML-Rule y WSML-Full. WSML-Core es el núcleo el lenguaje y las otras variantes WSML ofrecen incrementos de expresividad en la dirección de la Descripción Lógica y la Lógica de Programación. Por último, ambos paradigmas se unifican en WSML-Full, la variante más expresiva de WSML.

WSML se especifica en términos de una sintaxis normativa legible por seres humanos. Pero además de esta sintaxis legible por seres humanos, WSML tiene una sintaxis XML y RDF para el intercambio sobre la Web y para la interoperabilidad con aplicaciones basadas en RDF. También es posible el mapeo entre ontologías WSML y ontologías OWL para interoperar con ontologías OWL por medio de un subconjunto semántico común de OWL y WSML. Más información al respecto, se puede obtener en: http://www.wsmo.org/wsml/wsml-syntax, http://www.wsmo.org/wsml y http://www.w3.org/Submission/WSML/.

Por su parte, Web Service Modeling Ontology (WSMO) u Ontología de Modelado para Servicios Web  se basa en el Marco de Modelado de Servicios Web (WSMF) que separa los elementos que se necesitan para describir servicios en ontologías, servicios Web, objetivos y mediadores. WSML es el lenguaje usado para describir todos estos elementos. El modelo de servicios describe el comportamiento del servicio en términos de procesos y de constructos de control. La base conecta procesos, entradas y salidas en el modelo de proceso a un determinado protocolo de transporte descrito en un documento de WSDL (http://www.wsmo.org y http://www.w3.org/Submission/WSMO/)

WSMO supone uno de los mayores esfuerzos con el propósito de especificar la información semántica de los Servicios Web para hacer posible la automatización de servicios, su composición y ejecución. WSMO recomienda el uso de vocabularios ampliamente aceptados tales como metadatos Dublin Core y FOAF. En WSMO, un objetivo especifica qué quiere el usuario y las descripción del servicio Web definen la capacidad que proporciona el servicio. Con WSMO también pueden expresarse las propiedades no funcionales del servicio. (http://www.wsmo.org/TR/d2/v1.2/)

También se ha desarrollado WSMX (Web Service Modelling eXecution environment) que es el entorno de ejecución de modelado de servicios web y la implementación de referencia de WSMO. Se trata de la ejecución de un entorno para integración de las aplicaciones de los compañías donde los servicios web están integrados por varias aplicaciones. El objetivo es incrementar la automatización de los procesos en los negocios de una manera flexible mientras se ofrecen soluciones de integración escalable. El lenguaje interno de WSMX es WSML. (http://www.wsmx.org/)

Por último, también existe el lenguaje SWSL (Semantic Web Services Language) un lenguaje para describir la ontología de los servicios de la Web Semántica (SWSO). SWSL tiene 2 partes: SWSL-FOL, un lenguaje de lógica de primer orden, y SWSLRules, un lenguaje basado en reglas. SWSL-FOL se usa principalmente para la especificación formal de la ontología y para proeer interoperabilidad con otros modelos de procesos basados en la lógica de primer orden y otras ontologías de servicios. Por el contrario, SESL-Rules está diseñado para ser un lenguaje actual para la especificación de servicios. (http://www.w3.org/Submission/SWSF-SWSL/)

Otros proyectos destacables en el campo de la semántica de los servicios web son:

Un nuevo estudio de la industria, Semantic Wave 2006, predice que el mercado de la tecnología semántica rondará los "50 billones de dólares USA" hacia 2010, con los consiguientes impactos sobre las industrias de las tecnologías de la información y la comunicación. Pero, sin duda, también tendrán su impacto económico sobre los usuarios de la red. Los servicios de la Web Semántica permiten que las aplicaciones ya no estén alojadas en los ordenadores clientes (como hasta ahora ocurría con las aplicaciones que se descargaban, ejecutaban e instalaban en el ordenador del usuario, ya fuera mediante programas originales o copias piratas), sino que permanecerán en los servidores y serán ofrecidas por un proveedor a modo de servicio web al que se deberá acceder cada vez que se quiera hacer uso del servicio. Esto es, con la puesta en marcha de los servicios web se podrá cobrar por cada acceso o uso individual del servicio web correspondiente. Una filosofía de signo bien contrario a la que, en paralelo, se está desarrollando mediante la llamada Web social y colaborativa o Web 2.0


Bibliografía

BOX, Don. A brief history of SOAP. http://webservices.xml.com/pub/a/ws/2001/04/04/soap.html

MILLS, Davis (dir). Semantic Wave 2006. SemTech 2006. http://www.semantic-conference.com/semanticwave.html [Volver]

MOLLER, Anders. SCHAWARTZBACH, Michael I. Interactive Web Services with Java, JSP, Servlets, JWIG, SOAP, WSDL, UDDI. http://www.brics.dk/~amoeller/WWW/

MOLLER, Anders. SCHWARTZBACH, Michael I. "Schema Languages". http://www.brics.dk/ixwt/IXWT_C04c.pdf In An Introduction to XML and Web Techonologies

MOLLER, Anders. SCHWARTZBACH, Michael I. "Chapter 11. Web Services".  http://www.brics.dk/ixwt/webservices.pdf  In An Introduction to XML and Web Techonologies. Slides PDF.  http://www.brics.dk/ixwt/slides.html

OGBUJI, Uche. Using WDSL in SOAP applications: An introduction to WDSL for programmers. http://www-128.ibm.com/developerworks/library/ws-soap/?dwzone=ws

VASUDEVAN, Venu. A Web Services Primer. http://webservices.xml.com/pub/a/ws/2001/04/04/webservices/index.html

VeriSign. XML Trust Services Overview. http://www.verisign.com/rsc/wp/xml/xmloverview/xmloverview_wp.pdf

W3C.es Guía breve de Servicios Web. http://www.w3c.es/Divulgacion/Guiasbreves/ServiciosWeb

W3C. Semantic Web Activity. http://www.w3.org/2001/sw/

W3C. Simple SOAP. http://www.w3.org/TR/soap12-part1/

W3C. SOAP Message Transmision Optimization (MTOM). http://www.w3.org/TR/soap12-mtom/

W3C. Web Services Addredsing (WS-Addressing). http://www.w3.org/TR/ws-addr-core/

W3C. Web Services Description Language (WSDL). http://www.w3.org/TR/wsdl20/

W3C. Web Services Choreography Description Language (WS-CDL). http://www.w3.org/TR/ws-cdl-10/

W3C. Web Services, Semantic and Standarization: An Overview. http://www.w3.org/2005/Talks/0712-hh-ec/

 WEb Services Int

XAML http://www.xaml.org

XMethods. http://www.xmethods.com/

   Arriba 


 

 Título: Hipertexto, el nuevo concepto de documento en la cultura de la imagen
 Autora: María Jesús Lamarca Lapuente (currículo personal)

 Contacta

 Tesis doctoral. Universidad Complutense de Madrid

 URL: http://www.hipertexto.info

 Fecha de Actualización: 08/12/2013   

 184 páginas web. 2.627 archivos. 2.208 imágenes. Tamaño: 52.406Kb.
 34.389 enlaces (10.436 externos y 23.953 internos)
  

Esta obra está licenciada bajo las siguientes condiciones: 
Creative Commons License
Creative Commons Reconocimiento-NoComercial-NoDerivados-Licencia España 2.5.

 


OTRAS PÁGINAS DE LA AUTORA
 

           Blog El Cultural a la PuertaBlog El Cultural a la Puerta:: http://puertadetoledo.blogspot.com/ 

                                                                                                                AGETECA. Base de Datos de Gestión Cultural
                                                                                                                 Ageteca. Base de Datos de Gestión Cultural:
      
                                                                                                    http://www.agetec.org/ageteca

Fundación Ricardo Lamarca, ajedrez y cultura

Fundación Ricardo Lamarca, Ajedrez y cultura http://www.fundacionlamarca.es

 

 

La artesa digital

Blog La artesa digital
http://artesadigital.blogspot.com.es

Especial Poesía: Hasta allí hemos llegado

Blog La artesa digital Flickr La artes@ digital: Galería de fotos mundo
 digital y mundo analógico: http://www.flickr.com/photos/artesadigital/

Blog miembras

Blog Miembras: usos lingüísticos, políticos y sociales del lenguajeBlog Miembras: Usos lingüísticos, políticos
 y sociales del lenguaje http://miembras.blogspot.com

 

Mapa de navegación / Tabla de contenido / Mapa conceptual / Tabla de documentos / Buscador / Bibliografía utilizada / Glosario de Términos / Índice Temático / Índice de Autores