UDDI, ebXML , WSIL, XRI, WSDM (and the GRID)

advertisement
UDDI, ebXML, WSIL, XRI,
WSDM (and the GRID)
Matthew J. Dovey
Technical Manager
Oxford University e-Science Centre
matthew.dovey@oucs.ox.ac.uk
UDDI
Universal Description Discovery and Integration
Provides data model for describing businesses
and services
Provides API for accessing registries
UBR – Public Registry maintained by IBM,
Microsoft, HP etc.
„
But UDDI can be used for private/community
registries
UDDI History
Initial simple specification to encourage take-up
and early implementations
Fairly rapid turn-around of new versions:
„
„
„
Version 1.0 late 2000
Version 2.0 mid 2001
Version 3.0 mid 2002
2000-2002: lead by UDDI Consortium
2002- moved to OASIS TC
Present:
„
„
Version 2.0 process of vote for OASIS Standard
Version 3.0 OASIS Committee specification
UDDI Data Structure
V2
UDDI API
Security
„
get_AuthToken, discard_AuthToken
Publication
„
save_ (create, update), delete_
Inquiry
„
„
„
„
find_, get_
template based queries
No relevance/ranking
Negotiation (QoS, price etc.) should happen outside
of UDDI (but UDDI may contain endpoints to such
negotiation services)
UDDI v3
Subscription
„
„
Synchronous
Asynchronous (via callback webservice)
Digital signature support for authenticating provenence
Custody transfer
Explicit node replication API
„
V2 left to implementation
Migration of data between registries
„
UBR as registry of key generators
UDDI Policy modeling
All UDDI objects can be referenced by http gets
Additional query modifiers, category groups,
internationalization, etc.
UDDI Extensibility
Prior to v3
„
getBusinessDetailExt
V3 Appendix
„
„
„
„
Extending data model via XML Schema
substitutionGroups
Extending API structures via XML Schema
substitutionGroups
Use of XML Namespace to identify extension
elements
Policy for client/server behaviour
Extensibility Example
<uddi:add_publisherAssertions
xmlns:egExt="http://tempuri.org/uddi_extension"
xmlns:uddi="urn:uddi-org:api_v3"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<uddi:authInfo>someAuthInfo</uddi:authInfo>
<egExt:publisherAssertionExt>
<uddi:fromKey>some business key</uddi:fromKey>
<uddi:toKey>some other business key</uddi:toKey>
<uddi:keyedReference
tModelKey="uddi:uddi.org:relationships"
keyName="some peer to peer relationship"
keyValue="peer-peer" />
<uddi:discoveryURLs>
<uddi:discoveryURL useType="contract">
http://www.example.com/contract/p2pcontract.pdf
</uddi:discoveryURL>
</uddi:discoveryURLs>
</egExt:publisherAssertionExt>
</uddi:add_publisherAssertions>
UDDI v4
Compatibility changes for SAML, WS-A, WS-I, WSPolicy, BPEL, XRI, etc.
Better external taxonomy support etc.
More granular access control (by role, entity, action)
Life of data (stale data)
Trustworthiness (integration of trust and identity
services)
Federation (representing registries within registries)
Different comparisons for category groups
UDDI and GRID – best practice or new requirements?
More best practice guides etc.
XRI – eXtensible Resource
Identifier
New OASIS Committee (began early this year)
Chairs:Drummond Reed, OneName and Gabe Wachob, Visa International
Aims:
„
„
„
„
to define a URI scheme and a corresponding URN namespace that provide
transport- and application-neutral identification schemes to support distributed
directory services that enable the identification of resources (including people
and organizations)
define basic mechanisms for resolving the identifiers in these
schemes and for exchanging data associated with these identifiers.
To enable the creation of Web-like collections of resources
(including, but not limited to, data, systems, services, organizations,
and people) that extend the WWW's current generalized addressing and
linking capabilities
Define an XML schema to associate metadata with
resources and a service to manipulate this metadata and data associated
with the resources
XRI Strawman
XRI-URI are
„
„
„
„
Abstract - XRI-URIs are intended primarily to identify things that are not otherwise concretely
identified on the network (such as HTTP endpoints, SMTP mailboxes, etc)
Human-friendly - XRI-URIs are intended to supported names that are parseable, memorable,
and semantically meaningful to humans.
Reassignable - XRI-URIs are intended to be "reassignable". This means that they can both
resolve to different networked resources or representations as well as semantically refer to
different resources themselves over time.
Multiple paths of hierarchy - Each "segment" of an XRI-URI corresponds to a local key in a
directory/namespace. No assumption is made about the segments used to "reach" a
particular directory -- there can be multiple "paths" to get to a particular directory/namespace.
XRI-URNs are:
„
„
„
Abstract - XRI-URNs are intended primarily to identify things which are not otherwise
concretely identified on the network (such as HTTP endpoints, SMTP mailboxes, etc)
Efficiently Machine Resolvable - An important feature of XRI-URNs is that they are very
efficiently resolvable. Efficient resolvability is favored over support for human readability.
Permanent - XRI-URNs have the semantics of other URN schemes – an XRI-URN refers to
the same logical resource from the time it is defined globally and forever.
XRI Examples
XRI
„
„
„
„
„
„
„
„
xri://’naming.authority’/local/part
(abstract identifiers)
xri://naming.authority.com/local/part
(leveraging DNS)
xri://(http://root.cross-reference.com).leaf/local/part
(cross referencing leveraging other URI scheme – abstract identifiers)
xri://=AlbertEinstein/theory/relativity
(shortcut mnemonics for convenience of humans)
XRN
„
„
„
„
urn:xri://.naming.authority/local/part
(abstract identifiers)
urn:xri://.(urn:pin:999).leaf/local/part
(cross referencing leveraging other URN scheme – abstract identifiers)
WSIL - Web Services Inspection Language
IBM/Microsoft Note (2001)
Dropped from OGSI/OGSA due to
potential IPR issues
XML document acting as intermediate
pointer to service description
Can reference UDDI services or WSDL (or
other WSIL)
Extensible to support other descriptions
WSIL Examples
Referencing WSDL
<description referencedNamespace="http://schemas.xmlsoap.org/wsdl/"
location="http://example.com/stockquote/main.wsdl">
</description>
Referencing UDDI
<description referencedNamespace="urn:uddi-org:api">
<wsiluddi:serviceDescription location="http://www.example.com/uddi/inquiryapi">
<wsiluddi:serviceKey>4FA28580-5C39-11D5-9FCF-B3200333F79</wsiluddi:serviceKey>
<wsiluddi:discoveryURL useType="businessEntity">
http://www.example.com/uddi?3C9CADD0-5C39-11D5-9FCF-BB3200333F79
</wsiluddi:discoveryURL>
</wsiluddi:serviceDescription>
</description>
Locating WSIL
Add /inspection.wsil to URL
Via HTML meta tags
„
<HTML> <HEAD> <META name="serviceInspection"
content="localservices.wsil"> <META
name="serviceInspection"
content="http://www.example.com/calculators.wsil">
<META name="serviceInspection"
content="ftp://www.anotherexample.com/translators.w
sil"> </HEAD> <BODY>
WSIL Alternative?
Use of html link element (proposed to
UDDI list by Paul Denning)
„
e.g.
<link rel="alternate" type="application/uddi-inq+xml"
title="bizNameHere"
href="url/to/SOAP/UDDIv2/inquiryAPI" />
„
UDDI v3 all UDDI objects can be referenced by http
gets.
Web Service Architecture – Discovery
N.B.
„
„
UDDI is registry designed for long life-cycle endpoints
QoS, contract negotiation, management, etc. outside of UDDI (but endpoints can be stored in
UDDI)
ebXML
XML for e-Business
OASIS Standard (Currently at version 2)
Defines:
„
„
„
Data model for e-business objects (including
services, policies etc.)
Messaging for e-business transactions
Registry for e-business objects
ebXML Data Model
Object Oriented Model (UML)
„
Objects have methods and attributes
ebXML Registry API
Life Cycle Management
Query Management
„
„
„
Filter (XML syntax)
SQL
XQuery in future version?
ebXML Registries must
have policies
Auditing
ebXML Filter Query
<AdhocQueryRequest>
<ResponseOption returnType = "LeafClass"/>
<FilterQuery>
<OrganizationQuery>
<OrganizationParentBranch>
<NameBranch>
<LocalizedStringFilter>
<Clause>
<SimpleClause leftArgument = "value">
<StringClause stringPredicate = "Equal">XYZ</StringClause>
</SimpleClause>
</Clause>
</LocalizedStringFilter>
</NameBranch>
</OrganizationParentBranch>
</OrganizationQuery>
</FilterQuery>
</AdhocQueryRequest>
select id from Organization where parent in (select id from Organization where name = ‘XYZ’);
ebXML and UDDI
Fairly similar aims
„
„
„
ebXML centred on e-business
UDDI centred on WebServices
ebXML defined UML data model; UDDI defines XML
Schema
Cross OASIS TC Working Groups
„
„
UDDI as basis for ebXML registries
ebXML as basis for UDDI registries
JAXR (Java Access to XML Registries)
„
High level abstract interface to UDDI, ebXML, …
WSDM
New OASIS TC (started up last month)
Based on previous floundered OASIS TC
Defining management of distributed resources
USING Web services
Defining management OF Web services
operations and WSDL.
Collaborate with W3C, GGF, DMTF, OASIS
Chairs: Heather Kreger (IBM, Chair of WSA
MTF) & Winston Bumpus (Novell, DMTF
President)
Web Service Architecture – MTF
Defining the manageability characteristics of the
architectural elements of the Web Services architecture,
i.e.:
„
„
„
„
„
„
Identification - data that uniquely identifies the element
Status - information about operational state of a element (up:
busy/idle; down: stopped/saturated/crashed)
Configuration - a collection of behavioural properties which may
be changed (persistent over instances)
Metrics - raw atomic, unambiguous information for
managmement purposes e.g. response times
Operations - methods that control or help manage the entity
(instance specific)
Events - changes in the state of the entity e.g a lifecycle state
change, or a state change.
DTMF
Models real world managed objects. Large existing
model (not in web/grid format/granularity)
Application Working Group
„
Intends to model management of web services
Interoperability Working Group
„
Defining a CIM/SOAP protocol in WSDL: CIM/Ops as
WSDL operations and xmlCIM as the body of SOAP
messages over HTTP
GRID
OGSA et al.
But you know all about that!
Web Services stack
Management requirements for a
Manageable Web Services Archicture
W3C WS Arch WG, Management TF
Quality of Service
Management
Security/Trust/Privacy
Mangeability of Web Services
OASIS WSDM
Web service based access
to management data OASIS WSDM, GGF CMM
Manageability portTypes OASIS WSDM, GGF CMM, DMTF
Links
OASIS (ebXML, UDDI, XRI, WSDM)
„
http://www.oasis-open.org/
Web Service Architecture
„
http://www.w3.org/2002/ws/arch/
WSIL
„
http://www-106.ibm.com/developerworks/webservices/library/wswsilspec.html
Download