[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [uddi-dev] tModel Definition
Clayton, Except when using the general_keywords taxonomy, the keyName attribute is not significant. (The general_keywords taxomony allows you to categorize UDDI entities without first defining a taxonomy tModel.) For all other taxonomies, the keyName attribute is used primarily for human readability. You can omit it, and you cannot use it in queries. The significant attributes in a keyedRereference are the tModelKey and keyValue. The tModelKey represents the property, and the keyValue supplies the property value. You need to create a separate tModel for each property. To get a better sense of how keyedReferences and tModel taxonomies work, I suggest you read some of the UDDI Technical Notes, such as "Using WSDL in a UDDI Registry, V2.0". They use taxonomies extensively. You can find the technical notes in the UDDI-spec site at http://www.oasis-open.org. Here's an example of keyedReferences from the WSDL technical note: <tModel tModelKey="uddi:49662926-f4a5-4ba5-b8d0-32ab388dadda"> <name>StockQuoteSoapBinding</name> <categoryBag> <keyedReference tModelKey="uddi:uddi.org:xml:namespace" keyName=”binding namespace” keyValue=”http://example.com/stockquote/”; /> <keyedReference tModelKey="uddi:uddi.org:wsdl:types" keyName=”WSDL type” keyValue="binding" /> <keyedReference tModelKey="uddi:uddi.org:wsdl:portTypeReference" keyName=”portType reference” keyValue="uddi:e8cf1163-8234-4b35-865f-94a7322e40c3" /> <keyedReference tModelKey="uddi:uddi.org:wsdl:categorization:protocol" keyName=”SOAP protocol” keyValue="uddi:uddi.org:protocol:soap" /> <keyedReference tModelKey="uddi:uddi.org:wsdl:categorization:transport" keyName=”HTTP transport” keyValue="uddi:uddi.org:transport:http" /> <keyedReference tModelKey="uddi:uddi.org:categorization:types" keyName=”tModel type” keyValue="wsdlSpec" /> </categoryBag> <overviewDoc> <overviewURL useType=”wsdlInterface”> http://location/sample.wsdl </overviewURL> </overviewDoc> </tModel> When querying the registry, you can search based on ony of the taxonomies used to categorize this tModel. Here's an example of a query that will return the above tModel. This query searches for a tModel that has a WSDL type of "binding" and that references the specified portType tModel.. <find_tModel xmlns=”urn:uddi-org:api_v3”> <categoryBag> <keyedReference tModelKey=”uddi:uddi.org:wsdl:types” keyName=”WSDL type” keyValue=”binding” /> <keyedReference tModelKey=”uddi:uddi.org:wsdl:portTypeReference” keyName=”portType reference” keyValue=”uddi:e8cf1163-8234-4b35-865f-94a7322e40c3” /> </categoryBag> </find_tModel> When defining a taxonomy tModel, you need to define it as a categorization type, and then you have a choice of defining it as checked or unchecked. If you want a taxonomy with open ended values, you should define it as unchecked. Here's an example of an unchecked taxonomy definition: <tModel tModelKey="uuid:5b67c4b8-fbb8-3681-9c63-bf6b0c838dd0" > <name>uddi.org:wsdl:types</name> <overviewDoc> <overviewURL> http://uddi.org/pubs/uddi_wsdl_technical_note_v2.htm#wsdlTypes </overviewURL> </overviewDoc> <categoryBag> <keyedReference tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62ab4" keyValue="unchecked" /> <keyedReference tModelKey="uuid:c1acf26d-9672-4404-9d70-39b756e62ab4" keyValue="categorization" /> </categoryBag> </tModel> Regards, Anne Clayton Coleman wrote: >Hello, > >I am trying to develop a tModel that has specific keyNames but open >ended values. However, all of the tModel definition instructions I have >found do not really define, at least within XML Schema language, which >keyName/keyValue types. I ultimately want UDDI to be able to narrow a >search based on the keyName/keyValue pairs. > >For Instance: ><reference keyName="specification"> > <spec>cxoAccount</spec> > <version>1.3.0</spec> ></reference> > >or ><specification> > <name>cxoAccountType</name> > <value>Lite Hosting</value> ></specification> > >Then I could search for all services with a >Specification, name="cxoAccount" version="1.3.?" > >I hope this is not too abstract. Ultimately I am looking for how to >define a tModel where some element keyNames are defined, and then some >are not, because the name and value will both be used to search. Any >help on this would be greatly beneficial. > > >---------------------- >Clayton Coleman >CXO Designs >http://cxodesigns.net > > > > >
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]