Fichier de définition des entités UDDI
Le fichier de définition des entités contient un code XML qui décrit exactement chacune des entités spécifiées selon le schéma des utilitaires UDDI.
Vous pouvez créer un fichier de définition d'entités UDDI de trois manières différentes :
- Utiliser les fonctions d'exportation ou de promotion des utilitaires UDDI pour créer un fichier.
- Modifiez un fichier généré par la fonction d'exportation.
- Créer un fichier manuellement.
L'extension au type uddi:tModel à laquelle un attribut "deleted" doit être ajouté n'est pas utilisée actuellement par les utilitaires UDDI.
Le fichier est validé afin de s'assurer que son format est correct et qu'il est conforme au schéma des utilitaires UDDI, comme indiqué ci-dessous:
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema id="uddiPromote" attributeFormDefault="unqualified"
elementFormDefault="qualified" targetNamespace=
"http://www.ibm.com/xmlns/prod/WebSphere/UDDIUtilityTools"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:uddi="urn:uddi-org:api_v2" xmlns="http://www.ibm.com/xmlns/prod/WebSphere/UDDIUtilityTools"
xmlns:promote="http://www.ibm.com/xmlns/prod/WebSphere/UDDIUtilityTools">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace"
schemaLocation="xml.xsd" />
<xsd:import namespace="urn:uddi-org:api_v2" schemaLocation="uddi_v2.xsd" />
<!-- Définir un type de représentation de l'état d'un tModel -->
<xsd:simpleType name="tModelDeleted">
<xsd:restriction base="xsd:NMTOKEN">
<xsd:enumeration value="true" />
<xsd:enumeration value="false" />
</xsd:restriction>
</xsd:simpleType>
<!-- Etendre le tModel avec un attribut supplémentaire de type tModelDeleted -->
<!-- Il est limité aux valeurs true ou false -->
<xsd:complexType name="tModel">
<xsd:complexContent>
<xsd:extension base="uddi:tModel">
<xsd:attribute name="deleted" type="promote:tModelDeleted"
use="optional" />
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<!-- Définitions d'élément de niveau supérieur -->
<xsd:element name="uddiEntities" type="promote:uddiEntities" />
<xsd:complexType name="uddiEntities">
<xsd:sequence>
<xsd:element ref="promote:tModels" minOccurs="0" maxOccurs="1" />
<xsd:element ref="promote:businesses" minOccurs="0" maxOccurs="1" />
<xsd:element ref="promote:services" minOccurs="0" maxOccurs="1" />
<xsd:element ref="promote:bindings" minOccurs="0" maxOccurs="1" />
<xsd:element ref="promote:referencedTModels" minOccurs="0"
maxOccurs="1" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="businesses" type="promote:businesses" />
<xsd:complexType name="businesses">
<xsd:sequence>
<xsd:element ref="uddi:businessEntity" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="tModels" type="promote:tModels" />
<xsd:complexType name="tModels">
<xsd:sequence>
<xsd:element ref="uddi:tModel" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="services" type="promote:services" />
<xsd:complexType name="services">
<xsd:sequence>
<xsd:element ref="uddi:businessService" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="bindings" type="promote:bindings" />
<xsd:complexType name="bindings">
<xsd:sequence>
<xsd:element ref="uddi:bindingTemplate" minOccurs="0"
maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
<xsd:element name="referencedTModels" type="promote:referencedTModels" />
<xsd:complexType name="referencedTModels">
<xsd:sequence>
<xsd:element ref="uddi:tModel" minOccurs="0" maxOccurs="unbounded" />
</xsd:sequence>
</xsd:complexType>
</xsd:schema>
Exemple de fichier de définitions des entités UDDI pour des entités tModels canoniques
Les utilitaires UDDI permettent de créer des entités UDDI dans un registre UDDI cible. Un exemple type de cette utilisation consiste à introduire un nouveau tModel canonique doté d'une clé tModel connue publiquement.
L'exemple de fichier de définition des entités suivant comporte les cinq sections principales pour les tModels, les entreprises, les services, les liaisons et les referencedTModels :
<?xml version="1.0" encoding="UTF-8"?>
<promote:uddiEntities xmlns="urn:uddi-org:api_v2" xmlns:promote=
"http://www.ibm.com/xmlns/prod/WebSphere/UDDIUtilityTools">
<!-- tModels -->
<promote:tModels>
<tModel tModelKey="uuid:ee3966a8-faa5-416e-9772-128554343571" >
<name>http://schemas.xmlsoap.org/ws/2002/07/policytmodel</name>
<description>WS-PolicyAttachment policy expression</description>
</tModel>
<tModel tModelKey="uuid:ad61de98-4db8-31b2-a299-a2373dc97212" >
<name>uddi-org:wsdl:address</name>
<description xml:lang="en">
Ce tModel permet d'indiquer à l'URL que l'adresse doit être obtenue
à partir du fichier de déploiement WSDL.
</description>
<overviewDoc>
<overviewURL>
http://www.oasis-open.org/committees/uddi-spec/doc/tn/
uddi-spec-tc-tn-wsdl-v2.htm#Address
</overviewURL>
</overviewDoc>
</tModel>
</promote:tModels>
<!-- businesses -->
<promote:businesses>
</promote:businesses>
<!-- services -->
<promote:services>
</promote:services>
<!-- bindings -->
<promote:bindings>
</promote:bindings>
<!-- referenced tModels -->
<promote:referencedTModels>
</promote:referencedTModels>
</promote:uddiEntities>