Title: UDDI
1UDDI
Jianguo Lu University of Windsor
2What is UDDI?
- Universal Description, Discovery, and Integration
- A project to encourage interoperability and
adoption of web services - Standards-based specifications for service
publication and discovery. - A set of internet-based implementations
- UDDI business registry
- Interoperating to share registrations
- Partnership among industry business leaders
- Initiated by Ariba, IBM, and Microsoft
3How UDDI Works
UDDI Business Registry
3) UDDI assigns a programmatically unique
identifier (UUID) to each tModel and business
registration and stores them an Internet registry
4Information in the Registry
- Standards bodies, programmers and businesses
register information about their technical
models, including specifications, taxonomies,
etc.
Businesses register public information about
themselves and the services they offer
5- White page
- they are listings of organizations, of contact
information such as phone number and email
addresses, and of the services these
organizations provide. Using the registry as a
white page catalogue, UDDI clients can find web
services provided by a given business - Yellow page
- they are classifications of both companies and
web services according to taxonomies that can be
either standardized or user defined. Through
yellow pages, it is possible to search for
services based on the category the services
belong to, according to a given classification
scheme. - Green page
- It describes how a given web service can be
invoked. It is provided by means of pointers to
service description documents, typically stored
outside the registry.
6UDDI Data Structure
BusinessEntity businessKey, name, contact,
description,identifiers, categories
WSDL Document External Web Service Interface
Description (located at the service provider)
BusinessService serviceKey, businessKey,
name description, categories
BindingTemplate bindingKey, serviceKey,descriptio
n, categories, access point
tModel name, description,overview document,url
pointer to WSDL
7- Newer version of UDDI support the relationships
between business entities, such as information
that Company A owns company B. - Binding template describes the technical
information necessary to use a particular web
service. Essentially, it describes the address at
which the web service is made available along
with a set of detailed information, such as
references to documents (called tModels)
describing the web service interface or other
service properties.
8A simple businessEntity structure
ltbusinessEntity businessKey A687FG00-56NM-EFT1-
3456-098765432124gt ltnamegtAcme Travel
Incorporatedlt/namegt ltdescription
xmllangengt Acme is a world leader in online
travel services lt/descriptiongt ltcontactsgt
ltcontact useTypeUS generalgt ltpersonNamegtA
cme Inc.lt/personNamegt ltphonegt1 800 CALL
ACMElt/phonegt ltemail useTypegtacme_at_acme-travel.c
omlt/emailgt ltaddressgt.lt/addressgt lt/contactgt
lt/contactsgt ltbusinessServicesgt ...
. lt/businessServicesgt
ltidentifierBaggt ... lt/identifierBaggt
ltcategoryBaggt ... ltkeyedReference
tModelKey UUIDDB77450D-9FA8-45D4-A7BC-04411D14
E384 keyNameElectronic check-in
keyValue84121801/gt lt/categoryBaggt
lt/businessEntitygt
9A simple businessService structure
ltbusinessService serviceKey 894B5100-3AAF-11D5-
80DC-002035229C64 businessKeyD2033110-3AAF-11D
5-80DC-002035229C64gt ltnamegtElectronicTravelSe
rvicelt/namegt ltdescription xmllangengtElectr
onic Travel Servicelt/descriptiongt
ltbindingTemplatesgt ltbindingTemplate
bindingKey 6D665B10-3AAF-11D5-80DC-002035229C6
4 serviceKey89470B40-3AAF-11D5-80DC-002035229
C64gt ltdescriptiongt SOAP-based e-checkin
and flight info lt/descriptiongt
ltaccesssPoint URLTypehttpgt http//www.acme-tr
avel.com/travelservice lt/accessPointgt
lttModelInstanceDetailsgt lttModelInstanceInfo
tModelKeyD2033110-3BGF-1KJH-234C-09873909802gt
ltdescriptiongt lt/descriptiongt
lt/tModelInstanceInfogt lt/tModelInstanceDetail
sgt lt/bindingTemplategt
lt/bindingTemplatesgt ltcategoryBaggt
... lt/categoryBaggt lt/businessServicegt
10TModel definition
lttModel tModelKeyD2033110-3BGF-1KJH-234C-0987390
9802gt ltnamegthttp//www.travel.org/e-checkin-i
nterfacelt/namegt ltdescription
xmllangengt Standard service interface
definition for travel services
lt/descriptiongt ltoverviewDocgt
ltdescription xmllangengt WSDL Service
Interface Document lt/descriptiongt
ltoverviewURLgt http//www.travel.org/services/e-c
heckin.wsdl lt/overviewURLgt
lt/overviewDocgt ltcategoryBaggt ...
lt/categoryBaggt lt/tModelgt
11Mapping between WSDL and UDDI
12Registry Operation
- Peer nodes (websites)
- Companies register with any operator
- Registrations can be replicated
- Complete set of registered records available at
all operator nodes - Common set of SOAP APIs supported by all
operators - Compliance enforced by business contract
uddi.org
SAP
IBM
Microsoft
Hewlett Packard
other
13Current Operators
- IBM UDDI Business Registry Sites
- Official Registry
- http//www.ibm.com/services/uddi
- Test Registry
- http//www.ibm.com/services/uddi/testregistry
- Microsoft UDDI Business Registry Sites
- Official Registry
- http//uddi.microsoft.com
- Test Registry
- http//test.uddi.microsoft.com
- Each supports both SOAP Web Page access
- There are public and private registries
- Public registries do not have many web services
- Both IBM and Microsoft have around 1000 services.
- Many of them may not work
- Private registries?
14UDDI Registry API
- Three groups of users
- Service provider
- Service requester
- Other registries.
- Six API sets
- UDDI Inquiry API
- UDDI Publishers API
- UDDI Security API
- UDDI Custody and Ownership Transfer API
- UDDI Subscription API
- UDDI Replication API.
15Registry API
- Security API allows UDDI users to get and
discard authentication tokens ti be used in
further communication with the registry - UDDI Custody enable registries to transfer the
custody of information among themselves and to
transfer ownership of these structures from one
publisher to another. - UDDI subscription enable the monitoring of
changes in a registry. To track new, modified,
and deleted entries. - UDDI Replication support replication of
information between registries, so that different
registries can be synchronized.
16The UDDI Programmers API
- Inquiry API
- Find
- find_business
- find_service
- find_binding
- find_tmodel
- Get details
- get_businessdetail
- get_servicedetail
- get_bindingdetail
- get_tmodeldetail
- get_registeredinfo
- Publishers API
- Save
- save_business
- save_service
- save_binding
- save_tmodel
- Delete...
- delete_business
- delete_service
- delete_binding
- delete_tmodel
17Limitations of UDDI
- Limited query capabilities search for services
restricted to web service name and its
classification. - Web service searching is an very active research
area.