The UDDI Programmer's API
Introduction
This UDDI Programmer's API is divided by the specification into a number of logical sections, each addressing a particular programming focus: the Inquiry API set, the Publication API set, the Security Policy API set, the Custody and Ownbership transfer API set, the Subscription API set, and the Value set API set.
The Inquiry API set
The Inquiry API set allows one to locate and obtain detail on entries in a UDDI registry. The Inquiry API provides three forms of query that follow broadly used conventions which match the needs of software traditionally used with registries: the browse pattern, the drill-down pattern and the invocation pattern.
-
The browse pattern
The browse pattern is supported by way of the API calls involving "find" operations. These calls form the search capabilities provided by the API and are matched with summary return structures that return overview information about the registered information associated with the inquiry API and the search criteria specified in the inquiry.
-
The drill-down pattern
Each instance of the core data structures such as
businessEntity
,
businessService
,
bindingTemplate
and
tModel
has a key which is one of the items in the summary information retrieved by
find_XXX
API calls. Given such a key, the full registered details for the corresponding instance can be retrieved by passing the key to the relevant
get_XXX
API.
-
The invocation pattern
The
bindingTemplate
contains the specific details about an instance of a given interface type, including the location at which a program starts interacting with the web service. The calling application caches this information and uses it to contact the web service at the registered address whenever it needs to communicate with the web service instance.
The following section details the API calls part of the browse pattern:
-
<find_binding>
The
<find_binding>
API is used to find UDDI
<bindingTemplate>
elements. The
<find_binding>
API call returns a
<bindingDetail>
that contains zero or more
<bindingTemplate>
structures matching the criteria specified in the argument list.
-
<find_business>
The
<find_business>
API is used to find UDDI
<businessEntity>
elements. The
<find_business>
API call returns a
<businessList>
that matches the criteria specified in the arguments.
-
<find_relatedBusinesses>
The
<find_relatedBusinesses>
API is used to find
<businessEntity>
elements, which have a completed relationship with the specified
<businessEntity>
that matches the criteria supplied. The
<find_relatedBusinesses>
API call returns a
<relatedBusinessesList>
structure containing results that match the criteria specified in the arguments.
-
<find_service>
The
<find_service>
API is used to find UDDI
<businessService>
elements. The
<find_service>
API call returns a
<serviceList>
structure that matches the conditions specified in the arguments.
-
<find_tModel>
The
<find_tModel>
API is used to find UDDI
<tModel>
elements. The
<find_tModel>
API call returns a list of
<tModel>
entries that match a set of specific criteria. The response consists of summary information about registered
<tModel>
data returned in a
<tModelList>
structure.
The following section details the API calls part of the drill-down pattern:
-
<get_businessDetail>
The
<get_businessDetail>
API call returns the
<businessEntity>
structure corresponding to each of the
<businessKey>
values specified.
-
<get_operationalInfo>
The
<get_operationalInfo>
API call is used to retrieve entity level operational information (such as the date and time that the data structure was created and last modified, the identifier of the UDDI node at which the entity was published and the identity of the publisher) pertaining to one or more entities. The
<get_operationalInfo>
API call returns an
<operationalInfos>
structure corresponding to each of the
entityKey
values specified.
-
<get_serviceDetail>
The
<get_serviceDetail>
API call returns the
<businessService>
structure corresponding to each of the
serviceKey
values specified.
-
<get_tModelDetail>
The
<get_tModelDetail>
API call returns the
<tModel>
structure, corresponding to each of the
tModelKey
values specified.
The following section details the API calls part of the invocation pattern:
-
<get_bindingDetail>
The
<get_bindingDetail>
API call returns the
<bindingTemplate>
structure corresponding to each of the
bindingKey
values specified.
The Publication API set
The Publication API set is used to publish and update information contained in a UDDI registry. According to the policy of the UDDI registry, a publisher selects a UDDI node where it will publish the information. UDDI provides no automated means to reconcile multiple or registrations that are published at different nodes of the same registry.
-
<add_publisherAssertions>
The
<add_publisherAssertions>
API call causes one or more
<publisherAssertions>
to be added to an individual publisher's assertion collection.
-
<delete_binding>
The
<delete_binding>
API call causes one or more instances of
<bindingTemplate>
data to be deleted from the UDDI registry.
-
<delete_business>
The
<delete_business>
API call is used to remove one or more business registrations and all elements that correspond to the natural content of the corresponding
<businessEntity>
elements from a UDDI registry.
-
<delete_publisherAssertions>
The
<delete_publisherAssertions>
API call causes one or more
<publisherAssertion>
elements to be removed from a publisher's assertion collection.
-
<delete_service>
The
<delete_service>
API call is used to remove one or more
<businessService>
elements from the UDDI registry and from its containing
<businessEntity>
parent.
-
<delete_tModel>
The
<delete_service>
API call is used to remove one or more
<businessService>
elements from the UDDI registry and from its containing
<businessEntity>
parent.
-
<get_assertionStatusReport>
The
<get_assertionStatusReport>
API call provides administrative support for determining the status of current and outstanding publisher assertions that involve any of the business registrations managed by the individual publisher. Using this API, a publisher can see the status of assertions that they have made, as well as see assertions that others have made that involve
<businessEntity>
structures controlled by the requesting publisher.
-
<get_publisherAssertions>
The
<get_publisherAssertions>
API call is used to obtain the full set of publisher assertions that is associated with an individual publisher. It complements the
<get_registeredInfo>
API which returns information about businesses, services, bindings, and tModels managed by a publisher.
-
<get_registeredInfo>
The
<get_registeredInfo>
API call is used to get an abbreviated list of all
<businessEntity
> and
<tModel>
data that are controlled by a publisher. When the registry distinguishes between publishers, this is the individual associated with the credentials passed in the
authInfo
element. This returned information is intended, for example, for driving tools that display lists of registered information and then provide drill-down features. This is the recommended API to use after a network problem results in an unknown status of saved information.
-
<save_binding>
The
<save_binding>
API call is used to save or update a complete
<bindingTemplate>
element. It can be used to add or update one or more
<bindingTemplate>
elements as well as the container/contained relationship that each
<bindingTemplate>
has with one or more existing
<businessService>
elements. Each
<bindingTemplate>
may be signed and may have publisher assigned keys.
-
<save_business>
The
<save_business>
API call is used to save or update information about a complete
<businessEntity>
structure. This API has the broadest scope of all of the
save_XXX
API calls, and can be used to make sweeping changes to the published information for one or more
<businessEntity>
elements controlled by an individual. This API call can be used to establish a reference relationship to
<businessService>
structures that are managed as the contents of another
<businessEntity>
. In this way, a
<businessService>
that is a natural part of one
<businessEntity>
can appear as a projected service of another
<businessEntity>
. The content of a
<businessService>
projected in this way (by way of a reference established by this API) are not managed as a part of the referencing entity.
<businessEntity>
structures may be signed and may have publisher-assigned keys.
-
<save_service>
The
<save_service>
API call adds or updates one or more
<businessService>
elements. Each
<businessService>
may be signed and may have publisher-assigned keys.
-
<save_tModel>
The
<save_tModel>
API call adds or updates one or more registered
<tModel>
elements.
<tModel>
elements may be signed and saved with publisher-assigned keys, including those
<tModel>
elements that establish the domain partition of publisher-assigned keys, known as domain key generator tModels.
-
<set_publisherAssertions>
The
<set_publisherAssertions>
API call is used to manage all of the tracked relationship assertions associated with an individual publisher.
The Security Policy API set
The security API includes the following API calls:
-
<discard_authToken>
The
<discard_authToken>
API call is used to inform a node that the passed authentication token is to be discarded, effectively ending the session.
-
<get_authToken>
The
<get_authToken>
API call is used to obtain an authentication token. An
authToken
element may be required when using the publishing API calls.
|
|
(c) INSPIRE IT, 2003 | Send us your feedback: developers@ruddi.biz