Version 9.6
 —  Access via UDDI  —

UDDI Extensions

Various extensions to the UDDI standard have been published by the standards bodies OASIS and W3C. The extensions described below are implemented in CentraSite's UDDI environment.


Using WSDL in a UDDI Registry

Since a UDDI registry houses information about web services and their providers, it is essential that the information contained in a web service's WSDL document is accurately mapped to the UDDI data model. This means that subsequent search operations to discover a registered web service are possible, based on the information that is mapped from the WSDL.

OASIS has published a recommendation for how the WSDL-to-UDDI mapping should be implemented, and CentraSite implements this recommendation fully. The technical description of the OASIS recommendation for implementing the WSDL-to-UDDI mapping is contained in the OASIS web site in the document https://www.oasis-open.org/committees/uddi-spec/doc/tn/uddi-spec-tc-tn-wsdl-v2.htm.

Top of page

Using WS-PolicyAttachment

An XML-based expression grammar for policies is described in the Web Services Policy Framework (WS-Policy) specification, published by the W3C at http://www.w3.org/Submission/WS-PolicyAttachment/. The specification also describes how a policy can be associated with a registry object.

The CentraSite UDDI registry supports WS-PolicyAttachment version 1.2 and 1.5. Policy attachments can be either WSDL-based or UDDI-based. Currently, CentraSite supports UDDI-based policy attachments. With UDDI-based policy attachments, the policies are modeled in the UDDI registry using UDDI elements.

Version 1.2 Support

The CentraSite WS-PolicyAttachment support for version 1.2 covers the following aspects of the WS-PolicyAttachment specification:

Supported Policy Subjects

CentraSite supports the UDDI-based policy attachments for the following policy subjects:

Referencing Remote Policy Expressions

An example for a remote policy reference is shown by the following uddi:businessService that is taken from the WS-PolicyAttachment specification:

<businessService serviceKey="…" >
  <name>…</name>
  <description>…</description>
  <bindingTemplates>…</bindingTemplates>
  <categoryBag>
    <keyedReference
       keyName="Policy Expression for example's Web services"
       keyValue="http://www.example.com/myservice/policy"
       tModelKey="uuid:a27078e4-fd38-320a-806f-6749e84f8005" />
  </categoryBag>
</businessService>

The uddi:businessService is attached to a WS-Policy that accessible through the URL http://www.example.com/myservice/policy. The uddi:keyedReference represents the attachment. It is referencing the remote policy reference category system via its uddi:tModelKey and its value holds the URI of the policy document.

Registering Reusable Policy Expressions

A reusable policy expression is represented by a dedicated uddi:tModel in the UDDI registry. The following uddi:tModel shows an example:

<tModel tModelKey="uuid:04cfa…">
  <name>…</name>
  <description xml:lang="EN">
    Policy Expression for example's Web services
  </description>
  <overviewDoc>
    <description xml:lang="EN">WS-Policy Expression</description>
    <overviewURL>http://www.example.com/myservice/policy</overviewURL>
  </overviewDoc>
  <categoryBag>
    <keyedReference
       keyName="Reusable policy Expression"
       keyValue="policy"
       tModelKey="uuid:fa1d77dc-edf0-3a84-a99a-5972e434e993" />
    <keyedReference
       keyName="Policy Expression for example's Web services"
       keyValue="http://www.example.com/myservice/policy"
       tModelKey="uuid:a27078e4-fd38-320a-806f-6749e84f8005" />
  </categoryBag>
</tModel>

The uddi:tModel comes with two uddi:keyedReferences. The first uddi:keyedReference specifies the uddi:tModel to represent a reusable policy expression. The second one points to the document holding the policy expression. An example that shows the attachment of a reusable policy expression is given by the following uddi:businessService:

<businessService serviceKey="…" >
  <name>…</name>
  <description>…</description>
  <bindingTemplates>…</bindingTemplates>
  <categoryBag>
    <keyedReference
       keyName="Policy Expression for example's Web services"
       keyValue="uuid:04cfa…"
       tModelKey="uuid:a27f7d45-ec90-31f7-a655-efe91433527c" />
  </categoryBag>
</businessService>

The uddi:businessService holds a keyedReference pointing to the uddi:tModel holding the reusable policy expression. The uddi:tModelKey of the uddi:keyedReference points to the local policy reference uddi:tModel.

Registering Policies in UDDI Version 3

CentraSite supports UDDI-based policy attachments for UDDI version 2 and 3.

tModels to Support UDDI-Based WS-PolicyAttachments

CentraSite provides the tModels necessary to support UDDI-based WS-PolicyAttachments. These tModels from version 1.2 are described in this section.

Remote Policy Reference Category System

This tModel is used to attach a policy to a UDDI entity by referencing the policy's URI.

<tModel tModelKey="uddi:schemas.xmlsoap.org:remotepolicyreference:2003_03" >
  <name>http://schemas.xmlsoap.org/ws/2003/03/remotepolicyreference</name>
  <description xml:lang="EN">
    Category system used for UDDI entities to point to an external WS-PolicyAttachment Policy Expression
    that describes their characteristics. See WS-PolicyAttachment specification for further details.
  </description>
  <categoryBag>
    <keyedReference
       keyName="uddi-org:types:categorization"
       keyValue="categorization"
       tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62ab4" />
  </categoryBag>
</tModel>

WS-Policy Types Category System

This tModel is used to categorize tModels as representing Policy Expressions. There is only one valid value, namely "policy", that indicates this very fact. It is RECOMMENDED that tModels categorized as representing Policy Expressions reference no more and no less than this very Policy Expression using the Remote Policy Reference category system.

<tModel tModelKey=" uddi:schemas.xmlsoap.org:policytypes:2003_03" >
  <name>http://schemas.xmlsoap.org/ws/2003/03/policytypes</name>
  <description xml:lang="EN">
    WS-Policy Types category system used for UDDI tModels to characterize them 
    as WS-Policy – based Policy Expressions.
  </description>
  <categoryBag>
    <keyedReference
       keyName="uddi-org:types:categorization"
       keyValue="categorization"
       tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62ab4" />
  </categoryBag>
</tModel> 

Local Policy Reference Category System

This tModel is used to attach a Policy Expression to a UDDI entity by referencing the UDDI entity that represents this Policy Expression. The Local Policy Reference category system is based on tModelKeys. It is expected that referenced tModels are registered with the same UDDI registry and are categorized as representing Policy Expressions using the WS-Policy Types category system.

UDDI Key (V3): uddi:schemas.xmlsoap.org:remotepolicyreference:2003_03 
UDDI V1,V2 format key: uuid:a27f7d45-ec90-31f7-a655-efe91433527c 
Categorization: categorization
Checked: Yes 
<tModel tModelKey="uddi:schemas.xmlsoap.org:localpolicyreference:2003_03" >
  <name>http://schemas.xmlsoap.org/ws/2003/03/localpolicyreference</name>
  <description xml:lang="en">
    Category system used for UDDI entities to point to a WS-Policy Policy Expression tModel 
    that describes their characteristics. See WS-PolicyAttachment specification for further details.
  </description>
  <categoryBag>
    <keyedReference
       keyName="uddi-org:types:categorization"
       keyValue="categorization"
       tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62aB4" />
    <keyedReference
       keyName="uddi-org:entityKeyValues"
       keyValue="tModelKey"
       tModelKey="uuid:916b87bf-0756-3919-8eae-97dfa325e5a4" />
  </categoryBag>
</tModel>

Version 1.5 Support

The CentraSite WS-PolicyAttachment support for version 1.5 covers the same aspects as for version 1.2. Additionally, CentraSite provides the following tModels necessary to support UDDI-based WS-PolicyAttachments:

Top of page

Extending UDDI Publisher API Set to Enable Physical Deletion of tModels

For the physical deletion of un-referenced tModels, CentraSite extends the UDDI Publication API set. Appendix H of the UDDI V3 Specification describes how UDDI can be extended. For removing a tModel from a registry, CentraSite introduces the request purge_tModel. This extension is only supported for UDDI version 3.

Arguments

The purge_tModel request has the same arguments as the delete_tModel V3 request:

Behavior

The request removes a hidden tModel from the registry that is not referenced by any other UDDI object.

Returns

On successful completion an empty message is returned.

Caveats

In the case of an error, a disposition report will be returned within a SOAP fault. In addition to the errors which are common to all API calls, the following errors are relevant here:

Top of page