1 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* ***** BEGIN LICENSE BLOCK *****
3 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
5 * The contents of this file are subject to the Mozilla Public License Version
6 * 1.1 (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 * http://www.mozilla.org/MPL/
10 * Software distributed under the License is distributed on an "AS IS" basis,
11 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
12 * for the specific language governing rights and limitations under the
15 * The Original Code is the UDDI Inquiry API
17 * The Initial Developer of the Original Code is
18 * Netscape Communications Corporation.
19 * Portions created by the Initial Developer are Copyright (C) 2003
20 * the Initial Developer. All Rights Reserved.
22 * Contributor(s): Harish Dhurvasula <harishd@netscape.com>
23 * John Gaunt <jgaunt@netscape.com>
25 * Alternatively, the contents of this file may be used under the terms of
26 * either the GNU General Public License Version 2 or later (the "GPL"), or
27 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
28 * in which case the provisions of the GPL or the LGPL are applicable instead
29 * of those above. If you wish to allow use of your version of this file only
30 * under the terms of either the GPL or the LGPL, and not to allow others to
31 * use your version of this file under the terms of the MPL, indicate your
32 * decision by deleting the provisions above and replace them with the notice
33 * and other provisions required by the GPL or the LGPL. If you do not delete
34 * the provisions above, a recipient may use your version of this file under
35 * the terms of any one of the MPL, the GPL or the LGPL.
37 * ***** END LICENSE BLOCK ***** */
41 // Type Definitions for UDDI Inquiry and Publish (eventually) calls.
45 // shortcut-array: means that there is an actual element of the name of the
46 // field that contains only an array of objects of the specified type.
47 // To reduce the number of classes the container class has been removed.
48 // optional: this field does not need to be set
49 // required: this field must be set
50 // attribute: this field is represented by an attribute on the element
51 // unbounded: there can be multiple elements of this type contained in the
54 // ----------------------------------------------------------------------------
55 // UDDI Inquiry Request Message types - alpha sort
56 // ----------------------------------------------------------------------------
59 function Find_Binding() { }
61 Find_Binding.prototype =
63 findQualifiers : null, // [optional] - shortcut-array of FindQualifier object (can be empty)
64 tModelBag : null, // [required]
65 generic : null, // [required, attribute]
66 maxRows : null, // [optional, attribute]
67 serviceKey : null, // [required, attribute]
71 function Find_Business() { }
73 Find_Business.prototype =
75 findQualifiers : null, // [optional] - shortcut-array of FindQualifier object (can be empty)
76 names : null, // [optional, unbounded] - array of Name objects
77 identifierBag : null, // [optional]
78 categoryBag : null, // [optional]
79 tModelBag : null, // [optional]
80 discoveryURLs : null, // [optional, unbounded] - shortcut-array of DiscoveryURL objects (if present, cannot be empty)
81 generic : null, // [required, attribute]
82 maxRows : null, // [optional, attribute]
86 function Find_RelatedBusinesses() { }
88 Find_RelatedBusinesses.prototype =
90 findQualifiers : null, // [optional] - shortcut-array of FindQualifier object (can be empty)
91 businessKey : null, // [required] - string
92 keyedReference : null, // [optional]
93 generic : null, // [required, attribute]
94 maxRows : null, // [optional, attribute]
98 function Find_Service() { }
100 Find_Service.prototype =
102 findQualifiers : null, // [optional] - shortcut-array of FindQualifier object (can be empty)
103 names : null, // [optional, unbounded] - array of Name objects
104 categoryBag : null, // [optional]
105 tModelBag : null, // [optional]
106 generic : null, // [required, attribute]
107 maxRows : null, // [optional, attribute]
108 businessKey : null, // [optional, attribute]
112 function Find_TModel() { }
114 Find_TModel.prototype =
116 findQualifiers : null, // [optional] - shortcut-array of FindQualifier object (can be empty)
117 name : null, // [optional]
118 identifierBag : null, // [optional]
119 categoryBag : null, // [optional]
120 generic : null, // [required, attribute]
121 maxRows : null, // [optional, attribute]
125 function Get_BindingDetail() { }
127 Get_BindingDetail.prototype =
129 bindingKeys : null, // [required, unbounded] - array of bindingKey strings
130 generic : null, // [required, attribute]
134 function Get_BusinessDetail() { }
136 Get_BusinessDetail.prototype =
138 businessKeys : null, // [required, unbounded] - array of businessKey strings
139 generic : null, // [required, attribute]
143 function Get_BusinessDetailExt() { }
145 Get_BusinessDetailExt.prototype =
147 businessKeys : null, // [required, unbounded] - array of businessKey strings
148 generic : null, // [required, attribute]
152 function Get_ServiceDetail() { }
154 Get_ServiceDetail.prototype =
156 serviceKeys : null, // [required, unbounded] - array of serviceKey strings
157 generic : null, // [required, attribute]
161 function Get_TModelDetail() { }
163 Get_TModelDetail.prototype =
165 tModelKeys : null, // [required, unbounded] - array of tModelKey strings
166 generic : null, // [required, attribute]
170 // ----------------------------------------------------------------------------
171 // UDDI Inquiry Response Message types - alpha sort
172 // ----------------------------------------------------------------------------
175 function BindingDetail() { }
177 BindingDetail.prototype =
179 bindingTemplates : null, // [optional, unbounded] - array of BindingTemplate objects
180 generic : null, // [required, attribute]
181 operator : null, // [required, attribute]
182 truncated : null, // [optional, attribute]
184 toString : function () {
185 return "BindingDetail[generic: " + this.generic + " operator: " + this.operator + " truncated: " + this.truncated + "]";
190 function BusinessDetail() { }
192 BusinessDetail.prototype =
194 businessEntities : null, // [optional, unbounded] - array of BusinessEntity objects
195 generic : null, // [required, attribute]
196 operator : null, // [required, attribute]
197 truncated : null, // [optional, attribute]
201 function BusinessDetailExt() { }
203 BusinessDetailExt.prototype =
205 businessEntityExts : null, // [required, unbounded] - array of BusinessEntityExt objects
206 generic : null, // [required, attribute]
207 operator : null, // [required, attribute]
208 truncated : null, // [optional, attribute]
212 function BusinessList() { }
214 BusinessList.prototype =
216 businessInfos : null, // [required, unbounded] - shortcut-array of BusinessInfo objects (can be empty)
217 generic : null, // [required, attribute]
218 operator : null, // [required, attribute]
219 truncated : null, // [optional, attribute]
223 function RelatedBusinessesList() { }
225 RelatedBusinessesList.prototype =
227 businessKey : null, // [required] - string
228 relatedBusinessInfos : null, // [required, unbounded] - shortcut-array of RelatedBusinessInfo objects (can be empty)
229 generic : null, // [required, attribute]
230 operator : null, // [required, attribute]
231 truncated : null, // [optional, attribute]
235 function ServiceDetail() { }
237 ServiceDetail.prototype =
239 businessServices : null, // [optional, unbounded] - array of BusinessService objects
240 generic : null, // [required, attribute]
241 operator : null, // [required, attribute]
242 truncated : null, // [optional, attribute]
246 function ServiceList() { }
248 ServiceList.prototype =
250 serviceInfos : null, // [required, unbounded] - shortcut-array of ServiceInfo objects (can be empty)
251 generic : null, // [required, attribute]
252 operator : null, // [required, attribute]
253 truncated : null, // [optional, attribute]
257 function TModelDetail() { }
259 TModelDetail.prototype =
261 tModels : null, // [required, unbounded] - array of TModel objects
262 generic : null, // [required, attribute]
263 operator : null, // [required, attribute]
264 truncated : null, // [optional, attribute]
268 function TModelList() { }
270 TModelList.prototype =
272 tModelInfos : null, // [required, unbounded] - shortcut-array of TModelInfo objects (can be empty)
273 generic : null, // [required, attribute]
274 operator : null, // [required, attribute]
275 truncated : null, // [optional, attribute]
280 // ----------------------------------------------------------------------------
281 // UDDI Inquiry Registry Content types - alpha sort
282 // ----------------------------------------------------------------------------
284 // XXX make one last pass through the content type definitions to clean up
285 // note the shortcut arrays and which ones can be empty!!
288 function AccessPoint() { }
290 AccessPoint.prototype =
292 stringValue : null, // [required] - string
293 urlType : null, // [required, attribute] - restricted to certain values (mailto, http, etc.)
297 function Address() { }
301 addressLines : null, // [optional] - array of AddressLine objects
302 useType : null, // [optional, attribute]
303 sortCode : null, // [optional, attribute]
304 tModelKey : null, // [optional, attribute]
308 function AddressLine() { }
310 AddressLine.prototype =
312 stringValue : null, // [required] - string
313 keyName : null, // [optional, attribute]
314 KeyValue : null, // [optional, attribute]
318 function BindingTemplate() { }
320 BindingTemplate.prototype =
322 descriptions : null, // [optional, unbounded] - array of Description objects
323 accessPoint : null, // [required, choice]
324 hostingRedirector : null, // [required, choice]
325 tModelInstanceDetails : null, // [required] - shortcut-array of TModelInstanceInfo objects (can be empty)
326 serviceKey : null, // [optional, attribute]
327 bindingKey : null, // [required, attribute]
330 /* bindingTemplates - just an array */
333 function BusinessEntity() { }
335 BusinessEntity.prototype =
337 discoveryURLs : null, // [optional] - shortcut-array of DiscoveryURL objects (can not be empty)
338 names : null, // [required, unbounded] - array of Name objects
339 descriptions : null, // [optional, unbounded] - array of Description objects
340 contacts : null, // [optional] - shortcut - array of Contact objects (can not be empty)
341 businessServices : null, // [optional] - shortcut-array of BusinessService objects (can be empty)
342 identifierBag : null, // [optional]
343 categoryBag : null, // [optional]
344 businessKey : null, // [required, attribute]
345 operator : null, // [optional, attribute]
346 authorizedName : null, // [optional, attribute]
350 function BusinessEntityExt() { }
352 BusinessEntityExt.prototype =
354 businessEntity : null, // [required]
355 extensions : null, // [optional, unbounded] - array of XML elements
359 function BusinessInfo() { }
361 BusinessInfo.prototype =
363 names : null, // [required, unbounded] - array of Name Objects
364 descriptions : null, // [optional, unbounded] - array of Description objects
365 serviceInfos : null, // [required] - shortcut-array of ServiceInfo objects (can be empty)
366 businessKey : null, // [required, attribute]
369 /* businessInfos - just an array */
372 function BusinessService() { }
374 BusinessService.prototype =
376 names : null, // [optional, unbounded] - array of Name objects
377 descriptions : null, // [optional, unbounded] - array of Description object
378 bindingTemplates : null, // [optional] - array of BindingTemplate objects (can be empty)
379 categoryBag : null, // [optional]
380 serviceKey : null, // [required, attribute]
381 businessKey : null, // [optional, attribute]
384 /* businessServices - just an array */
386 /* encoder, decoder*/
387 function CategoryBag() { }
390 CategoryBag.prototype =
392 keyedReferences : null, // [required, unbounded] - array of KeyedReference objects
396 function Contact() { }
400 descriptions : null, // [optional, unbounded] - array of Description objects
401 personName : null, // [required] - string
402 phones : null, // [optional, unbounded] - array of Phone objects
403 emails : null, // [optional, unbounded] - array of email address strings
404 addressses : null, // [optional, unbounded] - array of Address objects
405 useType : null, // [optional, attribute]
408 /* contacts - just an array */
411 function Description() { }
413 Description.prototype =
415 stringValue : null, // [required]
416 lang : null, // [optional, attribute]
419 /* encoder, decoder */
420 function DiscoveryURL() { }
422 DiscoveryURL.prototype =
424 stringValue : null, // [required]
425 useType : null, // [required, attribute]
428 /* discoveryURLS - just an array */
435 stringValue : null, // [required]
436 useType : null, // [optional, attribute]
439 /* findQualifier - just a string */
441 // XXX this can go, change to an array of strings in the owning object
443 function FindQualifiers() { }
445 FindQualifiers.prototype =
447 findQualifiers : null, // [optional, unbounded] - array of findQualifer strings
451 function HostingRedirector() { }
453 HostingRedirector.prototype =
455 bindingKey : null, // [required, attribute] - string
458 /* encoder, decoder */
459 function IdentifierBag() { }
461 IdentifierBag.prototype =
463 keyedReferences : null, // [required, unbounded] - array of KeyedReference objects
467 function InstanceDetails() { }
469 InstanceDetails.prototype =
471 descriptions : null, // [optional, unbounded] - array of Description objects
472 overviewDoc : null, // [optional]
473 instanceParms : null, // [optional] - string
476 /* encoder, decoder */
477 function KeyedReference() { }
479 KeyedReference.prototype =
481 tModelKey : null, // [optional, attribute] - string
482 keyName : null, // [optional, attribute] - string
483 keyValue : null, // [required, attribute] - string
486 /* encoder, decoder */
491 stringValue : null, // [required]
492 lang : null, // [optional, attribute] - string
496 function OverviewDoc() { }
498 OverviewDoc.prototype =
500 descriptions : null, // [optional, unbounded] - array of Description objects
501 overviewURL : null, // [optional] - string
509 stringValue : null, // [required]
510 useType : null, // [optional, attribute]
514 function RelatedBusinessInfo() { }
516 RelatedBusinessInfo.prototype =
518 businessKey : null, // [required] - string
519 names : null, // [required, unbounded] - array of Name objects (*defnd above*)
520 descriptions : null, // [optional, unbounded] - array of Description objects (*defnd above*)
521 sharedRelationships : null, // [required, max=2] - array of SharedRelationships objects. XXXjg required?
524 /* relatedBusinessInfos - just an array */
527 function ServiceInfo() { }
529 ServiceInfo.prototype =
531 names : null, // [optional, unbounded] - array of Name Objects
532 businessKey : null, // [required, attribute] - string
533 serviceKey : null, // [required, attribute] - string
536 /* serviceInfos - just an array */
539 function SharedRelationships() { }
541 SharedRelationships.prototype =
543 keyedReferences : null, // [required, unbounded] - array of KeyedReference objects
544 direction : null, // [required, attribute] - string, limited to [toKey | fromKey]
548 function TModel() { }
552 name : null, // [required]
553 descriptions : null, // [optional, unbounded]
554 overviewDoc : null, // [optional]
555 identifierBag : null, // [optional]
556 categoryBag : null, // [optional]
557 tModelKey : null, // [required, attribute]
558 operator : null, // [optional, attribute]
559 authorizedName : null, // [optional, attribute]
562 // XXX this can go, change to an array of tModelKey strings in the owning object
564 function TModelBag() { }
566 TModelBag.prototype =
568 tModelKeys : null, // [required, unbounded] - array of tModelKey strings
572 function TModelInfo() { }
574 TModelInfo.prototype =
576 name : null, // [required]
577 tModelKey : null, // [required, attribute]
580 /* tModelInfos - just an array of tModelInfo objects */
581 /* tModelInstanceDetails - just an array of tModelInstanceInfo objects */
584 function TModelInstanceInfo() { }
586 TModelInstanceInfo.prototype =
588 descriptions : null, // [optional, unbounded] - array of Description objects
589 instanceDetails : null, // [optional]
590 tModelKey : null, // [required, attribute] - string
593 // ----------------------------------------------------------------------------
595 // ----------------------------------------------------------------------------