Web Service Discovery - PowerPoint PPT Presentation

1 / 45
About This Presentation
Title:

Web Service Discovery

Description:

Problem of web service discovery is to find the web service that suits our requirements. ... Supports some focused and unfocused discovery pattern ... – PowerPoint PPT presentation

Number of Views:118
Avg rating:1.0/5.0
Slides: 46
Provided by: abh113
Category:

less

Transcript and Presenter's Notes

Title: Web Service Discovery


1
Web Service Discovery
  • Swapna Oundhakar
  • LSDIS, University of Georgia

2
Outline
  • Motivation
  • Web Service Discovery
  • Why ?
  • How ?
  • Current Practices
  • Problems
  • A Solution - Semantics
  • Our Approach

3
Motivation
  • The Web is evolving from a provider of documents
    images

4
Motivation (Contd.)
  • to a provider of services

5
What is a Web Service?
  • A programmable application component that is
    accessible via standard Internet protocols
  • Web page with functions
  • Available for a variety of clients
  • Examples stock quotes, traffic conditions,
    calculators, news, weather, et cetera

6
Technical Definition
  • Def 1. Web Services as a Software Architecture
  • Web services are a new breed of Web
    application. They are self-contained,
    self-describing, modular applications that can be
    published, located, and invoked across the Web.
    Web services perform functions, which can be
    anything from simple requests to complicated
    business processes.
  • Once a Web service is deployed, other
    applications (and other Web services) can
    discover and invoke the deployed service.
  • IBM web service tutorial

7
State of the Art
8
State of the Art
  • The web is organized around URIs, HTML, and HTTP.
  • URIs provide defined ids to refer to elements on
    the web,
  • HTML provides a standardized way to describe
    document structures (allowing browsers to render
    information for the human reader), and
  • HTTP defines a protocol to retrieve information
    from the web.
  • Not surprisingly, web services require a similar
    infrastructure around UDDI, WSDL, and SOAP.

WSMF
9
What is Web Service Discovery?
  • Service discovery
  • Many web services available over the net.
  • Problem of web service discovery is to find the
    web service that suits our requirements.
  • How can I find a service that meets my
    requirements
  • For example,
  • I want to buy the CHEAPEST airline ticket from
    Atlanta to New York.
  • There are hundreds of services on the web to buy
    airline tickets ?
  • How do I find one to give me CHEAPEST tickets

10
Approaches to Discovery (General)
  • Focused discovery
  • A result of an active search either on a specific
    target, for a specific piece of information, or
    as a combination of both
  • Example Directories like yahoo
  • Unfocused Discovery
  • As a result of receiving unsolicited information,
    or through traversing a potentially open-ended
    space in order to retrieve any available data
    which may be present
  • Example Search engines like google

11
Approaches to Discovery (General)
  • Direct Communication (Voice)
  • Supports some focused and unfocused discovery
    pattern
  • Dissemination is direct from the
    source/originator
  • No overhead
  • Simple aggregate token (Business Card)
  • Supports some focused and unfocused discovery
    pattern
  • Dissemination is direct from the
    source/originator
  • Moderate overhead
  • Directory Assistance (Operator)
  • Supports a significant number of focused
    discovery patterns and some unfocused one
  • Dissemination is via a third-party
  • High overhead

12
Approaches to discover a Web Service
  • Direct Communication
  • User knows what he wants, goes to a known service
    provider and invokes the required service
    directly
  • Simple aggregate token (WSIL)
  • User searches over the web for a service provider
    or knows one
  • Service provider provides a file which lists his
    services like a business card
  • User checks it selects one and invokes it
  • Directory Assistance (UDDI)
  • User knows about a directory or can find one
    through search
  • Many different businesses and services are
    registered at a centralized place
  • User goes through them and selects one of them

13
How WSIL works
  • WSIL Web Service Inspection Language
  • With WS-Inspection, I know the host I want to
    work with.
  • I go to that host and get a list of services it
    provides, then I choose one.
  • Typically I get the file inspection.wsil this is
    the index.html of Web services.

14
WSIL discovery step 1 The client requests
inspection.wsil from the server.
Client
Service Provider
WSIL requestover HTTP?
WSIL file
WSDL file
service
15
WSIL discovery step 2 The client gets
inspection.wsil from the server.
Client
Service Provider
WSIL file over HTTP?
WSIL file
WSDL file
service
16
WSIL discovery step 3 The client requests a
particular WSDL file.
Client
Service Provider
WSIL file
WSDL requestover HTTP?
WSDL file
service
17
WSIL discovery step 4 The provider returns the
WSDL service description.
Client
Service Provider
WSIL file
WSDL file
WSDL file over HTTP?
service
18
WSIL discovery step 5 The client invokes the
service with the WSDL info.
Client
Service Provider
WSIL file
WSDL file
service
SOAP request HTTP?
19
WSIL discovery step 6 The service delivers the
requested data to the client.
Client
Service Provider
WSIL file
WSDL file
service
Service results HTTP?
20
How UDDI works
1. Service Registration SOAP
Web Services
3. Service InvocationSOAP, ebXML, BizTalk,
RosettaNet, COM, EJB/RMI, CORBA, ...
2. Service Discovery SOAP
21
Wide-spread usage
22
How UDDI works
4.
SW companies, standards bodies, and programmers
populate the registry with descriptions of
different types of services
1.
Marketplaces, search engines, and business apps
query the registry to discover services at other
companies
2.
UDDI Business Registry
5.
Service Type Registrations
BusinessRegistrations
Businesses populate the registry
with descriptions of the services they support
Business uses this data to facilitate easier
integration with each other over the Web
23
Public Registry Operation
  • Peer nodes (websites)
  • Companies registerwith any node
  • Registrations replicatedon a daily basis
  • Complete set ofregistered recordsavailable at
    all nodes
  • Compliance enforced by business contract

Queries
IBM
Ariba
other
other
Microsoft
24
Registry Data
WhitePages
  • Businesses register public information about
    themselves
  • Standards bodies, Programmers, Businesses
    register information about their Service Types

YellowPages
GreenPages
Service Type Registrations
25
White Pages
  • Business Name
  • Text Description
  • list of multi-language text strings
  • Contact info
  • names, phone numbers, fax numbers, web sites
  • Known Identifiers
  • list of identifiers that a business may be known
    by

26
Yellow Pages
  • Business categories
  • 3 standard taxonomies in V1
  • Industry
  • Product/Services
  • Location Geographical taxonomy
  • Searches can be performed to locate businesses
    who service a particular industry or product
    category, or who are located within a specific
    geographic region.

27
Green Pages
  • New set of information businesses use to describe
    how to do e-commerce with them
  • Nested model
  • Business processes
  • Descriptive container that is used to group a
    series of related Web services related to either
    a business process or category of services.
  • Purchasing services, shipping services, and other
    high-level business processes
  • Service descriptions
  • Binding template
  • Information required to actually invoke a service
  • Services can also be categorized

28
Service Type Registration tModel
  • Pointer to the namespace where service type is
    described
  • What programmers read to understand how to use
    the service
  • Identifier for who published the service
  • Identifier for the service type registration
  • called a tModelKey
  • Used as a signature by web sites that implement
    those services

29
tModel
  • Each tModel consists of a name, an explanatory
    description, and a Universal Unique Identifier
    (UUID).
  • The tModel name identifies the service, such as,
    for example, online order placement.
  • The description supplies more information, which
    in this case might be place an order online.
  • The unique identifier, called a tModelKey, is a
    series of alphanumeric characters, such as, for
    example, uuid4CD7E4BC-648B-426D-9936-443EAAC8AI.
  • Another example the tModel uddi-orghttp has the
    description An http or web browser based web
    service, and the tModelKey uuid68DE9E80-AD09-469D
    -8A37-088422BFBC36.

30
Business Registration
  • XML document Created by end-user company (or on
    their behalf)
  • Can have multiple service listings
  • Can have multiple taxonomy listings

businessEntity
businessKey name URL description contacts business
Services identifierBag categoryBag
businessService
businessService
serviceKey tModelKey Name Description BindingTempl
ates
Key Name Description BindingTemplates
31
Example of a Registration
32
UDDI discovery step 1 The client queries the
UDDI registry for a service.
UDDI query Over SOAP
UDDI registry
Client
WSDL file
Schema file
Service Provider
WSDL file
service
33
UDDI discovery step 2 The UDDI registry sends
the query results back to the client.
UDDI resultsover SOAP
UDDI registry
Client
WSDL file
Schema file
Service Provider
WSDL file
service
34
UDDI discovery step 3 The client uses the UDDI
results to contact the provider.
UDDI registry
Client
WSDL file
Schema file
WSDL requestover HTTP?
Service Provider
WSDL file
service
35
UDDI discovery step 4 The provider returns the
WSDL service description.
UDDI registry
Client
WSDL file
Schema file
Service Provider
WSDL file
WSDL file over HTTP?
service
36
UDDI discovery step 5 The client invokes the
service with the WSDL info.
UDDI registry
Client
WSDL file
Schema file
Service Provider
WSDL file
service
SOAP request HTTP?
37
UDDI discovery step 6 The service delivers the
requested data to the client.
UDDI registry
Client
WSDL file
Schema file
Service Provider
WSDL file
service
Service results HTTP?
38
Basic Web Services Architecture
  • The basic architecture includes technologies
    capable of
  • Exchanging messages
  • Describing Web services
  • Publishing and discovering Web service
    descriptions
  • The basic Web service architecture models the
    interactions between three roles
  • the service provider, service discovery agency,
    and service requestor.

39
Web Service Discovery - Problems
  • How can I find a service that meet my
    requirements
  • For example,
  • I want to buy the CHEAPEST RELIABLE airline
    ticket from Atlanta to New York.
  • Someone advertises that its Service can buy the
    CHEAPEST airline ticket for me.
  • But how do I know if the airline would be
    RELIABLE enough for me ?
  • Can search program understand what do I mean by
    RELIABLE

40
Problems
  • All the approaches so far mentioned are not
    semantic.
  • They have their limitations.
  • UDDI, WSIL
  • By itself does not support semantic description
    of services and depends on the functionality of
    the content language
  • Web Service Descriptions - WSDL
  • Is the content language used but it also does not
    support semantic description of web services

41
Service description with DAML-S
  • DAML-S is DAMLOIL based web service ontology
  • Supplies web service providers with a core set of
    markup language constructs for describing
    properties capabilities of their web services
  • DAML-S can be regarded as semantics-based
    approach for describing Web services
  • Service profile (describes what the service does)
  • Service model (describe how the service works)
  • Service grounding (specifies details on how an
    agent can access a service) Latest Version
  • Input/Output parameters of web services are
    associated with some ontological concepts

42
Semantic Service Discovery
  • Service discovery based on DAML-S
  • Create a service template
  • User can specify what inputs he might want to
    give and what outputs he expects
  • This service template is then matched with
    service descriptions using some algorithm
  • Research work at LSDIS by Jorge Cardoso
  • DAML-S approach
  • Algorithm uses semantic information provided by
    service description

43
Current Semantic Service Discovery - Problems
  • Web service for Buying book
  • Inputs
  • AuthorName
  • BookName
  • ISBN
  • Output
  • Cost of the book
  • Operations
  • buyBook
  • Web service for Bibliography
  • Inputs
  • AuthorName
  • BookName
  • ISBN
  • Output
  • List of the books
  • Operations
  • getBooksByAuthor
  • getBooksByName
  • getBooksByISBN

If a user searches for Book Buying service, based
on current approach search will list the
bibliographical service also.
44
A proposed approach
  • Match services based on operations and not
    input/output parameters
  • Services in turn would be matched based on
    input/outputs

45
References
  • Supporting Web services with HR-XML standards -
    Doug Tidwell, IBM Developerworks
  • UDDI Technical White Paper
  • Web Services and UDDI IBM
  • Web Service Modeling Framework Dieter Fensel
    et.al.
  • DAML-S Web Service Description for the Semantic
    Web Ankolekar et.al.
  • Semantic e-Workflow Composition Cardoso, Sheth
  • METEOR-S WSDI Verma et.al.
Write a Comment
User Comments (0)
About PowerShow.com