Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 G52IWS: Universal Description, Discovery and Integration (UDDI)‏ Chris Greenhalgh 2007-11-05.

Similar presentations


Presentation on theme: "1 G52IWS: Universal Description, Discovery and Integration (UDDI)‏ Chris Greenhalgh 2007-11-05."— Presentation transcript:

1 1 G52IWS: Universal Description, Discovery and Integration (UDDI)‏ Chris Greenhalgh 2007-11-05

2 2 Contents Overview History/standards UDDI data structures and UUIDs –Categorisation Inquiry API and examples –Find methods; get methods WSDL and UDDI Publishing API Limitations

3 3 UDDI Overview Realised as UDDI registries Enables businesses providing services to register information to enable their discovery –“white pages” – address, contact & known identifiers –“yellow pages” – industrial categorizations using standard taxonomies –“green pages” – technical information about exposed services Enables web service clients to discover potential services Enables businesses to discover –Potential business partners –Potential services to make use of

4 4 UDDI in the Web Service Architecture Service Broker: UDDI registry Service Provider Service Requestor Discover Service: UDDI inquiry API Invoke service Register service: UDDI publishing API Communication: typically SOAP (XML) over HTTP over TCP/IP Optionally secured using WS-Security Interface definition: WSDL (esp. for dynamic invocation)‏ Registry: UDDI & WSDL Manual registry & discovery of businesses & services, e.g. browser-based

5 5 History/Standards Started by IBM, Microsoft & Ariba OASIS (Organization for the Advancement of Structured Information Standards) open standard –UDDI version 2 – April 2003 –UDDI version 3 – Feb. 2005 –http://www.oasis-open.org/specs/index.phphttp://www.oasis-open.org/specs/index.php –See also http://uddi.xml.org/ community sitehttp://uddi.xml.org/ See also Java API for XML Registries (JAX-R)‏

6 6 UDDI registries May be –Public – available to anyone –Private – operated for one particular group of participants, often with more security Each is independent by default –different UDDI key namespaces Can be accessed as a web service –possibly among other methods May be physically distributed across multiple nodes –Which logically provide interfaces to the same information (the same registry)‏

7 7 UDDI APIs A UDDI registry node implements one or more UDDI APIs –Inquiry –Publication And for UDDI 3: –Security –Custody transfer –Subscription With client Subscription Listener API –Replication Specified in terms of XML schema types –For use with SOAP document/literal style

8 8 UDDI Data Structures (References are tModelInstances)‏

9 9 UUIDs All structures (except publisherAssertion) are identified by 128-bit globally unique identifier also known as UUID. –E.g. uuid:23453aef-af35-6a3f-c34a-bf798dab965a These UUIDs can later be used as keys to access the specific data within the registry.

10 10 Primary information about a business –Contact information –Categorization of business in Specific taxonomy or classification scheme(s)‏ –Identifiers –Relationships to other business entities See –Descriptions of the business See Inquiry API section for examples

11 11 Used to represent a relationship between s Relationship may be of any kind –E.g. partners, business-to-customer Must be asserted by BOTH business entities through their own s before the relationship is visible –So that a business cannot unilaterally claim a relationship that does not actually exist

12 12 Represents a service of a business –Web service, telephone service, etc. etc. Abstract representation Contained by a Can be referenced by other s

13 13 Contained by a Describes the service in terms of –Pointers to technical descriptions i.e. s –Access URLs E.g. SOAP endpoint URLs

14 14 Identifies/describes a service specification or behaviour Typically contains a link to the service specification –Does not actually contain the specification –E.g. a link to a WSDL document or textual specification

15 15 Additional data structures –for or –E.g. D-U-N-S numbers (9 digit business identifier), tax IDs –for, or –Categorisation in some system/taxonomy (see next slides)‏ Support enquiry

16 16 Categorization in UDDI registries (aka “classification”)‏ Esp. useful for searching/discovery Extensible framework, including –Standard schemes - see next slide –Arbitrary additional schemes Identified by s Categorisation scheme may be: –“Checked” – checked with categorisation organisation during publishing –“Unchecked” – no checking performed

17 17 Standard classification schemes –NAICS (North American Industry Classification System)‏ e.g. 424920=Book, periodical and newspaper merchant wholesalers http://www.census.gov/epcd/www/naics.html –UNSPSC (United Nations Standard Poducts and Services Classification)‏ E.g. 55101523=Exercise books http://www.unspsc.org/ –ISO 3166 geographic coding standard E.g. 826/GBR/GB=United Kingdom, GB-NGM=Nottingham (unitary authority)‏ http://en.wikipedia.org/wiki/ISO_3166

18 18 Inquiry API Used to find matching entities: –,,,, Or to get detailed information: –,,,, Specified as XML schema elements

19 19 Find_xx Inquiry API functions Support browse, search and narrow Returns abbreviated information –Including UDDI key –Used to then get detailed information

20 20 operation Request syntax (UDDI 2.0): – [ ] [ [ ]...] [ ] [ ] [ ] [ ] ‘%’ wildcard, OR See earlier notes, OR Apply to binding as fingerprint, AND

21 21 Example request ACM% “Developing Java Web Services”

22 22 <SOAP-ENV:Envelope xmlns:SOAP-ENV= "http://schemas.xmlsoap.org/soap/envelope/"> <businessList xmlns="urn:uddi-org:api_v2" generic="2.0" operator="SYSTINET"> <businessInfo businessKey= "uuid:23453aef-af35-6a3f-c34a- bf798dab965a"> ACME Computer Services Provides professional services in the areas of computer software (cont.)‏ Example response “Developing Java Web Services” listing 5.4 One business

23 23 <serviceInfo serviceKey= "uuid:1245sdef-af35-6a3f-c34a- bf798dab965a" businessKey="uuid:523f3aef- af35-6a3f-c34a-bf798dab965a"> Billing Services One service

24 24 element List of enumeration, e.g. – caseSensitiveMatch –Includes: exactNameMatch, caseSensitiveMatch, sortByNameAsc, sortByNameDesc, sortByDateAsc (default), sortByDateDesc

25 25 operation Return UUIDs of related businesses (!)‏ –Given a reference businessKey (UUID)‏ –Optional findQualifiers –Optional keyedReferences

26 26 operation Request syntax (UDDI 2.0): – [ ] [ [ ]...] [ ] [ ] The business: required “Fingerprint”

27 27 Example response “Developing Java Web Services” Billing Services

28 28 operation Syntax: – [ ] [ ] “Fingerprint” The service: required

29 29 Example Response “Developing Java Web Services” http://www.acmecomputerservices.com/billingservices_entry/ Provides SOAP Interface. Described by BillingServices_WSDL.wsdl. endpoint tModel summary

30 30 operation Request syntax: – [ ] [ ] [ ] [ ]

31 31 Example Response “Developing Java Web Services” SOAP_WSDL_BillingServices

32 32 Get_xx inquiry API functions Support drill-down –Typically getting more information for specific entities –Takes UUID as key Operations: – 

33 33 operation Example request: – 23453aef-af35-6a3f-c34a-bf798dab965a

34 34 Example response “Developing Java Web Services” http://www.systinet.com/wasp/uddi/ discovery?businessKey= 23453aef-af35-6a3f-c34a-bf798dab965a http://www.systinet.com/wasp/uddi/ ACME Computer Services Provides professional services in the areas of computer software

35 35 For sales related information Joe Smith 1, Computer Drive, Burlington, MA 01803 USA... See next slide

36 36 Billing Services Billing Services... See next slide NAICS classification ISO 3166 classification

37 37 Here is where you should be visiting to get started with using billing services provided by us. http://www.acmecomputerservices.com/ billingservices_entry/... See next slide Service endpoint

38 38 Provides SOAP Interface. Described by BillingServices_WSDL.wsdl. Describes how to use this service http://www.acmecomputerservices.com/billing_ services_description/ Optional instance (use)-specific information. Can also have parameters

39 39 Has: –name –description (optional)‏ –overviewDoc (optional)‏ Including overviewURL, e.g. WSDL ref –identifierBag (optional) – name-value pairs –categoryBag (optional) – taxonomy-specific name-value pairs

40 40 WSDL and UDDI See e.g. http://www.oasis- open.org/committees/uddi- spec/doc/tn/uddi-spec-tc-tn-wsdl-v2.htm tModels identify –WSDL portType –WSDL Binding businessService represents WSDL service bindingTemplate represents WSDL port

41 41

42 42 Publisher API User to publish/change/delete the information in a UDDI registry –,,,,,,, To manage relationship assertions –, - get businessEntity & tModels owned by this user

43 43 Publisher API Security All operations require authentication: – - takes username/password, return for subsequent use – - releases/invalidates

44 44 Limitations Simple information model –e.g. little/no business oriented information such as business process models –cf. ebXML Registry only, i.e. Stores only metadata –cf. ebXML Registry/repository, also stores submitted objects


Download ppt "1 G52IWS: Universal Description, Discovery and Integration (UDDI)‏ Chris Greenhalgh 2007-11-05."

Similar presentations


Ads by Google