SlideShare a Scribd company logo
1 of 95
Download to read offline
Servicios Web
         WS semánticos
                 OWL-S
                 WSMO
         SWS y agentes




   Servicios Web Semánticos

        Miguel Rebollo Pedruelo

   Dept. Sistemas Informáticos y Computación
         Univ. Politécnica de Valencia


Agentes de Información y Web Semántica
       Master IARFID 2008-2009




            M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


Contenidos


  1   Servicios Web

  2   Servicios Web para la Web Semántica

  3   OWL-S: OWL orientado a servicios

  4   Web Service Modeling Ontology (WSMO)

  5   Servicios Web Semánticos y Agentes



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                                         Introducción
                        WS semánticos
                                         SOAP
                                OWL-S
                                         WSDL
                                WSMO
                                         UDDI
                        SWS y agentes


Contenidos


  1   Servicios Web

  2   Servicios Web para la Web Semántica

  3   OWL-S: OWL orientado a servicios

  4   Web Service Modeling Ontology (WSMO)

  5   Servicios Web Semánticos y Agentes



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                                         Introducción
                        WS semánticos
                                         SOAP
                                OWL-S
                                         WSDL
                                WSMO
                                         UDDI
                        SWS y agentes


¿Qué es un Servicio Web?


  Definición
      Aplicaciones autocontenidas, auto-descriptivas y modulares. . .
      basadas en contenidos XML. . .
      que pueden publicarse, localizarse e invocarse en la Web

      Se localizan mediante registros de servicios web
      Pueden ampliarse con metadatos descriptivos para los
      consumidores del servicio



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                                       Introducción
                      WS semánticos
                                       SOAP
                              OWL-S
                                       WSDL
                              WSMO
                                       UDDI
                      SWS y agentes


Novedades que aportan

   Modelos basados en compo-           Modelos de Servicios Web
   nentes
   Aplicaciones      fuertemente       Aplicaciones        débilmente
   acopladas (alta dependencia         acopladas (baja dependencia
   entre sistemas)                     entre sistemas)
   Diseñado para procesos inter-       Diseñado para procesos exter-
   nos de las empresas                 nos de las empresas
                                       Protocolos     y    tecnologías
   Diferentes protocolos y tec-
                                       comunes      (XML,      SOAP,
   nologías (DCOM, CORBA. . . )
                                       WSDL. . . )



                         M. Rebollo    Servicios Web Semánticos
Servicios Web
                                    Introducción
                   WS semánticos
                                    SOAP
                           OWL-S
                                    WSDL
                           WSMO
                                    UDDI
                   SWS y agentes


Estructura de un Servicio Web


                                     Descripción ¿qué hacen?
                                     WSDL/WSFL, OWL-S, RDF,
                                     ebXML

                                     Descubrimiento
                                     ¿cómo encontrarlos?
                                     UDDI, ebXML, WS Inspection
                                     Language

                                     Comunicación ¿cómo usarlos?
                                     SOAP, JAXM/RPC

                      M. Rebollo    Servicios Web Semánticos
Servicios Web
                                         Introducción
                        WS semánticos
                                         SOAP
                                OWL-S
                                         WSDL
                                WSMO
                                         UDDI
                        SWS y agentes


En pocas palabras. . .

  Para disponer de una plataforma completa que proporcione
  servicios web son necesarias capas para. . .
      descripción de la naturaleza de los servicios
      localización de servicios
      invocación remota de los servicios
  Las tecnologías que se emplean habitualmente son:
      WSDL para la descripción de los servicios
      UDDI para la localización de servicios web
      XML-RPC o SOAP para invocación remota


                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                                    Introducción
                   WS semánticos
                                    SOAP
                           OWL-S
                                    WSDL
                           WSMO
                                    UDDI
                   SWS y agentes


Estructura y estándares


                     SOAP: Simple Object Access Protocol
                     WSDL: Web Services Description Lang.
                     UDDI: Universal Description, Discovery
                     and Integration
                     BPEL: Business Process Execution Lang.
                     XAML: eXtensible Application Markup
                     Lang.
                     WSCL: Web Services Conversation Lang.




                      M. Rebollo    Servicios Web Semánticos
Servicios Web
                                          Introducción
                         WS semánticos
                                          SOAP
                                 OWL-S
                                          WSDL
                                 WSMO
                                          UDDI
                         SWS y agentes


XML-RPC


      permite llamadas a procedimiento remoto sobre HTTP y con
      XML para la codificación
      diseñado para ser simple: facilidad de uso

 Example
 <methodCall>
   <methodName>sample.sumAndDifference</methodName>
   <params>
     <param><value><int>5</int></value></param>
     <param><value><int>3</int></value></param>
   </params>
 </methodCall>




                            M. Rebollo    Servicios Web Semánticos
Servicios Web
                                        Introducción
                       WS semánticos
                                        SOAP
                               OWL-S
                                        WSDL
                               WSMO
                                        UDDI
                       SWS y agentes


SOAP


 Intercambio de datos y RPC sobre HTTP

 Diferencias con XML-RDF
       es algo más complejo, pero también más potente
       arropado mejor WSDL y UDDI (para servicios web)

 Cuestión
 ¿Tendría sentido usar otros protocolos? Por ejemplo, SMTP o
 XMPP, que están orientado a la comunicación (existen versiones
 de SOAP sobre ambos)


                          M. Rebollo    Servicios Web Semánticos
Servicios Web
                                        Introducción
                       WS semánticos
                                        SOAP
                               OWL-S
                                        WSDL
                               WSMO
                                        UDDI
                       SWS y agentes


SOAP


 Intercambio de datos y RPC sobre HTTP

 Diferencias con XML-RDF
       es algo más complejo, pero también más potente
       arropado mejor WSDL y UDDI (para servicios web)

 Cuestión
 ¿Tendría sentido usar otros protocolos? Por ejemplo, SMTP o
 XMPP, que están orientado a la comunicación (existen versiones
 de SOAP sobre ambos)


                          M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Estructura de un mensaje SOAP

  Mensaje encerrado en un elemento Envelope, con dos partes
       Header(opcional) información de contexto
       Body(obligatorio) que contiene el mensaje

  Example (Servicio GetWeather –ver web–)
  <?xml version="1.0" encoding="utf-8"?>
  <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
    <soap:Body>
      <GetWeather xmlns="http://www.webserviceX.NET">
        <CityName>Valencia</CityName>
        <CountryName>Spain</CountryName>
      </GetWeather>
    </soap:Body>
  </soap:Envelope>


                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Estructura de un mensaje SOAP

  Mensaje encerrado en un elemento Envelope, con dos partes
       Header(opcional) información de contexto
       Body(obligatorio) que contiene el mensaje

  Example (Servicio GetWeather –ver web–)
  <?xml version="1.0" encoding="utf-8"?>
  <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
    <soap:Body>
      <GetWeather xmlns="http://www.webserviceX.NET">
        <CityName>Valencia</CityName>
        <CountryName>Spain</CountryName>
      </GetWeather>
    </soap:Body>
  </soap:Envelope>


                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                                    Introducción
                                  WS semánticos
                                                    SOAP
                                          OWL-S
                                                    WSDL
                                          WSMO
                                                    UDDI
                                  SWS y agentes


Respuesta del Servicio Web en SOAP
  Example (Estructura de la respuesta)
  <?xml version="1.0" encoding="utf-8"?>
  <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
      <GetWeatherResponse xmlns="http://www.webserviceX.NET">
        <GetWeatherResult> string </GetWeatherResult>
      </GetWeatherResponse>
    </soap:Body>
  </soap:Envelope>



  Example (Contenido de la respuesta)
  <string>
    <CurrentWeather>
      <Location>Valencia / Aeropuerto, Spain (LEVC) 39-30N 000-28W 62M</Location>
      <Time>Jun 14, 2007 - 10:00 AM EDT / 2007.06.14 1400 UTC</Time>
      <Wind> from the SW (230 degrees) at 21 MPH (18 KT):0</Wind>
      <Visibility> greater than 7 mile(s):0</Visibility>
      <SkyConditions> mostly clear</SkyConditions>
      <Temperature> 91 F (33 C)</Temperature>
      ...
    </CurrentWeather>
  </string>

                                     M. Rebollo     Servicios Web Semánticos
Servicios Web
                                                    Introducción
                                  WS semánticos
                                                    SOAP
                                          OWL-S
                                                    WSDL
                                          WSMO
                                                    UDDI
                                  SWS y agentes


Respuesta del Servicio Web en SOAP
  Example (Estructura de la respuesta)
  <?xml version="1.0" encoding="utf-8"?>
  <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Body>
      <GetWeatherResponse xmlns="http://www.webserviceX.NET">
        <GetWeatherResult> string </GetWeatherResult>
      </GetWeatherResponse>
    </soap:Body>
  </soap:Envelope>



  Example (Contenido de la respuesta)
  <string>
    <CurrentWeather>
      <Location>Valencia / Aeropuerto, Spain (LEVC) 39-30N 000-28W 62M</Location>
      <Time>Jun 14, 2007 - 10:00 AM EDT / 2007.06.14 1400 UTC</Time>
      <Wind> from the SW (230 degrees) at 21 MPH (18 KT):0</Wind>
      <Visibility> greater than 7 mile(s):0</Visibility>
      <SkyConditions> mostly clear</SkyConditions>
      <Temperature> 91 F (33 C)</Temperature>
      ...
    </CurrentWeather>
  </string>

                                     M. Rebollo     Servicios Web Semánticos
Servicios Web
                            Introducción
           WS semánticos
                            SOAP
                   OWL-S
                            WSDL
                   WSMO
                            UDDI
           SWS y agentes


SOAP




  El emisor y el receptor deben
  compartir la misma ontología
  para comprender el mensaje.

              M. Rebollo    Servicios Web Semánticos
Servicios Web
                                         Introducción
                        WS semánticos
                                         SOAP
                                OWL-S
                                         WSDL
                                WSMO
                                         UDDI
                        SWS y agentes


WSDL


 Definition (WSDL)
 Es un formato XML para describir de forma abstracta servicios web
 como una serie de puertos a los que llegan los mensajes.

     Permite a los proveedores describir el formato de las
     peticiones bajo distintos protocolos y codificaciones
     Indica
       1   qué hace el servicio
       2   dónde se accede a él
       3   cómo se invoca



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                                 Introducción
                WS semánticos
                                 SOAP
                        OWL-S
                                 WSDL
                        WSMO
                                 UDDI
                SWS y agentes


Esquema de un mensaje WSDL
                         types: tipos de datos empleados
                         message: definición de los métodos de
                         acceso abstractos
                         operation: acciones abstractas que
                         el servicio puede realizar
                         portType: conjunto de operaciones
                         abstractas que ofrece un puerto
                         binding: protocolo y formato
                         particulares de un portType →
                         reutilización
                         port: colección de puertos-tipo
                        service colección de puertos que
                        definen el servicio
                   M. Rebollo Servicios Web Semánticos
Servicios Web
                                 Introducción
                WS semánticos
                                 SOAP
                        OWL-S
                                 WSDL
                        WSMO
                                 UDDI
                SWS y agentes


Esquema de un mensaje WSDL




                         define un grupo de puertos
                         su nombre es único
                         los puertos no se comunican entre ellos
                         puede reutilizarse un puerto con
                         diferentes vínculos (bindings)




                   M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL



  Example (Servicio)
  <wsdl:service name="GlobalWeather">
    <wsdl:port name="GlobalWeatherSoap" binding="tns:GlobalWeatherSoap">
      <soap:address
  location="http://www.webservicex.net/globalweather.asmx"/>
    </wsdl:port>
    ...
  </wsdl:service>

  (acceso al documento completo)




                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                 Introducción
                WS semánticos
                                 SOAP
                        OWL-S
                                 WSDL
                        WSMO
                                 UDDI
                SWS y agentes


Esquema de un mensaje WSDL

                         Definen el formato y el protocolo de
                         los mensajes para un portType
                         particular.
                         su nombre debe ser único en el
                         documento
                         la referencia al portType se hace por
                         el atributo type
                         debe especificar exactamente un
                         protocolo
                         no debe indicar la dirección


                   M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL
  Example (Vínculo SOAP)
  <wsdl:binding name="GlobalWeatherSoap" type="tns:GlobalWeatherSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"
      style="document"/>
      <wsdl:operation name="GetWeather">
        <soap:operation soapAction="http://www.webserviceX.NET/GetWeather"
          style="document"/>
        <wsdl:input>
          <soap:body use="literal"/>
        </wsdl:input>
        <wsdl:output>
          <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  ...
  </wsdl:binding>

  (acceso al documento completo)
                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL

  Example (Vínculo HTTP)
  <wsdl:binding name="GlobalWeatherHttpGet"
  type="tns:GlobalWeatherHttpGet">
    <http:binding verb="GET"/>
      <wsdl:operation name="GetWeather">
        <http:operation location="/GetWeather"/>
        <wsdl:input>
          <http:urlEncoded/>
        </wsdl:input>
        <wsdl:output>
          <mime:mimeXml part="Body"/>
      </wsdl:output>
    </wsdl:operation>
  ...
  </wsdl:binding>

  (acceso al documento completo)
                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL

  Example (Vínculo HTTP)
  <wsdl:binding name="GlobalWeatherHttpGet"
  type="tns:GlobalWeatherHttpGet">
    <http:binding verb="GET"/>
      <wsdl:operation name="GetWeather">
        <http:operation location="/GetWeather"/>
        <wsdl:input>
          <http:urlEncoded/>
        </wsdl:input>
        <wsdl:output>
          <mime:mimeXml part="Body"/>
      </wsdl:output>
    </wsdl:operation>
  ...
  </wsdl:binding>

  (acceso al documento completo)
                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL

  Example (Vínculo HTTP)
  <wsdl:binding name="GlobalWeatherHttpGet"
  type="tns:GlobalWeatherHttpGet">
    <http:binding verb="GET"/>
      <wsdl:operation name="GetWeather">
        <http:operation location="/GetWeather"/>
        <wsdl:input>
          <http:urlEncoded/>
        </wsdl:input>
        <wsdl:output>
          <mime:mimeXml part="Body"/>
      </wsdl:output>
    </wsdl:operation>
  ...
  </wsdl:binding>

  (acceso al documento completo)
                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                  Introducción
                WS semánticos
                                  SOAP
                        OWL-S
                                  WSDL
                        WSMO
                                  UDDI
                SWS y agentes


Esquema de un mensaje WSDL

                         representa un conjunto de operaciones
                         abstractas
                         primitivas de transmisión
                                 one-way: input
                                 request-response: input – output
                                 solicit-response: output – input
                                 notification: output
                         elemento fault para manejar errores
                         parámetros
                                 one-way: input
                                 request-response: input – output
                                 solicit-response: output – input
                                 notification: output
                   M. Rebollo     Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL


  Example (portType)
  <wsdl:portType name="GlobalWeatherSoap">
    <wsdl:operation name="GetWeather">
      <documentation>
        Get weather report for all major cities around the world.
      </documentation>
      <wsdl:input message="tns:GetWeatherSoapIn"/>
      <wsdl:output message="tns:GetWeatherSoapOut"/>
    </wsdl:operation>
    ...
  </wsdl:portType>

  (acceso al documento completo)


                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                  Introducción
                WS semánticos
                                  SOAP
                        OWL-S
                                  WSDL
                        WSMO
                                  UDDI
                SWS y agentes


Esquema de un mensaje WSDL


                         formado por una o más partes lógicas
                         el nombre debe ser único para todos
                         los mensajes del documento WSDL
                         actual
                         las partes definen los parámetros de
                         entrada o salida de los mensajes
                                 name define el nombre del parámetro
                                 type hace referencia a un tipo de
                                 datos definido en la sección
                                 wsdl:types



                   M. Rebollo     Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL



  Example (Mensaje)
  <wsdl:message name="GetWeatherSoapIn">
    <wsdl:part name="parameters" element="tns:GetWeather"/>
  </wsdl:message>
  <wsdl:message name="GetWeatherSoapOut">
    <wsdl:part name="parameters" element="tns:GetWeatherResponse"/>
  </wsdl:message>
  ...

  (acceso al documento completo)




                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                 Introducción
                WS semánticos
                                 SOAP
                        OWL-S
                                 WSDL
                        WSMO
                                 UDDI
                SWS y agentes


Esquema de un mensaje WSDL



                         incluye definiciones de tipos de datos
                         relevantes para el intercambio de
                         mensajes
                         se prefieren tipos de XML-Schema
                         (XSD)
                         independiente de si la respuesta de un
                         mensaje es XML o no




                   M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Esquema de un mensaje WSDL
  Example (Tipos)
  <wsdl:types>
    <s:schema elementFormDefault="qualified"
      targetNamespace="http://www.webserviceX.NET">
      <s:element name="GetWeather">
        <s:complexType>
          <s:sequence>
            <s:element minOccurs="0" maxOccurs="1"
              name="CityName" type="s:string"/>
            <s:element minOccurs="0" maxOccurs="1"
              name="CountryName" type="s:string"/>
          </s:sequence>
        </s:complexType>
      </s:element>
    </s:schema>
  </wsdl:types>

  (acceso al documento completo)
                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                                          Introducción
                         WS semánticos
                                          SOAP
                                 OWL-S
                                          WSDL
                                 WSMO
                                          UDDI
                         SWS y agentes


UDDI


 Registro de servicios web
     Servicio web que gestiona información sobre proveedores,
     implementación y metadatos de servicios web.
           proveedores: anunciar servicios.
           clientes: descubrir servicios de interés y obtener metadatos
           necesarios para saber utilizarlos.
       permite descubrir servicios en la web de forma dinámica (con
       SOAP)
       tModels: describen conceptos y categor?as (reutilización)



                            M. Rebollo    Servicios Web Semánticos
Servicios Web
                                         Introducción
                        WS semánticos
                                         SOAP
                                OWL-S
                                         WSDL
                                WSMO
                                         UDDI
                        SWS y agentes


Especificación UDDI


  Las especificaciones UDDI definen
   1   API en SOAP que usan las aplicaciones para solicitar y
       publicar información de/en un registro UDDI
   2   XML Schema del modelo de datos del registro y del formato
       de los mensajes SOAP
   3   definiciones WSDL de la API en SOAP
   4   definiciones de registros UDDI (technical models - tModels)
       que identifican y categorizan los registros UDDI.




                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                                          Introducción
                         WS semánticos
                                          SOAP
                                 OWL-S
                                          WSDL
                                 WSMO
                                          UDDI
                         SWS y agentes


Datos del registro UDDI

  Descripción de la entidad (páginas blancas)
      businessEntity: información general de la empresa
  Descripción del servicio (páginas amarillas)
      businessServices: información sobre los servicios que
      proporciona
  Datos técnicos (páginas verdes)
      descripción sobre el punto de acceso al servicio
      especificaciones técnicas (tModel)
           bindingTemplate: protocolos, acceso, ubicación...
           TmodelInstanceInfo: WSDL que describe el servicio


                            M. Rebollo    Servicios Web Semánticos
Servicios Web
                                    Introducción
                   WS semánticos
                                    SOAP
                           OWL-S
                                    WSDL
                           WSMO
                                    UDDI
                   SWS y agentes


Datos del registro UDDI




                      M. Rebollo    Servicios Web Semánticos
Servicios Web
                                       Introducción
                      WS semánticos
                                       SOAP
                              OWL-S
                                       WSDL
                              WSMO
                                       UDDI
                      SWS y agentes


Construcción de UDDI desde WSDL




          fuente: Understanding WSDL in a UDDI registry. IBM
                         M. Rebollo    Servicios Web Semánticos
Servicios Web
                                           Introducción
                          WS semánticos
                                           SOAP
                                  OWL-S
                                           WSDL
                                  WSMO
                                           UDDI
                          SWS y agentes


Ejemplo de registro UDDI

  Example (Entidad)
  <businessEntity businessKey="uuid:A8847507-255F-0E18-D814-78D18E6C32F6">
    <name>GlobalWeather</name>
    <description>
      GlobalWeather returns detailed, strong-typed and time-stamped
  weather data
    </description>
    <contacts>
      <contact useType="general info">
        <personName>Ingo Melzer</personName>
        <phone>0170 1234567</phone>
      </contact>
    </contacts>
    <businessServices>
    ...
    </businessServices>
  </businessEntity>

                             M. Rebollo    Servicios Web Semánticos
Servicios Web
                             Introducción
            WS semánticos
                             SOAP
                    OWL-S
                             WSDL
                    WSMO
                             UDDI
            SWS y agentes


UDDI




  La descripción de los servicios
  se realiza en lenguaje natural


               M. Rebollo    Servicios Web Semánticos
Servicios Web
                                        Introducción
                       WS semánticos
                                        SOAP
                               OWL-S
                                        WSDL
                               WSMO
                                        UDDI
                       SWS y agentes


Otros estándares relacionados


      WS-Secure: autentificación sobre SOAP
      WS-Trust: gestión de credenciales
      WS-Policy: gestión de políticas que agrupan protocolos,
      autentificación,. . .
      WS-Federation: gestión de seguridad por dominios
      BPEL: descripción de procesos en XML (sustituye a WSFL)
      WSCL: describe conversaciones como FSM




                          M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


Contenidos


  1   Servicios Web

  2   Servicios Web para la Web Semántica

  3   OWL-S: OWL orientado a servicios

  4   Web Service Modeling Ontology (WSMO)

  5   Servicios Web Semánticos y Agentes



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


¿Qué falta en los Servicios Web?




  Automatización de las tareas relacionadas con los servicios web:
  descubrimiento, selección, composición y elección.
  ⇒
  Los servicios deben ser procesables por máquinas
                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


¿Qué falta en los Servicios Web?




  Automatización de las tareas relacionadas con los servicios web:
  descubrimiento, selección, composición y elección.
  ⇒
  Los servicios deben ser procesables por máquinas
                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


¿Qué falta en los Servicios Web?




  Automatización de las tareas relacionadas con los servicios web:
  descubrimiento, selección, composición y elección.
  ⇒
  Los servicios deben ser procesables por máquinas
                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


¿Qué puede aportar la Web Semántica?

  Descubrimiento
  UDDI sólo permite búsqueda por palabras clave (como un
  buscador de web). Las técnicas de SW permitirían:
      anotación semántica de las capacidades del WS
      ontologías descentralizadas (compartidas)
      interconectadas con axiomas lógicos
      determinar qué servicio cumple el objetivo mediante inferencia
      lógica
      descripciones formales de
          pre- y postcondiciones
          entradas y salidas

                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


¿Qué puede aportar la Web Semántica?


  Negociación
  Un vez localizado el servicio, debe poder negociarse
      calidad del servicio deseada
      políticas de confianza
      formas de pago
  Además de la información "técnica" sobre el servicio, es necesario
  incluir aspectos no funcionales, como políticas o protocolos de
  seguridad.



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


¿Qué puede aportar la Web Semántica?


  Composición
  Un objetivo puede necesitar varios WS para cumplirse. Se precisa
  información semántica para
      anotar las capacidades del servicio
      describir su comportamiento
  Se requieren capacidades de planning (o scheduling) sobre servicios
  web.
          Los planificadores "habituales" no sirven ¿por qué?



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


¿Qué puede aportar la Web Semántica?



  Invocación
  Después de elegir un servicio (o una combinación), el último paso
  es su ejecución. Es necesario
      extraer información de la entrada y salida
      adaptarla a los protocolos y formatos negociados
      monitorizar y controlar la transacción durante su ejecución




                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                      WS semánticos
                              OWL-S
                              WSMO
                      SWS y agentes


Tendencias actuales




                         M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                        WS semánticos    Perfiles
                                OWL-S    Tareas
                                WSMO     Tareas
                        SWS y agentes    Acceso


Contenidos


  1   Servicios Web

  2   Servicios Web para la Web Semántica

  3   OWL-S: OWL orientado a servicios

  4   Web Service Modeling Ontology (WSMO)

  5   Servicios Web Semánticos y Agentes



                           M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                  WS semánticos    Perfiles
                          OWL-S    Tareas
                          WSMO     Tareas
                  SWS y agentes    Acceso


Ontología OWL-S



                                   Perfil Publicidad (como UDDI)
                                   Proceso Interacciones con el
                                   cliente
                                   Tareas Descomposición de
                                   procesos
                                   Realización Concreción al
                                   servicio (extensión WSDL)




                     M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                          WS semánticos    Perfiles
                                  OWL-S    Tareas
                                  WSMO     Tareas
                          SWS y agentes    Acceso


Descripción de un servicio OWL-S



  Servicio para subir fotografías a un servicio de revelado digital
  Example (UploadAgent)
  <service:Service rdf:ID="UploadAgent">
    <service:present rdf:resource="&up_profile;#UploadProfile"/>
    <service:describedBy rdf:resource="&up_process;#UploadProcess"/>
    <service:supports rdf:resource="&up_grounding;#UploadGrounding"/>
  </service:Service>




                             M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                          WS semánticos    Perfiles
                                  OWL-S    Tareas
                                  WSMO     Tareas
                          SWS y agentes    Acceso


Descripción de perfiles OWL-S


  Propósito: anunciar el servicio a entidades externas
      descripción de tipo caja negra del servicio
      descripción funcional: transformación de entradas en salidas
         1   entrada y salida expresada mediate conceptos ontológicos
             (OWL)
         2   cambios de estado con precondiciones y efectos
  A la descripción en términos de entradas (input), salidas (output),
  precondiciones y efectos del servicio se le denomina descripción
  IOPE



                             M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                          WS semánticos    Perfiles
                                  OWL-S    Tareas
                                  WSMO     Tareas
                          SWS y agentes    Acceso


Descripción de perfiles OWL-S

  Example (Perfil del servicio UploadAgent)
  <service:presentedBy rdf:resource="&up_service;#UploadAgent"/>
  <profile:serviceName>Photo Upload Service</profile:serviceName>
  <profile:textDescription>...</profile:textDescription>
  <profile:contactInformation>...</profile:contactInformation>
  <profile:hasInput rdf:resource="&up_process;#FileLocation"/>
  <profile:hasInput rdf:resource="&up_process;#FileName"/>
  <profile:hasInput rdf:resource="&up_process;#FileType"/>
  <profile:hasOutput rdf:resource="&up_process;#UploadResponse"/>
  <profile:hasResult rdf:resource="&up_process;#UploadResult"/>
  <profile:serviceParameter>
    <profile:serviceParameterName>Region</profile:serviceParameterName>
    <profile:sParameter rdf:resource="&camera;#EuropeRegion"/>
  </profile:serviceParameter>
  </service:Service>

  serviceParameter y serviceCategory son NFP
                             M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                        WS semánticos    Perfiles
                                OWL-S    Tareas
                                WSMO     Tareas
                        SWS y agentes    Acceso


Modelo de procesos OWL-S

  Describe cómo funciona el servicio → posibilidad de composición
      compatible con lenguajes de planificación, workflows. . .
      visto como un conjunto de interacciones entre el servicio y el
      cliente
      dos tipos de procesos
           atómicos: 1 entrada, 1 salida (IOPE)
           compuestos: conjunto de procesos atómicos
      problema OWL no permite variables → OWL-S define una
      clase Parameter que corresponde a las variables en SWRL.
      la entrada y salida son subclases de Parameter
      tampoco existe el concepto de alcance

                           M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                          WS semánticos    Perfiles
                                  OWL-S    Tareas
                                  WSMO     Tareas
                          SWS y agentes    Acceso


Modelo de procesos OWL-S
  Example (Modelo del proceso UploadProcess -atómico-)
  <process:AtomicProcess rdf:ID="UploadProcess">
    <process:hasInput> <process:Input rdf:ID="FileLocation">
      <process:parameterType rdf:datatype="&xsd;#anyURI">
      &camera;#PhotoLocation </process:parameterType>
    </process:Input> </process:hasInput>
    <process:hasOutput>...</process:hasOutput>
    <process:hasResult> <process:Result rdf:ID="UploadResult">
    ...
      <process:hasEffect>
        <expr:PDDL-Expression>
        (uploaded ?client ?server ?file)
        </expr:PDDL-Expression>
      </process:hasEffect>
    </process:Result> </process:hasResult>
  </process:AtomicProcess>

  Otros lenguajes, como KIF y SWRL pueden usarse para expresar
  efectos                 M. Rebollo Servicios Web Semánticos
Servicios Web   Ontología
                        WS semánticos    Perfiles
                                OWL-S    Tareas
                                WSMO     Tareas
                        SWS y agentes    Acceso


Modelo de tareas OWL-S


  Descompone los procesos compuestos en servicios más simples
  (compuestos o atómicos)
      representan flujos de trabajo
      no es ejecutable (sólo una descripción)
      los procesos simples no son invocables (no son procesos
      atómicos)
      estructura de árbol
           las hojas son los procesos
           los nodos intermedios son construcciones de control



                           M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                      WS semánticos    Perfiles
                              OWL-S    Tareas
                              WSMO     Tareas
                      SWS y agentes    Acceso


Constructores de control

      Sequence: los hijos se ejecutan en orden
      Split: los hijos se ejecutan concurrentemente
      Slipt-Join: concurrencia con sincronización de barrera
      Any-Order: ejecución secuencial "aleatoria"
      Choice: sólo uno de los hijos se ejecuta
      If-Then-Else: ejecución condicional
      Iterate: el hijo se ejecuta repetidamente
      Repeat-While: bucle con guarda al principio
      Repeat-Until: bucle con guarda al final


                         M. Rebollo    Servicios Web Semánticos
Servicios Web   Ontología
                  WS semánticos    Perfiles
                          OWL-S    Tareas
                          WSMO     Tareas
                  SWS y agentes    Acceso


Composición de servicios en OWL-S




                     M. Rebollo    Servicios Web Semánticos
Servicios Web    Ontología
                       WS semánticos     Perfiles
                               OWL-S     Tareas
                               WSMO      Tareas
                       SWS y agentes     Acceso


Realización de servicios en OWL-S

  Especifica cómo acceder al servicio
      mapeo de la descripción abstracta en el perfil yel modelo a
      una especificación concreta
      OWL-S no reemplaza WSDL, sino que lo extiende
      OWL-S se define como un nuevo binding de WSDL
  Mapeo entre OWL-S y WSDL

                  OWL-S                        WSDL
              AtomicProcess                  operation
            Conjunto de In/Out                messages
             In/Out individual          part en un messages


                          M. Rebollo     Servicios Web Semánticos
Servicios Web    Ontología
                                  WS semánticos     Perfiles
                                          OWL-S     Tareas
                                          WSMO      Tareas
                                  SWS y agentes     Acceso


Realización de servicios OWL-S


  Example (Modelo del proceso UploadProcess)
  <process:AtomicProcess rdf:ID="UploadProcess">
    <process:hasInput> <process:Input rdf:ID="FileLocation">
      <process:parameterType rdf:datatype="&xsd;#anyURI">
      &camera;#PhotoLocation </process:parameterType>
    </process:Input> </process:hasInput>
    <process:hasOutput>...</process:hasOutput>
    <process:hasResult> <process:Result rdf:ID="UploadResult">
    ...
      <process:hasEffect>
        <expr:PDDL-Expression>
        (uploaded ?client ?server ?file)
        </expr:PDDL-Expression>
      </process:hasEffect>
    </process:Result> </process:hasResult>
  </process:AtomicProcess>




                                     M. Rebollo     Servicios Web Semánticos
Servicios Web    Ontología
                                  WS semánticos     Perfiles
                                          OWL-S     Tareas
                                          WSMO      Tareas
                                  SWS y agentes     Acceso


Realización de servicios OWL-S


  Example (Modelo del proceso UploadProcess -Grounded-)
  <grounding:WsdlGrounding rdf:ID="FullUploadProcessGrounding">
    <grounding:hasAtomicProcessGrounding
      rdf:resource="#UploadProcessGrounding"/>
  </grounding:WsdlGrounding>
  <grounding:WsdlAtomicProcessGrounding red:ID="UploadProcessGrounding">
    <grounding:owlsProcess rdf:resource="#UploadProcess">
      <grounding:wsdlOperation>
        Definición de la operación UploadAgent
      </grounding:wsdlOperation>
      <grounding:wsdlInputMessage ...>
        Definición del parámetro FileLocation
      </grounding:wsdlInputMessage>
      ...
      <grounding:wsdlOutputMessage> ...</grounding:wsdlOutputMessage>
      </grounding:wsdlOperation>
    </grounding:owlsProcess>
  </grounding:WsdlAtomicProcessGrounding>




                                     M. Rebollo     Servicios Web Semánticos
Elementos
                         Servicios Web
                                         Ontologías
                        WS semánticos
                                         Servicios
                                OWL-S
                                         Objetivos
                                WSMO
                                         Mediadores
                        SWS y agentes
                                         WSML


Contenidos


  1   Servicios Web

  2   Servicios Web para la Web Semántica

  3   OWL-S: OWL orientado a servicios

  4   Web Service Modeling Ontology (WSMO)

  5   Servicios Web Semánticos y Agentes



                           M. Rebollo    Servicios Web Semánticos
Elementos
                         Servicios Web
                                         Ontologías
                        WS semánticos
                                         Servicios
                                OWL-S
                                         Objetivos
                                WSMO
                                         Mediadores
                        SWS y agentes
                                         WSML


Web Service Modeling Ontology (WSMO)

  WSMO proporciona un marco completo para la especificación,
  construcción y ejecución de servicios web semánticos.

      Va más allá de proporcionar una ontología para Servicios Web
      Está basado en F-logic
      No es una capa sobre RDF u OWL

  El proyecto está formado por tres líneas
      WSML: definición del lenguaje con F-logic
      WSMO: ontología compuesta para WSML
      WSMX: entorno de ejecución

                           M. Rebollo    Servicios Web Semánticos
Elementos
                Servicios Web
                                 Ontologías
               WS semánticos
                                 Servicios
                       OWL-S
                                 Objetivos
                       WSMO
                                 Mediadores
               SWS y agentes
                                 WSML


Elementos de WSMO




                    M. Rebollo   Servicios Web Semánticos
Elementos
                Servicios Web
                                 Ontologías
               WS semánticos
                                 Servicios
                       OWL-S
                                 Objetivos
                       WSMO
                                 Mediadores
               SWS y agentes
                                 WSML


Elementos de WSMO



                                 Ontología
                                 Proporcionan la terminología
                                 empleada por el servicio. Permite
                                 la definición de funciones y reglas
                                 sin la necesidad de extender el
                                 lenguaje




                    M. Rebollo   Servicios Web Semánticos
Elementos
                Servicios Web
                                 Ontologías
               WS semánticos
                                 Servicios
                       OWL-S
                                 Objetivos
                       WSMO
                                 Mediadores
               SWS y agentes
                                 WSML


Elementos de WSMO


                                 Servicio web
                                 Especifica los aspectos
                                 funcionales del servicio. La
                                 descripción del servicio está
                                 formada por sus capacidades
                                 (IOPE) y sus interfaces que
                                 especifican su coreografía
                                 (comunicación) y orquestación
                                 (uso de otros servicios)



                    M. Rebollo   Servicios Web Semánticos
Elementos
                Servicios Web
                                 Ontologías
               WS semánticos
                                 Servicios
                       OWL-S
                                 Objetivos
                       WSMO
                                 Mediadores
               SWS y agentes
                                 WSML


Elementos de WSMO



                                 Objetivos
                                 Describen aspectos relacionados
                                 con los deseos de los usuarios
                                 sobre la funcionalidad requerida.
                                 Se expresan en términos de la
                                 ontología.




                    M. Rebollo   Servicios Web Semánticos
Elementos
                Servicios Web
                                 Ontologías
               WS semánticos
                                 Servicios
                       OWL-S
                                 Objetivos
                       WSMO
                                 Mediadores
               SWS y agentes
                                 WSML


Elementos de WSMO



                                 Mediadores
                                 Describen los elementos
                                 encargados de gestionar los
                                 problemas de interoperabilidad
                                 entre los elementos anteriores o
                                 conectarlos para ofrecer servicios
                                 más complejos




                    M. Rebollo   Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Componentes de la ontología. Conceptos

Class ontology
  hasNonFunctionalProperties
  importsOntology                          Son los elementos básicos de la
  usesMediator                            terminología.
  hasConcept                                     construcción de jerarquías de
  hasRelation
                                                 conceptos
  hasFunction
  hasInstance                                    caracterización mediante
  hasAxiom                                       atributos
                                                 expresiones lógicas para
Class concept                                    refinar su semántica (p.ej.
  hasNonFunctionalProperties                     añadir una restricción)
  hasSuperConcept
  hasAttribute
  hasDefinition
                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Componentes de la ontología. Conceptos

Class ontology
  hasNonFunctionalProperties
  importsOntology                          Son los elementos básicos de la
  usesMediator                            terminología.
  hasConcept                                     construcción de jerarquías de
  hasRelation
                                                 conceptos
  hasFunction
  hasInstance                                    caracterización mediante
  hasAxiom                                       atributos
                                                 expresiones lógicas para
Class concept                                    refinar su semántica (p.ej.
  hasNonFunctionalProperties                     añadir una restricción)
  hasSuperConcept
  hasAttribute
  hasDefinition
                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Componentes de la ontología. Relaciones

Class ontology                            Expresan interdependencias entre
  hasNonFunctionalProperties              conceptos
  importsOntology
  usesMediator                                   también permite
  hasConcept                                     refinamiento/reutilización de
  hasRelation                                    relaciones
  hasFunction                                    posibilidad de definir
  hasInstance                                    parámetros
  hasAxiom
                                                 expresiones lógicas definir
Class relation
                                                 instancias válidas
  hasNonFunctionalProperties              Una función es un tipo especial
  hasSuperRelation                        de relación de rango unario y
  hasParameter                            dominio n-ario
  hasDefinition
                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Componentes de la ontología. Instancias

Class ontology
  hasNonFunctionalProperties              Representan a los individuos
  importsOntology                         concretos, asígnando valor a los
  usesMediator                            atributos del objeto
  hasConcept
                                                 pueden ser un enlace a un
  hasRelation
  hasFunction                                    almacén de instancias
  hasInstance                                    externos
  hasAxiom                                       no tienen porqué coincidir
                                                 completamente con la
Class instance                                   definición del conceptos
  hasNonFunctionalProperties                     (datos semiestructurados)
  hasType
  hasAttributeValues
                            M. Rebollo    Servicios Web Semánticos
Elementos
                    Servicios Web
                                    Ontologías
                   WS semánticos
                                    Servicios
                           OWL-S
                                    Objetivos
                           WSMO
                                    Mediadores
                   SWS y agentes
                                    WSML


Descripción general de un servicio web




                      M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Descripción de los servicios. Capacidades
                                           Funcionalidad del servicio.
Class service
  hasNonFunctionalProperties                     Precond. Estado interno
  importsOntology                                requerido antes de
  usesMediator                                   proporcionar el servicio
  hasCapacity
                                                 Assump. Estado del mundo
  hasInterface
                                                 que se asume antes de la
                                                 ejecución
Class capability
  hasNonFunctionalProperties                     Postcond. Estado interno al
  importsOntology                                que se llega después de la
  usesMediator                                   ejecución del servicio.
  hasPrecondition
                                                 Effects Estado del mundo
  hasAssumption
  hasPostcondition                               que se alcanza al completar
  hasAssumption                                  la ejecución
                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Descripción de los servicios. Capacidades
                                           Funcionalidad del servicio.
Class service
  hasNonFunctionalProperties                     Precond. Estado interno
  importsOntology                                requerido antes de
  usesMediator                                   proporcionar el servicio
  hasCapacity
                                                 Assump. Estado del mundo
  hasInterface
                                                 que se asume antes de la
                                                 ejecución
Class capability
  hasNonFunctionalProperties                     Postcond. Estado interno al
  importsOntology                                que se llega después de la
  usesMediator                                   ejecución del servicio.
  hasPrecondition
                                                 Effects Estado del mundo
  hasAssumption
  hasPostcondition                               que se alcanza al completar
  hasAssumption                                  la ejecución
                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Descripción de los servicios. Capacidades

Class service
  hasNonFunctionalProperties              Describe cómo se realiza la
  importsOntology                         funcionalidad del servicio.
  usesMediator
  hasCapacity
                                                 la coreografía describe la
  hasInterface                                   capacidad en términos de la
                                                 interacción con el servicio.
Class interface                                  la orquestación descompone
  hasNonFunctionalProperties                     un servicio en términos de la
  importsOntology                                funcionalidad requerida de
  usesMediator                                   terceros.
  hasChoreography
  hasOrchestation

                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Descripción de los servicios. Coreografía


Class choreography                        Determina las interacciones del
  hasNonFunctionalProperties              servicio web con sus usuarios a
  hasStateSignature                       través de una máquina de estados
  HasTransitionRules                      abstracta (ASM)
                                             1   basada en estados
Ventajas
                                             2   los estados se representan
    permite gestionar
                                                 por su signatura
    interacciones complejas
                                             3   reglas de transición para
    incluye cierto estado interno
                                                 cambios de estado
    del servicio


                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Descripción de los servicios. Coreografía


Class choreography                        Determina las interacciones del
  hasNonFunctionalProperties              servicio web con sus usuarios a
  hasStateSignature                       través de una máquina de estados
  HasTransitionRules                      abstracta (ASM)
                                             1   basada en estados
Ventajas
                                             2   los estados se representan
    permite gestionar
                                                 por su signatura
    interacciones complejas
                                             3   reglas de transición para
    incluye cierto estado interno
                                                 cambios de estado
    del servicio


                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Descripción de los servicios. Estados

Class choreography
                                          El estado se define por un
  hasNonFunctionalProperties
  hasStateSignature                       conjunto identificadores,
  HasTransitionRules                      conceptos, relaciones y axiomas.
                                                 static internos
Class stateSignature                             in lectura
  hasNonFunctionalProperties
  importsOntology                                out escritura
  usesMediator                                   controlled sólo el interfaz
  hasStatic                                      lee y escribe
  hasIn
                                                 shared el entorno también
  hasOut
  hasShared                                      lee y escribe
  hasControlled
                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Descripción de los servicios. Transiciones


                                           Operaciones básicas
  Class choreography                       add(fact)
    hasNonFunctionalProperties
                                           delete(fact)
    hasStateSignature
    HasTransitionRules
                                           update(fact new )
                                           update(fact old → fact new )

  Transiciones complejas
  if Condthen Rules endif
  forall Var with Cond do Rules endforall
  choose Var with Cond do Rules endchoose



                            M. Rebollo    Servicios Web Semánticos
Elementos
                             Servicios Web
                                             Ontologías
                            WS semánticos
                                             Servicios
                                    OWL-S
                                             Objetivos
                                    WSMO
                                             Mediadores
                            SWS y agentes
                                             WSML


Descripción de los servicios. Orquestación

  Describe cómo usar otros servicios
      basado en las ASM multiagente
      usa el mismo lenguaje que las coreografías
  Diferencias principales
      en lugar de reglas pueden emplearse objetivos y servicios
      puede reutilizarse o extenderse las interfaces definidas en las
      coreografías
      uso de mediadores WW y WG para enlazar con los servicios

            Esta parte de WSMO todavía no está definida


                               M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Objetivos WSMO

                                          Descripción de alto nivel del
                                          servicio en términos de
                                                 las capacidades que
Class goal                                       proporciona
  hasNonFunctionalProperties
  importsOntology                                mediante qué interfaces
  usesMediator                                   acceder a ellas
  requestsCapability                      El uso de mediadores GG permite
  requestsInterface                       descomponer un objetivo
                                          complejo en otros objetivos más
                                          simples


                            M. Rebollo    Servicios Web Semánticos
Elementos
                          Servicios Web
                                          Ontologías
                         WS semánticos
                                          Servicios
                                 OWL-S
                                          Objetivos
                                 WSMO
                                          Mediadores
                         SWS y agentes
                                          WSML


Mediadores WSMO

                                          Gestión de heterogeneidad en
                                          tiempo de ejecución en tres
                                          niveles:
Class mediator
                                             1   datos: fuentes de datos y
  hasNonFunctionalProperties                     protocolos de transferencia
  importsOntology                                (ontologías)
  hasSource                                  2   funciones: ajuste de
  hasTarget
                                                 objetivos
  hasMediationService
                                             3   procesos: interacciones,
                                                 protocolos de comunicación
                                                 (orquestación)


                            M. Rebollo    Servicios Web Semánticos
Elementos
                            Servicios Web
                                            Ontologías
                           WS semánticos
                                            Servicios
                                   OWL-S
                                            Objetivos
                                   WSMO
                                            Mediadores
                           SWS y agentes
                                            WSML


Mediadores entre ontologías (OO)


Class mediator
  hasNonFunctionalProperties
  importsOntology                            Traducción entre ontologías
  hasSource
  hasTarget                                         mezcla
  hasMediationService                               alineación
                                                    mapeo
Class ooMediator sub-Class mediator
  hasSource type
{ontology,ooMediator}



                               M. Rebollo   Servicios Web Semánticos
Elementos
                            Servicios Web
                                            Ontologías
                           WS semánticos
                                            Servicios
                                   OWL-S
                                            Objetivos
                                   WSMO
                                            Mediadores
                           SWS y agentes
                                            WSML


Mediadores entre objetivos (GG)


Class mediator
  hasNonFunctionalProperties
  importsOntology                                   Refinamiento/composición
  hasSource                                         de objetivos
  hasTarget
  hasMediationService                               Puede emplear un
                                                    ooMediator para resolver
Class ggMediator sub-Class mediator                 conflictos terminológicos
  usesMediator type ooMediator                      entre los objetivos.
  hasSource type {goal,ggMediator}
  hasTarget type {goal,ggMediator}



                               M. Rebollo   Servicios Web Semánticos
Elementos
                           Servicios Web
                                            Ontologías
                          WS semánticos
                                            Servicios
                                  OWL-S
                                            Objetivos
                                  WSMO
                                            Mediadores
                          SWS y agentes
                                            WSML


Mediadores entre servicios (WW)


Class mediator
                                                    Define la interoperatividad
  hasNonFunctionalProperties
  importsOntology
                                                    entre servicios web
  hasSource                                         (orquestación)
  hasTarget                                         La intermediación puede ser
  hasMediationService                               necesaria en los tres niveles:
                                                    datos, funciones y procesos.
Class wwMediator sub-Class mediator                 Puede emplear un
  usesMediator type ooMediator
                                                    ooMediator para resolver
  hasSource type {service,wwMediator}
  hasTarget type {service,wwMediator}               conflictos terminológicos.



                               M. Rebollo   Servicios Web Semánticos
Elementos
                           Servicios Web
                                            Ontologías
                          WS semánticos
                                            Servicios
                                  OWL-S
                                            Objetivos
                                  WSMO
                                            Mediadores
                          SWS y agentes
                                            WSML


Mediadores servicio–objetivo (WG)


Class mediator
                                                    Define la interoperatividad
  hasNonFunctionalProperties
  importsOntology
                                                    entre servicios web
  hasSource                                         (orquestación)
  hasTarget                                         La intermediación puede ser
  hasMediationService                               necesaria en los tres niveles:
                                                    datos, funciones y procesos.
Class wgMediator sub-Class mediator                 Puede emplear un
  usesMediator type ooMediator
                                                    ooMediator para resolver
  hasSource type {service,wgMediator}
  hasTarget type {goal,ggMediator}                  conflictos terminológicos.



                               M. Rebollo   Servicios Web Semánticos
Elementos
                  Servicios Web
                                  Ontologías
                 WS semánticos
                                  Servicios
                         OWL-S
                                  Objetivos
                         WSMO
                                  Mediadores
                 SWS y agentes
                                  WSML


Composición de servicios WSMO




                    M. Rebollo    Servicios Web Semánticos
Elementos
                    Servicios Web
                                    Ontologías
                   WS semánticos
                                    Servicios
                           OWL-S
                                    Objetivos
                           WSMO
                                    Mediadores
                   SWS y agentes
                                    WSML


WSML. Descripción de servicios y ontologías




                      M. Rebollo    Servicios Web Semánticos
Elementos
                    Servicios Web
                                    Ontologías
                   WS semánticos
                                    Servicios
                           OWL-S
                                    Objetivos
                           WSMO
                                    Mediadores
                   SWS y agentes
                                    WSML


WSML. Descripción de servicios y ontologías




                      M. Rebollo    Servicios Web Semánticos
Servicios Web
                        WS semánticos
                                OWL-S
                                WSMO
                        SWS y agentes


Contenidos


  1   Servicios Web

  2   Servicios Web para la Web Semántica

  3   OWL-S: OWL orientado a servicios

  4   Web Service Modeling Ontology (WSMO)

  5   Servicios Web Semánticos y Agentes



                           M. Rebollo    Servicios Web Semánticos
Servicios Web
                   WS semánticos
                           OWL-S
                           WSMO
                   SWS y agentes


Servicios Web y agentes




                      M. Rebollo    Servicios Web Semánticos
Servicios Web
                  WS semánticos
                          OWL-S
                          WSMO
                  SWS y agentes


Uso de agentes de unión


                                   Trata de resolver las carencias en
                                   comunicación de los WS
                                          los agentes requieren la
                                          modificación de los WS
                                          (pierden compatibilidad con
                                          otros WS directamente)
                                          el agente debe adaptarse a
                                          los lenguajes y posibles
                                          cambios en el WS



                     M. Rebollo    Servicios Web Semánticos
Servicios Web
                      WS semánticos
                              OWL-S
                              WSMO
                      SWS y agentes


Uso de una pasarela

                                       Una pasarela entre los agentes y
                                       los servicios hace de traductor
                                              cada uno usa sus propias
                                              arquitecturas sin modificar
                                              centralización de las
                                              comunicaciones: contraria a
                                              los principios de distribución
                                              de SMA y WS
                                              la pasarela es un cuello de
                                              botella


                         M. Rebollo    Servicios Web Semánticos
Servicios Web
                      WS semánticos
                              OWL-S
                              WSMO
                      SWS y agentes


Integración real de WS y agentes




  ¿Qué componente está relacionado con las ontologías?
  ¿Y con los servicios web?
  ¿Cómo se integrarían SW y WS en un agente de información
  inteligente?
                         M. Rebollo    Servicios Web Semánticos

More Related Content

Similar to Servicios web semánticos

Similar to Servicios web semánticos (20)

Servicios web xml
Servicios web xmlServicios web xml
Servicios web xml
 
Servicios SOA
Servicios SOAServicios SOA
Servicios SOA
 
Arquitectura Orientada a Servicios (SOA)
Arquitectura Orientada  a Servicios (SOA)Arquitectura Orientada  a Servicios (SOA)
Arquitectura Orientada a Servicios (SOA)
 
Web services SOAP con JAX-WS
Web services SOAP con JAX-WSWeb services SOAP con JAX-WS
Web services SOAP con JAX-WS
 
Servicios web
Servicios webServicios web
Servicios web
 
3/9 soa y web services
3/9 soa y web services3/9 soa y web services
3/9 soa y web services
 
Web services en sistemas distribuidos
Web services en sistemas distribuidosWeb services en sistemas distribuidos
Web services en sistemas distribuidos
 
Servicios Web
Servicios WebServicios Web
Servicios Web
 
Introduccion Servicios Web
Introduccion Servicios WebIntroduccion Servicios Web
Introduccion Servicios Web
 
Pruebas de Servicios Web, ¿Codificar o No Codificar?
Pruebas de Servicios Web, ¿Codificar o No Codificar?Pruebas de Servicios Web, ¿Codificar o No Codificar?
Pruebas de Servicios Web, ¿Codificar o No Codificar?
 
JavaWebServices: Arquitectura
JavaWebServices: ArquitecturaJavaWebServices: Arquitectura
JavaWebServices: Arquitectura
 
Web Services en .NET Compact Framework
Web Services en .NET Compact FrameworkWeb Services en .NET Compact Framework
Web Services en .NET Compact Framework
 
Presentacion ws
Presentacion wsPresentacion ws
Presentacion ws
 
Web services
Web servicesWeb services
Web services
 
Web services1
Web services1Web services1
Web services1
 
Servicios Web II.ppt
Servicios Web II.pptServicios Web II.ppt
Servicios Web II.ppt
 
Java2 servicios web
Java2 servicios webJava2 servicios web
Java2 servicios web
 
SOA y Web Services
SOA y Web ServicesSOA y Web Services
SOA y Web Services
 
SOA
SOASOA
SOA
 
Soa
SoaSoa
Soa
 

More from Miguel Rebollo

GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N...
 GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N... GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N...
GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N...Miguel Rebollo
 
Co-Learning: Consensus-based Learning for Multi-Agent Systems
 Co-Learning: Consensus-based Learning for Multi-Agent Systems Co-Learning: Consensus-based Learning for Multi-Agent Systems
Co-Learning: Consensus-based Learning for Multi-Agent SystemsMiguel Rebollo
 
Análisis de la red de autores de ciencia ficción de Clarkesworld
Análisis de la red de autores de ciencia ficción de ClarkesworldAnálisis de la red de autores de ciencia ficción de Clarkesworld
Análisis de la red de autores de ciencia ficción de ClarkesworldMiguel Rebollo
 
Y sin embargo... se mueve. Dinámica de las redes complejas
Y sin embargo... se mueve. Dinámica de las redes complejasY sin embargo... se mueve. Dinámica de las redes complejas
Y sin embargo... se mueve. Dinámica de las redes complejasMiguel Rebollo
 
Exámenes en grupo y pruebas de corrección como alternativas a la evaluación
Exámenes en grupo y pruebas de corrección como alternativas a la evaluaciónExámenes en grupo y pruebas de corrección como alternativas a la evaluación
Exámenes en grupo y pruebas de corrección como alternativas a la evaluaciónMiguel Rebollo
 
Gamification. Key Concepts
Gamification. Key ConceptsGamification. Key Concepts
Gamification. Key ConceptsMiguel Rebollo
 
Using Distributed Risk Maps by Consensus as a Complement to Contact Tracing Apps
Using Distributed Risk Maps by Consensus as a Complement to Contact Tracing AppsUsing Distributed Risk Maps by Consensus as a Complement to Contact Tracing Apps
Using Distributed Risk Maps by Consensus as a Complement to Contact Tracing AppsMiguel Rebollo
 
Distributed Ledger and Robust Consensus for Agreements
Distributed Ledger and Robust Consensus for AgreementsDistributed Ledger and Robust Consensus for Agreements
Distributed Ledger and Robust Consensus for AgreementsMiguel Rebollo
 
Detección de nodos tramposos en procesos de consenso en redes
Detección de nodos tramposos en procesos de consenso en redesDetección de nodos tramposos en procesos de consenso en redes
Detección de nodos tramposos en procesos de consenso en redesMiguel Rebollo
 
La hora del código: ApS para fomentar el pensamiento computacional
La hora del código: ApS para fomentar el pensamiento computacionalLa hora del código: ApS para fomentar el pensamiento computacional
La hora del código: ApS para fomentar el pensamiento computacionalMiguel Rebollo
 
Procesos de enseñanza-aprendizaje en red
Procesos de enseñanza-aprendizaje en redProcesos de enseñanza-aprendizaje en red
Procesos de enseñanza-aprendizaje en redMiguel Rebollo
 
desarrollo de competencias a través de narrativas transmedia
desarrollo de competencias a través de narrativas transmediadesarrollo de competencias a través de narrativas transmedia
desarrollo de competencias a través de narrativas transmediaMiguel Rebollo
 
Distributed Group Analytical Hierarchical Process by Consensus
 Distributed Group Analytical Hierarchical Process by Consensus Distributed Group Analytical Hierarchical Process by Consensus
Distributed Group Analytical Hierarchical Process by ConsensusMiguel Rebollo
 
Análisis de ciudades a través de su actividad en redes sociales
Análisis de ciudades a través de su actividad en redes socialesAnálisis de ciudades a través de su actividad en redes sociales
Análisis de ciudades a través de su actividad en redes socialesMiguel Rebollo
 
Análisis de datos en redes sociales
Análisis de datos en redes socialesAnálisis de datos en redes sociales
Análisis de datos en redes socialesMiguel Rebollo
 
The multigent Layer for CALMeD SURF
The multigent Layer for CALMeD SURFThe multigent Layer for CALMeD SURF
The multigent Layer for CALMeD SURFMiguel Rebollo
 
Narrativa transmedia en el aula
Narrativa transmedia en el aulaNarrativa transmedia en el aula
Narrativa transmedia en el aulaMiguel Rebollo
 
Using geo-tagged sentiment to better understand social interactions
 Using geo-tagged sentiment to better understand social interactions Using geo-tagged sentiment to better understand social interactions
Using geo-tagged sentiment to better understand social interactionsMiguel Rebollo
 
Transport Network Analysis for Smart Open Fleets
Transport Network Analysis for Smart Open FleetsTransport Network Analysis for Smart Open Fleets
Transport Network Analysis for Smart Open FleetsMiguel Rebollo
 
Análisis de sentimientos en Twitter mediante HMM
Análisis de sentimientos en Twitter mediante HMMAnálisis de sentimientos en Twitter mediante HMM
Análisis de sentimientos en Twitter mediante HMMMiguel Rebollo
 

More from Miguel Rebollo (20)

GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N...
 GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N... GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N...
GTG-CoL: A Decentralized Federated Learning Based on Consensus for Dynamic N...
 
Co-Learning: Consensus-based Learning for Multi-Agent Systems
 Co-Learning: Consensus-based Learning for Multi-Agent Systems Co-Learning: Consensus-based Learning for Multi-Agent Systems
Co-Learning: Consensus-based Learning for Multi-Agent Systems
 
Análisis de la red de autores de ciencia ficción de Clarkesworld
Análisis de la red de autores de ciencia ficción de ClarkesworldAnálisis de la red de autores de ciencia ficción de Clarkesworld
Análisis de la red de autores de ciencia ficción de Clarkesworld
 
Y sin embargo... se mueve. Dinámica de las redes complejas
Y sin embargo... se mueve. Dinámica de las redes complejasY sin embargo... se mueve. Dinámica de las redes complejas
Y sin embargo... se mueve. Dinámica de las redes complejas
 
Exámenes en grupo y pruebas de corrección como alternativas a la evaluación
Exámenes en grupo y pruebas de corrección como alternativas a la evaluaciónExámenes en grupo y pruebas de corrección como alternativas a la evaluación
Exámenes en grupo y pruebas de corrección como alternativas a la evaluación
 
Gamification. Key Concepts
Gamification. Key ConceptsGamification. Key Concepts
Gamification. Key Concepts
 
Using Distributed Risk Maps by Consensus as a Complement to Contact Tracing Apps
Using Distributed Risk Maps by Consensus as a Complement to Contact Tracing AppsUsing Distributed Risk Maps by Consensus as a Complement to Contact Tracing Apps
Using Distributed Risk Maps by Consensus as a Complement to Contact Tracing Apps
 
Distributed Ledger and Robust Consensus for Agreements
Distributed Ledger and Robust Consensus for AgreementsDistributed Ledger and Robust Consensus for Agreements
Distributed Ledger and Robust Consensus for Agreements
 
Detección de nodos tramposos en procesos de consenso en redes
Detección de nodos tramposos en procesos de consenso en redesDetección de nodos tramposos en procesos de consenso en redes
Detección de nodos tramposos en procesos de consenso en redes
 
La hora del código: ApS para fomentar el pensamiento computacional
La hora del código: ApS para fomentar el pensamiento computacionalLa hora del código: ApS para fomentar el pensamiento computacional
La hora del código: ApS para fomentar el pensamiento computacional
 
Procesos de enseñanza-aprendizaje en red
Procesos de enseñanza-aprendizaje en redProcesos de enseñanza-aprendizaje en red
Procesos de enseñanza-aprendizaje en red
 
desarrollo de competencias a través de narrativas transmedia
desarrollo de competencias a través de narrativas transmediadesarrollo de competencias a través de narrativas transmedia
desarrollo de competencias a través de narrativas transmedia
 
Distributed Group Analytical Hierarchical Process by Consensus
 Distributed Group Analytical Hierarchical Process by Consensus Distributed Group Analytical Hierarchical Process by Consensus
Distributed Group Analytical Hierarchical Process by Consensus
 
Análisis de ciudades a través de su actividad en redes sociales
Análisis de ciudades a través de su actividad en redes socialesAnálisis de ciudades a través de su actividad en redes sociales
Análisis de ciudades a través de su actividad en redes sociales
 
Análisis de datos en redes sociales
Análisis de datos en redes socialesAnálisis de datos en redes sociales
Análisis de datos en redes sociales
 
The multigent Layer for CALMeD SURF
The multigent Layer for CALMeD SURFThe multigent Layer for CALMeD SURF
The multigent Layer for CALMeD SURF
 
Narrativa transmedia en el aula
Narrativa transmedia en el aulaNarrativa transmedia en el aula
Narrativa transmedia en el aula
 
Using geo-tagged sentiment to better understand social interactions
 Using geo-tagged sentiment to better understand social interactions Using geo-tagged sentiment to better understand social interactions
Using geo-tagged sentiment to better understand social interactions
 
Transport Network Analysis for Smart Open Fleets
Transport Network Analysis for Smart Open FleetsTransport Network Analysis for Smart Open Fleets
Transport Network Analysis for Smart Open Fleets
 
Análisis de sentimientos en Twitter mediante HMM
Análisis de sentimientos en Twitter mediante HMMAnálisis de sentimientos en Twitter mediante HMM
Análisis de sentimientos en Twitter mediante HMM
 

Recently uploaded

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptJavierHerrera662252
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxAlexander López
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxAlexander López
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxaylincamaho
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMidwarHenryLOZAFLORE
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxJOSEMANUELHERNANDEZH11
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..RobertoGumucio2
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxNombre Apellidos
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxMariaBurgos55
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxAlexander López
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx241522327
 

Recently uploaded (20)

Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.pptTEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
TEMA 2 PROTOCOLO DE EXTRACCION VEHICULAR.ppt
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptxLAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
LAS_TIC_COMO_HERRAMIENTAS_EN_LA_INVESTIGACIÓN.pptx
 
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptxEl_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
El_Blog_como_herramienta_de_publicacion_y_consulta_de_investigacion.pptx
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptxMedidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
Medidas de formas, coeficiente de asimetría y coeficiente de curtosis.pptx
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Mapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptxMapa-conceptual-del-Origen-del-Universo-3.pptx
Mapa-conceptual-del-Origen-del-Universo-3.pptx
 
Hernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptxHernandez_Hernandez_Practica web de la sesion 11.pptx
Hernandez_Hernandez_Practica web de la sesion 11.pptx
 
Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..Plan Sarmiento - Netbook del GCBA 2019..
Plan Sarmiento - Netbook del GCBA 2019..
 
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptxCrear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
Crear un recurso multimedia. Maricela_Ponce_DomingoM1S3AI6-1.pptx
 
Segunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptxSegunda ley de la termodinámica TERMODINAMICA.pptx
Segunda ley de la termodinámica TERMODINAMICA.pptx
 
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptxGoogle-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
Google-Meet-como-herramienta-para-realizar-reuniones-virtuales.pptx
 
FloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptxFloresMorales_Montserrath_M1S3AI6 (1).pptx
FloresMorales_Montserrath_M1S3AI6 (1).pptx
 

Servicios web semánticos

  • 1. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Servicios Web Semánticos Miguel Rebollo Pedruelo Dept. Sistemas Informáticos y Computación Univ. Politécnica de Valencia Agentes de Información y Web Semántica Master IARFID 2008-2009 M. Rebollo Servicios Web Semánticos
  • 2. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Contenidos 1 Servicios Web 2 Servicios Web para la Web Semántica 3 OWL-S: OWL orientado a servicios 4 Web Service Modeling Ontology (WSMO) 5 Servicios Web Semánticos y Agentes M. Rebollo Servicios Web Semánticos
  • 3. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Contenidos 1 Servicios Web 2 Servicios Web para la Web Semántica 3 OWL-S: OWL orientado a servicios 4 Web Service Modeling Ontology (WSMO) 5 Servicios Web Semánticos y Agentes M. Rebollo Servicios Web Semánticos
  • 4. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes ¿Qué es un Servicio Web? Definición Aplicaciones autocontenidas, auto-descriptivas y modulares. . . basadas en contenidos XML. . . que pueden publicarse, localizarse e invocarse en la Web Se localizan mediante registros de servicios web Pueden ampliarse con metadatos descriptivos para los consumidores del servicio M. Rebollo Servicios Web Semánticos
  • 5. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Novedades que aportan Modelos basados en compo- Modelos de Servicios Web nentes Aplicaciones fuertemente Aplicaciones débilmente acopladas (alta dependencia acopladas (baja dependencia entre sistemas) entre sistemas) Diseñado para procesos inter- Diseñado para procesos exter- nos de las empresas nos de las empresas Protocolos y tecnologías Diferentes protocolos y tec- comunes (XML, SOAP, nologías (DCOM, CORBA. . . ) WSDL. . . ) M. Rebollo Servicios Web Semánticos
  • 6. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Estructura de un Servicio Web Descripción ¿qué hacen? WSDL/WSFL, OWL-S, RDF, ebXML Descubrimiento ¿cómo encontrarlos? UDDI, ebXML, WS Inspection Language Comunicación ¿cómo usarlos? SOAP, JAXM/RPC M. Rebollo Servicios Web Semánticos
  • 7. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes En pocas palabras. . . Para disponer de una plataforma completa que proporcione servicios web son necesarias capas para. . . descripción de la naturaleza de los servicios localización de servicios invocación remota de los servicios Las tecnologías que se emplean habitualmente son: WSDL para la descripción de los servicios UDDI para la localización de servicios web XML-RPC o SOAP para invocación remota M. Rebollo Servicios Web Semánticos
  • 8. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Estructura y estándares SOAP: Simple Object Access Protocol WSDL: Web Services Description Lang. UDDI: Universal Description, Discovery and Integration BPEL: Business Process Execution Lang. XAML: eXtensible Application Markup Lang. WSCL: Web Services Conversation Lang. M. Rebollo Servicios Web Semánticos
  • 9. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes XML-RPC permite llamadas a procedimiento remoto sobre HTTP y con XML para la codificación diseñado para ser simple: facilidad de uso Example <methodCall> <methodName>sample.sumAndDifference</methodName> <params> <param><value><int>5</int></value></param> <param><value><int>3</int></value></param> </params> </methodCall> M. Rebollo Servicios Web Semánticos
  • 10. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes SOAP Intercambio de datos y RPC sobre HTTP Diferencias con XML-RDF es algo más complejo, pero también más potente arropado mejor WSDL y UDDI (para servicios web) Cuestión ¿Tendría sentido usar otros protocolos? Por ejemplo, SMTP o XMPP, que están orientado a la comunicación (existen versiones de SOAP sobre ambos) M. Rebollo Servicios Web Semánticos
  • 11. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes SOAP Intercambio de datos y RPC sobre HTTP Diferencias con XML-RDF es algo más complejo, pero también más potente arropado mejor WSDL y UDDI (para servicios web) Cuestión ¿Tendría sentido usar otros protocolos? Por ejemplo, SMTP o XMPP, que están orientado a la comunicación (existen versiones de SOAP sobre ambos) M. Rebollo Servicios Web Semánticos
  • 12. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Estructura de un mensaje SOAP Mensaje encerrado en un elemento Envelope, con dos partes Header(opcional) información de contexto Body(obligatorio) que contiene el mensaje Example (Servicio GetWeather –ver web–) <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> <soap:Body> <GetWeather xmlns="http://www.webserviceX.NET"> <CityName>Valencia</CityName> <CountryName>Spain</CountryName> </GetWeather> </soap:Body> </soap:Envelope> M. Rebollo Servicios Web Semánticos
  • 13. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Estructura de un mensaje SOAP Mensaje encerrado en un elemento Envelope, con dos partes Header(opcional) información de contexto Body(obligatorio) que contiene el mensaje Example (Servicio GetWeather –ver web–) <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> <soap:Body> <GetWeather xmlns="http://www.webserviceX.NET"> <CityName>Valencia</CityName> <CountryName>Spain</CountryName> </GetWeather> </soap:Body> </soap:Envelope> M. Rebollo Servicios Web Semánticos
  • 14. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Respuesta del Servicio Web en SOAP Example (Estructura de la respuesta) <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetWeatherResponse xmlns="http://www.webserviceX.NET"> <GetWeatherResult> string </GetWeatherResult> </GetWeatherResponse> </soap:Body> </soap:Envelope> Example (Contenido de la respuesta) <string> <CurrentWeather> <Location>Valencia / Aeropuerto, Spain (LEVC) 39-30N 000-28W 62M</Location> <Time>Jun 14, 2007 - 10:00 AM EDT / 2007.06.14 1400 UTC</Time> <Wind> from the SW (230 degrees) at 21 MPH (18 KT):0</Wind> <Visibility> greater than 7 mile(s):0</Visibility> <SkyConditions> mostly clear</SkyConditions> <Temperature> 91 F (33 C)</Temperature> ... </CurrentWeather> </string> M. Rebollo Servicios Web Semánticos
  • 15. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Respuesta del Servicio Web en SOAP Example (Estructura de la respuesta) <?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetWeatherResponse xmlns="http://www.webserviceX.NET"> <GetWeatherResult> string </GetWeatherResult> </GetWeatherResponse> </soap:Body> </soap:Envelope> Example (Contenido de la respuesta) <string> <CurrentWeather> <Location>Valencia / Aeropuerto, Spain (LEVC) 39-30N 000-28W 62M</Location> <Time>Jun 14, 2007 - 10:00 AM EDT / 2007.06.14 1400 UTC</Time> <Wind> from the SW (230 degrees) at 21 MPH (18 KT):0</Wind> <Visibility> greater than 7 mile(s):0</Visibility> <SkyConditions> mostly clear</SkyConditions> <Temperature> 91 F (33 C)</Temperature> ... </CurrentWeather> </string> M. Rebollo Servicios Web Semánticos
  • 16. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes SOAP El emisor y el receptor deben compartir la misma ontología para comprender el mensaje. M. Rebollo Servicios Web Semánticos
  • 17. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes WSDL Definition (WSDL) Es un formato XML para describir de forma abstracta servicios web como una serie de puertos a los que llegan los mensajes. Permite a los proveedores describir el formato de las peticiones bajo distintos protocolos y codificaciones Indica 1 qué hace el servicio 2 dónde se accede a él 3 cómo se invoca M. Rebollo Servicios Web Semánticos
  • 18. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL types: tipos de datos empleados message: definición de los métodos de acceso abstractos operation: acciones abstractas que el servicio puede realizar portType: conjunto de operaciones abstractas que ofrece un puerto binding: protocolo y formato particulares de un portType → reutilización port: colección de puertos-tipo service colección de puertos que definen el servicio M. Rebollo Servicios Web Semánticos
  • 19. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL define un grupo de puertos su nombre es único los puertos no se comunican entre ellos puede reutilizarse un puerto con diferentes vínculos (bindings) M. Rebollo Servicios Web Semánticos
  • 20. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (Servicio) <wsdl:service name="GlobalWeather"> <wsdl:port name="GlobalWeatherSoap" binding="tns:GlobalWeatherSoap"> <soap:address location="http://www.webservicex.net/globalweather.asmx"/> </wsdl:port> ... </wsdl:service> (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 21. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Definen el formato y el protocolo de los mensajes para un portType particular. su nombre debe ser único en el documento la referencia al portType se hace por el atributo type debe especificar exactamente un protocolo no debe indicar la dirección M. Rebollo Servicios Web Semánticos
  • 22. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (Vínculo SOAP) <wsdl:binding name="GlobalWeatherSoap" type="tns:GlobalWeatherSoap"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/> <wsdl:operation name="GetWeather"> <soap:operation soapAction="http://www.webserviceX.NET/GetWeather" style="document"/> <wsdl:input> <soap:body use="literal"/> </wsdl:input> <wsdl:output> <soap:body use="literal"/> </wsdl:output> </wsdl:operation> ... </wsdl:binding> (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 23. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (Vínculo HTTP) <wsdl:binding name="GlobalWeatherHttpGet" type="tns:GlobalWeatherHttpGet"> <http:binding verb="GET"/> <wsdl:operation name="GetWeather"> <http:operation location="/GetWeather"/> <wsdl:input> <http:urlEncoded/> </wsdl:input> <wsdl:output> <mime:mimeXml part="Body"/> </wsdl:output> </wsdl:operation> ... </wsdl:binding> (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 24. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (Vínculo HTTP) <wsdl:binding name="GlobalWeatherHttpGet" type="tns:GlobalWeatherHttpGet"> <http:binding verb="GET"/> <wsdl:operation name="GetWeather"> <http:operation location="/GetWeather"/> <wsdl:input> <http:urlEncoded/> </wsdl:input> <wsdl:output> <mime:mimeXml part="Body"/> </wsdl:output> </wsdl:operation> ... </wsdl:binding> (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 25. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (Vínculo HTTP) <wsdl:binding name="GlobalWeatherHttpGet" type="tns:GlobalWeatherHttpGet"> <http:binding verb="GET"/> <wsdl:operation name="GetWeather"> <http:operation location="/GetWeather"/> <wsdl:input> <http:urlEncoded/> </wsdl:input> <wsdl:output> <mime:mimeXml part="Body"/> </wsdl:output> </wsdl:operation> ... </wsdl:binding> (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 26. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL representa un conjunto de operaciones abstractas primitivas de transmisión one-way: input request-response: input – output solicit-response: output – input notification: output elemento fault para manejar errores parámetros one-way: input request-response: input – output solicit-response: output – input notification: output M. Rebollo Servicios Web Semánticos
  • 27. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (portType) <wsdl:portType name="GlobalWeatherSoap"> <wsdl:operation name="GetWeather"> <documentation> Get weather report for all major cities around the world. </documentation> <wsdl:input message="tns:GetWeatherSoapIn"/> <wsdl:output message="tns:GetWeatherSoapOut"/> </wsdl:operation> ... </wsdl:portType> (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 28. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL formado por una o más partes lógicas el nombre debe ser único para todos los mensajes del documento WSDL actual las partes definen los parámetros de entrada o salida de los mensajes name define el nombre del parámetro type hace referencia a un tipo de datos definido en la sección wsdl:types M. Rebollo Servicios Web Semánticos
  • 29. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (Mensaje) <wsdl:message name="GetWeatherSoapIn"> <wsdl:part name="parameters" element="tns:GetWeather"/> </wsdl:message> <wsdl:message name="GetWeatherSoapOut"> <wsdl:part name="parameters" element="tns:GetWeatherResponse"/> </wsdl:message> ... (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 30. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL incluye definiciones de tipos de datos relevantes para el intercambio de mensajes se prefieren tipos de XML-Schema (XSD) independiente de si la respuesta de un mensaje es XML o no M. Rebollo Servicios Web Semánticos
  • 31. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Esquema de un mensaje WSDL Example (Tipos) <wsdl:types> <s:schema elementFormDefault="qualified" targetNamespace="http://www.webserviceX.NET"> <s:element name="GetWeather"> <s:complexType> <s:sequence> <s:element minOccurs="0" maxOccurs="1" name="CityName" type="s:string"/> <s:element minOccurs="0" maxOccurs="1" name="CountryName" type="s:string"/> </s:sequence> </s:complexType> </s:element> </s:schema> </wsdl:types> (acceso al documento completo) M. Rebollo Servicios Web Semánticos
  • 32. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes UDDI Registro de servicios web Servicio web que gestiona información sobre proveedores, implementación y metadatos de servicios web. proveedores: anunciar servicios. clientes: descubrir servicios de interés y obtener metadatos necesarios para saber utilizarlos. permite descubrir servicios en la web de forma dinámica (con SOAP) tModels: describen conceptos y categor?as (reutilización) M. Rebollo Servicios Web Semánticos
  • 33. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Especificación UDDI Las especificaciones UDDI definen 1 API en SOAP que usan las aplicaciones para solicitar y publicar información de/en un registro UDDI 2 XML Schema del modelo de datos del registro y del formato de los mensajes SOAP 3 definiciones WSDL de la API en SOAP 4 definiciones de registros UDDI (technical models - tModels) que identifican y categorizan los registros UDDI. M. Rebollo Servicios Web Semánticos
  • 34. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Datos del registro UDDI Descripción de la entidad (páginas blancas) businessEntity: información general de la empresa Descripción del servicio (páginas amarillas) businessServices: información sobre los servicios que proporciona Datos técnicos (páginas verdes) descripción sobre el punto de acceso al servicio especificaciones técnicas (tModel) bindingTemplate: protocolos, acceso, ubicación... TmodelInstanceInfo: WSDL que describe el servicio M. Rebollo Servicios Web Semánticos
  • 35. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Datos del registro UDDI M. Rebollo Servicios Web Semánticos
  • 36. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Construcción de UDDI desde WSDL fuente: Understanding WSDL in a UDDI registry. IBM M. Rebollo Servicios Web Semánticos
  • 37. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Ejemplo de registro UDDI Example (Entidad) <businessEntity businessKey="uuid:A8847507-255F-0E18-D814-78D18E6C32F6"> <name>GlobalWeather</name> <description> GlobalWeather returns detailed, strong-typed and time-stamped weather data </description> <contacts> <contact useType="general info"> <personName>Ingo Melzer</personName> <phone>0170 1234567</phone> </contact> </contacts> <businessServices> ... </businessServices> </businessEntity> M. Rebollo Servicios Web Semánticos
  • 38. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes UDDI La descripción de los servicios se realiza en lenguaje natural M. Rebollo Servicios Web Semánticos
  • 39. Servicios Web Introducción WS semánticos SOAP OWL-S WSDL WSMO UDDI SWS y agentes Otros estándares relacionados WS-Secure: autentificación sobre SOAP WS-Trust: gestión de credenciales WS-Policy: gestión de políticas que agrupan protocolos, autentificación,. . . WS-Federation: gestión de seguridad por dominios BPEL: descripción de procesos en XML (sustituye a WSFL) WSCL: describe conversaciones como FSM M. Rebollo Servicios Web Semánticos
  • 40. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Contenidos 1 Servicios Web 2 Servicios Web para la Web Semántica 3 OWL-S: OWL orientado a servicios 4 Web Service Modeling Ontology (WSMO) 5 Servicios Web Semánticos y Agentes M. Rebollo Servicios Web Semánticos
  • 41. Servicios Web WS semánticos OWL-S WSMO SWS y agentes ¿Qué falta en los Servicios Web? Automatización de las tareas relacionadas con los servicios web: descubrimiento, selección, composición y elección. ⇒ Los servicios deben ser procesables por máquinas M. Rebollo Servicios Web Semánticos
  • 42. Servicios Web WS semánticos OWL-S WSMO SWS y agentes ¿Qué falta en los Servicios Web? Automatización de las tareas relacionadas con los servicios web: descubrimiento, selección, composición y elección. ⇒ Los servicios deben ser procesables por máquinas M. Rebollo Servicios Web Semánticos
  • 43. Servicios Web WS semánticos OWL-S WSMO SWS y agentes ¿Qué falta en los Servicios Web? Automatización de las tareas relacionadas con los servicios web: descubrimiento, selección, composición y elección. ⇒ Los servicios deben ser procesables por máquinas M. Rebollo Servicios Web Semánticos
  • 44. Servicios Web WS semánticos OWL-S WSMO SWS y agentes ¿Qué puede aportar la Web Semántica? Descubrimiento UDDI sólo permite búsqueda por palabras clave (como un buscador de web). Las técnicas de SW permitirían: anotación semántica de las capacidades del WS ontologías descentralizadas (compartidas) interconectadas con axiomas lógicos determinar qué servicio cumple el objetivo mediante inferencia lógica descripciones formales de pre- y postcondiciones entradas y salidas M. Rebollo Servicios Web Semánticos
  • 45. Servicios Web WS semánticos OWL-S WSMO SWS y agentes ¿Qué puede aportar la Web Semántica? Negociación Un vez localizado el servicio, debe poder negociarse calidad del servicio deseada políticas de confianza formas de pago Además de la información "técnica" sobre el servicio, es necesario incluir aspectos no funcionales, como políticas o protocolos de seguridad. M. Rebollo Servicios Web Semánticos
  • 46. Servicios Web WS semánticos OWL-S WSMO SWS y agentes ¿Qué puede aportar la Web Semántica? Composición Un objetivo puede necesitar varios WS para cumplirse. Se precisa información semántica para anotar las capacidades del servicio describir su comportamiento Se requieren capacidades de planning (o scheduling) sobre servicios web. Los planificadores "habituales" no sirven ¿por qué? M. Rebollo Servicios Web Semánticos
  • 47. Servicios Web WS semánticos OWL-S WSMO SWS y agentes ¿Qué puede aportar la Web Semántica? Invocación Después de elegir un servicio (o una combinación), el último paso es su ejecución. Es necesario extraer información de la entrada y salida adaptarla a los protocolos y formatos negociados monitorizar y controlar la transacción durante su ejecución M. Rebollo Servicios Web Semánticos
  • 48. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Tendencias actuales M. Rebollo Servicios Web Semánticos
  • 49. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Contenidos 1 Servicios Web 2 Servicios Web para la Web Semántica 3 OWL-S: OWL orientado a servicios 4 Web Service Modeling Ontology (WSMO) 5 Servicios Web Semánticos y Agentes M. Rebollo Servicios Web Semánticos
  • 50. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Ontología OWL-S Perfil Publicidad (como UDDI) Proceso Interacciones con el cliente Tareas Descomposición de procesos Realización Concreción al servicio (extensión WSDL) M. Rebollo Servicios Web Semánticos
  • 51. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Descripción de un servicio OWL-S Servicio para subir fotografías a un servicio de revelado digital Example (UploadAgent) <service:Service rdf:ID="UploadAgent"> <service:present rdf:resource="&up_profile;#UploadProfile"/> <service:describedBy rdf:resource="&up_process;#UploadProcess"/> <service:supports rdf:resource="&up_grounding;#UploadGrounding"/> </service:Service> M. Rebollo Servicios Web Semánticos
  • 52. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Descripción de perfiles OWL-S Propósito: anunciar el servicio a entidades externas descripción de tipo caja negra del servicio descripción funcional: transformación de entradas en salidas 1 entrada y salida expresada mediate conceptos ontológicos (OWL) 2 cambios de estado con precondiciones y efectos A la descripción en términos de entradas (input), salidas (output), precondiciones y efectos del servicio se le denomina descripción IOPE M. Rebollo Servicios Web Semánticos
  • 53. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Descripción de perfiles OWL-S Example (Perfil del servicio UploadAgent) <service:presentedBy rdf:resource="&up_service;#UploadAgent"/> <profile:serviceName>Photo Upload Service</profile:serviceName> <profile:textDescription>...</profile:textDescription> <profile:contactInformation>...</profile:contactInformation> <profile:hasInput rdf:resource="&up_process;#FileLocation"/> <profile:hasInput rdf:resource="&up_process;#FileName"/> <profile:hasInput rdf:resource="&up_process;#FileType"/> <profile:hasOutput rdf:resource="&up_process;#UploadResponse"/> <profile:hasResult rdf:resource="&up_process;#UploadResult"/> <profile:serviceParameter> <profile:serviceParameterName>Region</profile:serviceParameterName> <profile:sParameter rdf:resource="&camera;#EuropeRegion"/> </profile:serviceParameter> </service:Service> serviceParameter y serviceCategory son NFP M. Rebollo Servicios Web Semánticos
  • 54. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Modelo de procesos OWL-S Describe cómo funciona el servicio → posibilidad de composición compatible con lenguajes de planificación, workflows. . . visto como un conjunto de interacciones entre el servicio y el cliente dos tipos de procesos atómicos: 1 entrada, 1 salida (IOPE) compuestos: conjunto de procesos atómicos problema OWL no permite variables → OWL-S define una clase Parameter que corresponde a las variables en SWRL. la entrada y salida son subclases de Parameter tampoco existe el concepto de alcance M. Rebollo Servicios Web Semánticos
  • 55. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Modelo de procesos OWL-S Example (Modelo del proceso UploadProcess -atómico-) <process:AtomicProcess rdf:ID="UploadProcess"> <process:hasInput> <process:Input rdf:ID="FileLocation"> <process:parameterType rdf:datatype="&xsd;#anyURI"> &camera;#PhotoLocation </process:parameterType> </process:Input> </process:hasInput> <process:hasOutput>...</process:hasOutput> <process:hasResult> <process:Result rdf:ID="UploadResult"> ... <process:hasEffect> <expr:PDDL-Expression> (uploaded ?client ?server ?file) </expr:PDDL-Expression> </process:hasEffect> </process:Result> </process:hasResult> </process:AtomicProcess> Otros lenguajes, como KIF y SWRL pueden usarse para expresar efectos M. Rebollo Servicios Web Semánticos
  • 56. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Modelo de tareas OWL-S Descompone los procesos compuestos en servicios más simples (compuestos o atómicos) representan flujos de trabajo no es ejecutable (sólo una descripción) los procesos simples no son invocables (no son procesos atómicos) estructura de árbol las hojas son los procesos los nodos intermedios son construcciones de control M. Rebollo Servicios Web Semánticos
  • 57. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Constructores de control Sequence: los hijos se ejecutan en orden Split: los hijos se ejecutan concurrentemente Slipt-Join: concurrencia con sincronización de barrera Any-Order: ejecución secuencial "aleatoria" Choice: sólo uno de los hijos se ejecuta If-Then-Else: ejecución condicional Iterate: el hijo se ejecuta repetidamente Repeat-While: bucle con guarda al principio Repeat-Until: bucle con guarda al final M. Rebollo Servicios Web Semánticos
  • 58. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Composición de servicios en OWL-S M. Rebollo Servicios Web Semánticos
  • 59. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Realización de servicios en OWL-S Especifica cómo acceder al servicio mapeo de la descripción abstracta en el perfil yel modelo a una especificación concreta OWL-S no reemplaza WSDL, sino que lo extiende OWL-S se define como un nuevo binding de WSDL Mapeo entre OWL-S y WSDL OWL-S WSDL AtomicProcess operation Conjunto de In/Out messages In/Out individual part en un messages M. Rebollo Servicios Web Semánticos
  • 60. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Realización de servicios OWL-S Example (Modelo del proceso UploadProcess) <process:AtomicProcess rdf:ID="UploadProcess"> <process:hasInput> <process:Input rdf:ID="FileLocation"> <process:parameterType rdf:datatype="&xsd;#anyURI"> &camera;#PhotoLocation </process:parameterType> </process:Input> </process:hasInput> <process:hasOutput>...</process:hasOutput> <process:hasResult> <process:Result rdf:ID="UploadResult"> ... <process:hasEffect> <expr:PDDL-Expression> (uploaded ?client ?server ?file) </expr:PDDL-Expression> </process:hasEffect> </process:Result> </process:hasResult> </process:AtomicProcess> M. Rebollo Servicios Web Semánticos
  • 61. Servicios Web Ontología WS semánticos Perfiles OWL-S Tareas WSMO Tareas SWS y agentes Acceso Realización de servicios OWL-S Example (Modelo del proceso UploadProcess -Grounded-) <grounding:WsdlGrounding rdf:ID="FullUploadProcessGrounding"> <grounding:hasAtomicProcessGrounding rdf:resource="#UploadProcessGrounding"/> </grounding:WsdlGrounding> <grounding:WsdlAtomicProcessGrounding red:ID="UploadProcessGrounding"> <grounding:owlsProcess rdf:resource="#UploadProcess"> <grounding:wsdlOperation> Definición de la operación UploadAgent </grounding:wsdlOperation> <grounding:wsdlInputMessage ...> Definición del parámetro FileLocation </grounding:wsdlInputMessage> ... <grounding:wsdlOutputMessage> ...</grounding:wsdlOutputMessage> </grounding:wsdlOperation> </grounding:owlsProcess> </grounding:WsdlAtomicProcessGrounding> M. Rebollo Servicios Web Semánticos
  • 62. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Contenidos 1 Servicios Web 2 Servicios Web para la Web Semántica 3 OWL-S: OWL orientado a servicios 4 Web Service Modeling Ontology (WSMO) 5 Servicios Web Semánticos y Agentes M. Rebollo Servicios Web Semánticos
  • 63. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Web Service Modeling Ontology (WSMO) WSMO proporciona un marco completo para la especificación, construcción y ejecución de servicios web semánticos. Va más allá de proporcionar una ontología para Servicios Web Está basado en F-logic No es una capa sobre RDF u OWL El proyecto está formado por tres líneas WSML: definición del lenguaje con F-logic WSMO: ontología compuesta para WSML WSMX: entorno de ejecución M. Rebollo Servicios Web Semánticos
  • 64. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Elementos de WSMO M. Rebollo Servicios Web Semánticos
  • 65. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Elementos de WSMO Ontología Proporcionan la terminología empleada por el servicio. Permite la definición de funciones y reglas sin la necesidad de extender el lenguaje M. Rebollo Servicios Web Semánticos
  • 66. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Elementos de WSMO Servicio web Especifica los aspectos funcionales del servicio. La descripción del servicio está formada por sus capacidades (IOPE) y sus interfaces que especifican su coreografía (comunicación) y orquestación (uso de otros servicios) M. Rebollo Servicios Web Semánticos
  • 67. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Elementos de WSMO Objetivos Describen aspectos relacionados con los deseos de los usuarios sobre la funcionalidad requerida. Se expresan en términos de la ontología. M. Rebollo Servicios Web Semánticos
  • 68. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Elementos de WSMO Mediadores Describen los elementos encargados de gestionar los problemas de interoperabilidad entre los elementos anteriores o conectarlos para ofrecer servicios más complejos M. Rebollo Servicios Web Semánticos
  • 69. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Componentes de la ontología. Conceptos Class ontology hasNonFunctionalProperties importsOntology Son los elementos básicos de la usesMediator terminología. hasConcept construcción de jerarquías de hasRelation conceptos hasFunction hasInstance caracterización mediante hasAxiom atributos expresiones lógicas para Class concept refinar su semántica (p.ej. hasNonFunctionalProperties añadir una restricción) hasSuperConcept hasAttribute hasDefinition M. Rebollo Servicios Web Semánticos
  • 70. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Componentes de la ontología. Conceptos Class ontology hasNonFunctionalProperties importsOntology Son los elementos básicos de la usesMediator terminología. hasConcept construcción de jerarquías de hasRelation conceptos hasFunction hasInstance caracterización mediante hasAxiom atributos expresiones lógicas para Class concept refinar su semántica (p.ej. hasNonFunctionalProperties añadir una restricción) hasSuperConcept hasAttribute hasDefinition M. Rebollo Servicios Web Semánticos
  • 71. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Componentes de la ontología. Relaciones Class ontology Expresan interdependencias entre hasNonFunctionalProperties conceptos importsOntology usesMediator también permite hasConcept refinamiento/reutilización de hasRelation relaciones hasFunction posibilidad de definir hasInstance parámetros hasAxiom expresiones lógicas definir Class relation instancias válidas hasNonFunctionalProperties Una función es un tipo especial hasSuperRelation de relación de rango unario y hasParameter dominio n-ario hasDefinition M. Rebollo Servicios Web Semánticos
  • 72. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Componentes de la ontología. Instancias Class ontology hasNonFunctionalProperties Representan a los individuos importsOntology concretos, asígnando valor a los usesMediator atributos del objeto hasConcept pueden ser un enlace a un hasRelation hasFunction almacén de instancias hasInstance externos hasAxiom no tienen porqué coincidir completamente con la Class instance definición del conceptos hasNonFunctionalProperties (datos semiestructurados) hasType hasAttributeValues M. Rebollo Servicios Web Semánticos
  • 73. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción general de un servicio web M. Rebollo Servicios Web Semánticos
  • 74. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Capacidades Funcionalidad del servicio. Class service hasNonFunctionalProperties Precond. Estado interno importsOntology requerido antes de usesMediator proporcionar el servicio hasCapacity Assump. Estado del mundo hasInterface que se asume antes de la ejecución Class capability hasNonFunctionalProperties Postcond. Estado interno al importsOntology que se llega después de la usesMediator ejecución del servicio. hasPrecondition Effects Estado del mundo hasAssumption hasPostcondition que se alcanza al completar hasAssumption la ejecución M. Rebollo Servicios Web Semánticos
  • 75. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Capacidades Funcionalidad del servicio. Class service hasNonFunctionalProperties Precond. Estado interno importsOntology requerido antes de usesMediator proporcionar el servicio hasCapacity Assump. Estado del mundo hasInterface que se asume antes de la ejecución Class capability hasNonFunctionalProperties Postcond. Estado interno al importsOntology que se llega después de la usesMediator ejecución del servicio. hasPrecondition Effects Estado del mundo hasAssumption hasPostcondition que se alcanza al completar hasAssumption la ejecución M. Rebollo Servicios Web Semánticos
  • 76. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Capacidades Class service hasNonFunctionalProperties Describe cómo se realiza la importsOntology funcionalidad del servicio. usesMediator hasCapacity la coreografía describe la hasInterface capacidad en términos de la interacción con el servicio. Class interface la orquestación descompone hasNonFunctionalProperties un servicio en términos de la importsOntology funcionalidad requerida de usesMediator terceros. hasChoreography hasOrchestation M. Rebollo Servicios Web Semánticos
  • 77. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Coreografía Class choreography Determina las interacciones del hasNonFunctionalProperties servicio web con sus usuarios a hasStateSignature través de una máquina de estados HasTransitionRules abstracta (ASM) 1 basada en estados Ventajas 2 los estados se representan permite gestionar por su signatura interacciones complejas 3 reglas de transición para incluye cierto estado interno cambios de estado del servicio M. Rebollo Servicios Web Semánticos
  • 78. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Coreografía Class choreography Determina las interacciones del hasNonFunctionalProperties servicio web con sus usuarios a hasStateSignature través de una máquina de estados HasTransitionRules abstracta (ASM) 1 basada en estados Ventajas 2 los estados se representan permite gestionar por su signatura interacciones complejas 3 reglas de transición para incluye cierto estado interno cambios de estado del servicio M. Rebollo Servicios Web Semánticos
  • 79. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Estados Class choreography El estado se define por un hasNonFunctionalProperties hasStateSignature conjunto identificadores, HasTransitionRules conceptos, relaciones y axiomas. static internos Class stateSignature in lectura hasNonFunctionalProperties importsOntology out escritura usesMediator controlled sólo el interfaz hasStatic lee y escribe hasIn shared el entorno también hasOut hasShared lee y escribe hasControlled M. Rebollo Servicios Web Semánticos
  • 80. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Transiciones Operaciones básicas Class choreography add(fact) hasNonFunctionalProperties delete(fact) hasStateSignature HasTransitionRules update(fact new ) update(fact old → fact new ) Transiciones complejas if Condthen Rules endif forall Var with Cond do Rules endforall choose Var with Cond do Rules endchoose M. Rebollo Servicios Web Semánticos
  • 81. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Descripción de los servicios. Orquestación Describe cómo usar otros servicios basado en las ASM multiagente usa el mismo lenguaje que las coreografías Diferencias principales en lugar de reglas pueden emplearse objetivos y servicios puede reutilizarse o extenderse las interfaces definidas en las coreografías uso de mediadores WW y WG para enlazar con los servicios Esta parte de WSMO todavía no está definida M. Rebollo Servicios Web Semánticos
  • 82. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Objetivos WSMO Descripción de alto nivel del servicio en términos de las capacidades que Class goal proporciona hasNonFunctionalProperties importsOntology mediante qué interfaces usesMediator acceder a ellas requestsCapability El uso de mediadores GG permite requestsInterface descomponer un objetivo complejo en otros objetivos más simples M. Rebollo Servicios Web Semánticos
  • 83. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Mediadores WSMO Gestión de heterogeneidad en tiempo de ejecución en tres niveles: Class mediator 1 datos: fuentes de datos y hasNonFunctionalProperties protocolos de transferencia importsOntology (ontologías) hasSource 2 funciones: ajuste de hasTarget objetivos hasMediationService 3 procesos: interacciones, protocolos de comunicación (orquestación) M. Rebollo Servicios Web Semánticos
  • 84. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Mediadores entre ontologías (OO) Class mediator hasNonFunctionalProperties importsOntology Traducción entre ontologías hasSource hasTarget mezcla hasMediationService alineación mapeo Class ooMediator sub-Class mediator hasSource type {ontology,ooMediator} M. Rebollo Servicios Web Semánticos
  • 85. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Mediadores entre objetivos (GG) Class mediator hasNonFunctionalProperties importsOntology Refinamiento/composición hasSource de objetivos hasTarget hasMediationService Puede emplear un ooMediator para resolver Class ggMediator sub-Class mediator conflictos terminológicos usesMediator type ooMediator entre los objetivos. hasSource type {goal,ggMediator} hasTarget type {goal,ggMediator} M. Rebollo Servicios Web Semánticos
  • 86. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Mediadores entre servicios (WW) Class mediator Define la interoperatividad hasNonFunctionalProperties importsOntology entre servicios web hasSource (orquestación) hasTarget La intermediación puede ser hasMediationService necesaria en los tres niveles: datos, funciones y procesos. Class wwMediator sub-Class mediator Puede emplear un usesMediator type ooMediator ooMediator para resolver hasSource type {service,wwMediator} hasTarget type {service,wwMediator} conflictos terminológicos. M. Rebollo Servicios Web Semánticos
  • 87. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Mediadores servicio–objetivo (WG) Class mediator Define la interoperatividad hasNonFunctionalProperties importsOntology entre servicios web hasSource (orquestación) hasTarget La intermediación puede ser hasMediationService necesaria en los tres niveles: datos, funciones y procesos. Class wgMediator sub-Class mediator Puede emplear un usesMediator type ooMediator ooMediator para resolver hasSource type {service,wgMediator} hasTarget type {goal,ggMediator} conflictos terminológicos. M. Rebollo Servicios Web Semánticos
  • 88. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML Composición de servicios WSMO M. Rebollo Servicios Web Semánticos
  • 89. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML WSML. Descripción de servicios y ontologías M. Rebollo Servicios Web Semánticos
  • 90. Elementos Servicios Web Ontologías WS semánticos Servicios OWL-S Objetivos WSMO Mediadores SWS y agentes WSML WSML. Descripción de servicios y ontologías M. Rebollo Servicios Web Semánticos
  • 91. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Contenidos 1 Servicios Web 2 Servicios Web para la Web Semántica 3 OWL-S: OWL orientado a servicios 4 Web Service Modeling Ontology (WSMO) 5 Servicios Web Semánticos y Agentes M. Rebollo Servicios Web Semánticos
  • 92. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Servicios Web y agentes M. Rebollo Servicios Web Semánticos
  • 93. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Uso de agentes de unión Trata de resolver las carencias en comunicación de los WS los agentes requieren la modificación de los WS (pierden compatibilidad con otros WS directamente) el agente debe adaptarse a los lenguajes y posibles cambios en el WS M. Rebollo Servicios Web Semánticos
  • 94. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Uso de una pasarela Una pasarela entre los agentes y los servicios hace de traductor cada uno usa sus propias arquitecturas sin modificar centralización de las comunicaciones: contraria a los principios de distribución de SMA y WS la pasarela es un cuello de botella M. Rebollo Servicios Web Semánticos
  • 95. Servicios Web WS semánticos OWL-S WSMO SWS y agentes Integración real de WS y agentes ¿Qué componente está relacionado con las ontologías? ¿Y con los servicios web? ¿Cómo se integrarían SW y WS en un agente de información inteligente? M. Rebollo Servicios Web Semánticos