XML Publishing Advanced APIs

resourceInfo This structure holds the location of the resource. usesNamespaces This structure represents a list of namespaces. usesSchemas This structure holds a list of schemas. xmlMapping This structure represents an XML mapping. Arguments • uddi:tModelKey - tModelKeys of tModels that correspond to the XML document. When used with publish_xml, zero tModelKeys or a single tModelKey can be used. • tns:namespace - List of namespaces used in the XML document with their mappings to UDDI tModels xmlResourceDetail This structure describes the published XML document. It contains the location of the document and a list of the namespaces referenced by the XML document. The document declares a prefix for the XML namespace using the xmlns: declaration. Arguments • tns:xmlResourceInfo - contains the location of the XML document URI • tns:namespace - a list of namespace information, one entry for each namespace used in the XML document Page 470 Arguments xmlResourceDetails Table 35. Attributes optional truncated This structure, used in the result list of the find_xml query, provides information about a published XML document. xmlResourceInfo This structure, served as a result from the find_xml query, represents a simple information object about an XML document. It contains information needed for a simple presentation and identifies the UDDI tModel holding the rest of the information. Arguments • location - the location URI of the XML document • uddi:tModelKey - tModelKey of the tModel that corresponds to the XML document. The key can be used with get_xmlDetail • uddi:name - name of the tModel xmlResourceList This structure contains a list of XML resources, possibly a sublist or a large result set. When only a sublist is returned, the structure must contain the listDescription element. Arguments • uddi:listDescription - description of the result list, in case it is a subset of a larger result set. • tns:xmlResourceInfo - information about individual results published XML documents Page 471 Arguments Operations find_xml Syntax This operation finds the XML document. Table 36. Attributes optional listHead optional maxRows Arguments • uddi:authInfo - This optional argument is the string representation of the uddi:authToken. • tns:resourceInfo - URI location of the published XML document. • tns:usesNamespaces - search by XML namespace URIs of the published XML document. • tns:usesSchemas - schemas of the published XML document. • uddi:find_tModel - Argument used for a more detailed description of search criteria. For more information, see uddi:find_tModel [http:uddi.orgpubsuddi_v3.htm_Toc53709284]. The search criteria implied by the other members of find_xml structure will be merged with the contents of uddi:find_tModel contents. Returns This API call returns the xmlResourceList on success. find_xmlMapping Syntax This operation finds a mapping among the UDDI entities for the XML resource. Page 472 Syntax Table 37. Attributes optional policy Arguments • policy - The policy attribute may be one of: • automatic default switches the operation to find UDDI entities for all XSD references, even those assumed from the XML namespace. For each used namespace URI, the function attempts to find all XML Schema tModels registered in UDDI which define the namespace contents and return their tModelKeys. • locations restricts the search only to namespaces containing xsi:schemaLocation or xsi:noNamespaceSchemaLocation . For these namespaces, the function returns tModelKeys of the XML Schema tModels stored in the registry matching the namespace. The operation ignores usage of namespaces lacking the schemaLocation attribute and does not return matching UDDI tModelKeys in this case. • uddi:authInfo - This required argument is the string representation of the uddi:authToken. • tns:resourceInfo - URI location of the XML document. Returns This API call returns xml2uddi:xmlMapping upon success. get_xmlDetail Syntax This operation returns the registered mapping information for the XML document identified by a key. Arguments • uddi:authInfo - This optional argument is the string representation of the uddi:authToken. • uddi:tModelKey - Required uddiKey value representing an existing XML tModel. Returns This API call returns the xml2uddi:xmlResourceDetails which describes the XML and the schemas used to define the document elements. Page 473 Returns publish_xml Syntax Table 38. Attributes optional policy optional publishingMethod optional namespacePublishing This operation creates a new instance of a tModel representing the XML document. Note This operation does not publish the contents of an XSD file. All existing information which overlaps with the XML-to-UDDI mapping are overwritten, or removed from the registry, according to the input data. If the arguments pass information about a namespace, the passed information will be used. Any extraneous schema tModel references will be purged from the XML tModels category bag. Arguments • policy - This optional attribute may have one of the following values: • automatic default - all XSD references found in the XML document, even those assumed from XML namespace prefix declarations will be published. • explicit - Only the XSD references provided in the call will be published. • locations - references to XSDs that are given with the xsi:schemaLocation or xsi:noNamespaceSchemaLocation will be published. • publishingMethod - This optional attribute specifies whether the operation creates a new tModel possibly assigned its namevalue from the caller-supplied structure, or renews the passed tModel contents. • namespacePublishingMethod - This optional attribute controls whether new tModels will be created for namespaces, the existing tModels will be reused, or the namespaces will be ignored. When reuse is specified, the target tModelKey can be also given. It is an error to specify a tModelKey that does not exist in the Registry. When create is specified for a namespace and the tModelKey is given, it is used as the publisher-assigned key for the new tModel. Possible values are create, reuse, and ignore. • uddi:authInfo - This optional argument is the string representation of the uddi:authToken. • location - location of the XML document. • tns:xmlMapping - mapping structure to be used in XML publishing. Page 474 Arguments Returns This API call returns the xmlResourceDetail on success. unpublish_xml Syntax This operation removes the metadata tModel for the XML document, identified by tModelKey. Since the XML structure is not published, data about the XML document are effectively discarded. If the XML documents metadata is referenced from outside, the unpublish call fails. The dispositionReport will contain keys of the UDDI entities that refer to the XML document. Arguments • uddi:authInfo - This optional argument is the string representation of the uddi:authToken. • uddi:tModelKey - tModelKey of the XML document. Returns This API call returns the xmlResourceDetail on success. WSDL xml2uddi_v3.wsdl [http:www.systinet.comdocsr-65wsdlxml2uddi_v3.wsdl] API Endpoint You can find the XML2UDDI API endpoint at http:host name:portcontextuddixml2uddi. Java org.systinet.uddi.client.xml2uddi.v3.Xml2uddiApi

2.2.10. XSD Publishing

XSD-to-UDDI mapping enables the automatic publishing of XML Schema Documents into UDDI and enables precise, flexible UDDI queries based on specific XML schema metadata. The mapping of XML Schema Document information to UDDI covers: • XML types - Types declared at the global level in the XML Schema Document. These types are mapped to tModels in UDDI. • XML elements - XML elements declared at the global level in the XML Schema Document. These elements are mapped to tModels in UDDI. • References to other XML namespaces - Information about imported schemas are stored in the registry. The API allows the user to search for an schemas tModels based on the namespace they define, or the elements and types they declare within that namespace. The API can also extract the published information back from the registry, so it can be accessed as a list of elements, types, and schemas rather than tModels and other UDDI entities. Page 475

2.2.10. XSD Publishing

Data Structures Elements This structure represents elements declared by the published XML Schema Document. Arguments • element - This argument represents an element declared by the published XML Schema Document. importedSchemaModel This structure contains the basics of the imported XML Schema tModel. Arguments • uddi:tModelKey - The key of the tModel of the schema of the imported XML namespace. • uddi:name - The name of that schemas tModel. resourceInfo This structure describes the location of the XML Schema Document. schemaCandidate This structure holds possible mappings of how the XML Schema Document can be published. Arguments • location - The location of the candidate XML Schema Document. • xsd2uddi:schemaMapping - The mapping of the candidate XML Schema Document contents Page 476 Arguments