2c468576c23e44bf70303616c024d03fb813e759
[externalapi/nbi.git] / docs / offeredapis / api_serviceInventory / model.xsd
1 <?xml version="1.0" encoding="UTF-8"?>
2 <xs:schema xmlns:xmime="http://www.w3.org/2005/05/xmlmime"
3            xmlns="http://orange.com/ONAPNBI/api/serviceInventory/v4/model"
4            xmlns:xs="http://www.w3.org/2001/XMLSchema"
5            attributeFormDefault="unqualified"
6            elementFormDefault="qualified"
7            targetNamespace="http://orange.com/ONAPNBI/api/serviceInventory/v4/model">
8    <xs:annotation id="signature">
9       <xs:appinfo>API Designer</xs:appinfo>
10       <xs:documentation>Model: serviceInventory
11                     Version: 4.0.0_inProgress
12                     Owner: ONAPNBI
13                     Generated on: 2019-03-12T16:45:37.288Z
14                     Generated by: Orange API Designer v2, model-v1</xs:documentation>
15    </xs:annotation>
16    <xs:simpleType name="eventType">
17       <xs:restriction base="xs:string">
18          <xs:enumeration value="ServiceCreationNotification"/>
19          <xs:enumeration value="ServiceAttributeValueChangeNotification"/>
20          <xs:enumeration value="ServiceRemoveNotification"/>
21       </xs:restriction>
22    </xs:simpleType>
23    <xs:element name="ErrorRepresentation" type="ErrorRepresentation">
24       <xs:annotation>
25          <xs:documentation source="public">This class is used to describe error.</xs:documentation>
26       </xs:annotation>
27    </xs:element>
28    <xs:complexType name="ErrorRepresentation">
29       <xs:annotation>
30          <xs:documentation source="public">This class is used to describe error.</xs:documentation>
31       </xs:annotation>
32       <xs:sequence minOccurs="1" maxOccurs="1">
33          <xs:element name="code" type="xs:int" minOccurs="1">
34             <xs:annotation>
35                <xs:documentation source="public">Application related code (as defined in the API or from a common list)</xs:documentation>
36             </xs:annotation>
37          </xs:element>
38          <xs:element name="reason" type="xs:string" minOccurs="1">
39             <xs:annotation>
40                <xs:documentation source="public">Text that explains the reason for error. This can be shown to a client user.</xs:documentation>
41             </xs:annotation>
42          </xs:element>
43          <xs:element name="message" type="xs:string" minOccurs="0">
44             <xs:annotation>
45                <xs:documentation source="public">Text that provide more details and corrective actions related to the error. This can be shown to a client user.</xs:documentation>
46             </xs:annotation>
47          </xs:element>
48          <xs:element name="status" type="xs:string" minOccurs="0">
49             <xs:annotation>
50                <xs:documentation source="public">http error code extension like 400-2</xs:documentation>
51             </xs:annotation>
52          </xs:element>
53          <xs:element name="referenceError" type="xs:string" minOccurs="0">
54             <xs:annotation>
55                <xs:documentation source="public">url pointing to documentation describing the error</xs:documentation>
56             </xs:annotation>
57          </xs:element>
58          <xs:element name="@type" type="xs:string" minOccurs="0">
59             <xs:annotation>
60                <xs:documentation source="public">The class type of a REST resource.</xs:documentation>
61             </xs:annotation>
62          </xs:element>
63          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
64             <xs:annotation>
65                <xs:documentation source="public">it provides a link to the schema describing a REST resource.</xs:documentation>
66             </xs:annotation>
67          </xs:element>
68       </xs:sequence>
69    </xs:complexType>
70    <xs:element name="Service" type="Service">
71       <xs:annotation>
72          <xs:documentation source="public">Instantiated service (service_instance) in AAI</xs:documentation>
73       </xs:annotation>
74    </xs:element>
75    <xs:complexType name="Service">
76       <xs:annotation>
77          <xs:documentation source="public">Instantiated service (service_instance) in AAI</xs:documentation>
78       </xs:annotation>
79       <xs:sequence minOccurs="1" maxOccurs="1">
80          <xs:element name="id" type="xs:string" minOccurs="0">
81             <xs:annotation>
82                <xs:documentation source="public">Unique identifier of the service - Valued with service-instance-id</xs:documentation>
83             </xs:annotation>
84          </xs:element>
85          <xs:element name="href" type="xs:string" minOccurs="0">
86             <xs:annotation>
87                <xs:documentation source="public">Reference of the service
88 Not managed in Beijing release</xs:documentation>
89             </xs:annotation>
90          </xs:element>
91          <xs:element name="name" type="xs:string" minOccurs="0">
92             <xs:annotation>
93                <xs:documentation source="public">Name of the service - Valued with service-instance-name</xs:documentation>
94             </xs:annotation>
95          </xs:element>
96          <xs:element name="type" type="xs:string" minOccurs="0">
97             <xs:annotation>
98                <xs:documentation source="public">Service type - valued with 'service-instance'</xs:documentation>
99             </xs:annotation>
100          </xs:element>
101          <xs:element name="state" type="xs:string" minOccurs="0">
102             <xs:annotation>
103                <xs:documentation source="public">State of the service.</xs:documentation>
104             </xs:annotation>
105          </xs:element>
106          <xs:element name="@type" type="xs:string" minOccurs="0">
107             <xs:annotation>
108                <xs:documentation source="public">This attribute allows to dynamically extends TMF class. Not used in Beijing release.</xs:documentation>
109             </xs:annotation>
110          </xs:element>
111          <xs:element name="@baseType" type="xs:string" minOccurs="0">
112             <xs:annotation>
113                <xs:documentation source="public">Not managed in Beijing release</xs:documentation>
114             </xs:annotation>
115          </xs:element>
116          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
117             <xs:annotation>
118                <xs:documentation source="public">Not managed in Beijing release</xs:documentation>
119             </xs:annotation>
120          </xs:element>
121          <xs:element name="serviceSpecification"
122                      type="ServiceSpecificationRef"
123                      minOccurs="0">
124             <xs:annotation>
125                <xs:documentation source="public">A service specification reference  required to realize a ProductSpecification</xs:documentation>
126             </xs:annotation>
127          </xs:element>
128          <xs:element name="characteristic"
129                      type="ServiceCharacteristic"
130                      minOccurs="0"
131                      maxOccurs="unbounded">
132             <xs:annotation>
133                <xs:documentation source="public">A list of service characteristics i.e. name/value pairs that define the service characteristics</xs:documentation>
134             </xs:annotation>
135          </xs:element>
136          <xs:element name="supportingResource"
137                      type="SupportingResource"
138                      minOccurs="0"
139                      maxOccurs="unbounded">
140             <xs:annotation>
141                <xs:documentation source="public">A list of supporting resources
142 A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf</xs:documentation>
143             </xs:annotation>
144          </xs:element>
145          <xs:element name="relatedParty"
146                      type="RelatedPartyRef"
147                      minOccurs="0"
148                      maxOccurs="unbounded">
149             <xs:annotation>
150                <xs:documentation source="public">A list of related party references . A related party defines party or party role linked to a specific entity.</xs:documentation>
151             </xs:annotation>
152          </xs:element>
153       </xs:sequence>
154    </xs:complexType>
155    <xs:element name="ServiceSpecificationRef" type="ServiceSpecificationRef">
156       <xs:annotation>
157          <xs:documentation source="public">Service specification reference: ServiceSpecification of this service (catalog information)</xs:documentation>
158       </xs:annotation>
159    </xs:element>
160    <xs:complexType name="ServiceSpecificationRef">
161       <xs:annotation>
162          <xs:documentation source="public">Service specification reference: ServiceSpecification of this service (catalog information)</xs:documentation>
163       </xs:annotation>
164       <xs:sequence minOccurs="1" maxOccurs="1">
165          <xs:element name="id" type="xs:string" minOccurs="0">
166             <xs:annotation>
167                <xs:documentation source="public">Unique identifier of the service specification. valued to model-version-id</xs:documentation>
168             </xs:annotation>
169          </xs:element>
170          <xs:element name="href" type="xs:string" minOccurs="0">
171             <xs:annotation>
172                <xs:documentation source="public">Reference of the service specification.
173 not managed in Beijing release.</xs:documentation>
174             </xs:annotation>
175          </xs:element>
176          <xs:element name="name" type="xs:string" minOccurs="0">
177             <xs:annotation>
178                <xs:documentation source="public">Name of the required service specification</xs:documentation>
179             </xs:annotation>
180          </xs:element>
181          <xs:element name="version" type="xs:string" minOccurs="0">
182             <xs:annotation>
183                <xs:documentation source="public">Service specification version.
184 Not managed in Beijing release</xs:documentation>
185             </xs:annotation>
186          </xs:element>
187          <xs:element name="@referredType" type="xs:string" minOccurs="0">
188             <xs:annotation>
189                <xs:documentation source="public">This attribute allows to dynamically extends TMF class. Valued with 'ONAPservice'. We used this features to add following attribute: invariantUUID</xs:documentation>
190             </xs:annotation>
191          </xs:element>
192          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
193             <xs:annotation>
194                <xs:documentation source="public">Not managed in Beijing release</xs:documentation>
195             </xs:annotation>
196          </xs:element>
197          <xs:element name="invariantUUID" type="xs:string" minOccurs="0">
198             <xs:annotation>
199                <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - model-invariant-id</xs:documentation>
200             </xs:annotation>
201          </xs:element>
202       </xs:sequence>
203    </xs:complexType>
204    <xs:element name="ServiceCharacteristic" type="ServiceCharacteristic">
205       <xs:annotation>
206          <xs:documentation source="public">A list of name value pairs that define the service characteristics
207 Not managed in Beijing release.</xs:documentation>
208       </xs:annotation>
209    </xs:element>
210    <xs:complexType name="ServiceCharacteristic">
211       <xs:annotation>
212          <xs:documentation source="public">A list of name value pairs that define the service characteristics
213 Not managed in Beijing release.</xs:documentation>
214       </xs:annotation>
215       <xs:sequence minOccurs="1" maxOccurs="1">
216          <xs:element name="name" type="xs:string" minOccurs="1">
217             <xs:annotation>
218                <xs:documentation source="public">Name of the characteristic
219 Not managed in Beijing release.</xs:documentation>
220             </xs:annotation>
221          </xs:element>
222          <xs:element name="valueType" type="xs:string" minOccurs="0">
223             <xs:annotation>
224                <xs:documentation source="public">Type of value for this characteristic.
225 Not managed in Beijing release.</xs:documentation>
226             </xs:annotation>
227          </xs:element>
228          <xs:element name="value" type="Value" minOccurs="0">
229             <xs:annotation>
230                <xs:documentation source="public">Value of the characteristic
231 Not managed in Beijing release.</xs:documentation>
232             </xs:annotation>
233          </xs:element>
234       </xs:sequence>
235    </xs:complexType>
236    <xs:element name="SupportingResource" type="SupportingResource">
237       <xs:annotation>
238          <xs:documentation source="public">Supporting resource - A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf</xs:documentation>
239       </xs:annotation>
240    </xs:element>
241    <xs:complexType name="SupportingResource">
242       <xs:annotation>
243          <xs:documentation source="public">Supporting resource - A supportingResource will be retrieved for each relationship of the relationship-list where related-link describe a vnf</xs:documentation>
244       </xs:annotation>
245       <xs:sequence minOccurs="1" maxOccurs="1">
246          <xs:element name="id" type="xs:string" minOccurs="0">
247             <xs:annotation>
248                <xs:documentation source="public">Unique identifier of the supporting resource - Valued to vnf-id</xs:documentation>
249             </xs:annotation>
250          </xs:element>
251          <xs:element name="href" type="xs:string" minOccurs="0">
252             <xs:annotation>
253                <xs:documentation source="public">Reference of the supporting resource</xs:documentation>
254             </xs:annotation>
255          </xs:element>
256          <xs:element name="role" type="xs:string" minOccurs="0">
257             <xs:annotation>
258                <xs:documentation source="public">Not managed in Beijing release.</xs:documentation>
259             </xs:annotation>
260          </xs:element>
261          <xs:element name="name" type="xs:string" minOccurs="0">
262             <xs:annotation>
263                <xs:documentation source="public">Name of the supporting resource - Valued with vnf_-name</xs:documentation>
264             </xs:annotation>
265          </xs:element>
266          <xs:element name="@referredType" type="xs:string" minOccurs="0">
267             <xs:annotation>
268                <xs:documentation source="public">This attribute allows to dynamically extends TMF class. Valued with 'ONAP resource'. We used this features to add following attributes:
269     status      
270     modelInvariantId
271    modelVersionId
272    modelCustomisationId</xs:documentation>
273             </xs:annotation>
274          </xs:element>
275          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
276             <xs:annotation>
277                <xs:documentation source="public">Not managed in Beijing release.</xs:documentation>
278             </xs:annotation>
279          </xs:element>
280          <xs:element name="status" type="xs:string" minOccurs="0">
281             <xs:annotation>
282                <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with prov-status</xs:documentation>
283             </xs:annotation>
284          </xs:element>
285          <xs:element name="modelInvariantId" type="xs:string" minOccurs="0">
286             <xs:annotation>
287                <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with model-invariant-id</xs:documentation>
288             </xs:annotation>
289          </xs:element>
290          <xs:element name="modelVersionId" type="xs:string" minOccurs="0">
291             <xs:annotation>
292                <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with model-verson-id</xs:documentation>
293             </xs:annotation>
294          </xs:element>
295          <xs:element name="modelCustomisationId" type="xs:string" minOccurs="0">
296             <xs:annotation>
297                <xs:documentation source="public">Additional attribute (not in the TMF API) - extended through @referredType - valued with model-customisation-id</xs:documentation>
298             </xs:annotation>
299          </xs:element>
300       </xs:sequence>
301    </xs:complexType>
302    <xs:element name="RelatedPartyRef" type="RelatedPartyRef">
303       <xs:annotation>
304          <xs:documentation source="public">RelatedParty reference. A related party defines party or party role linked to a specific entity.</xs:documentation>
305       </xs:annotation>
306    </xs:element>
307    <xs:complexType name="RelatedPartyRef">
308       <xs:annotation>
309          <xs:documentation source="public">RelatedParty reference. A related party defines party or party role linked to a specific entity.</xs:documentation>
310       </xs:annotation>
311       <xs:sequence minOccurs="1" maxOccurs="1">
312          <xs:element name="id" type="xs:string" minOccurs="0">
313             <xs:annotation>
314                <xs:documentation source="public">Unique identifier of a related party</xs:documentation>
315             </xs:annotation>
316          </xs:element>
317          <xs:element name="href" type="xs:string" minOccurs="0">
318             <xs:annotation>
319                <xs:documentation source="public">Reference of a related party.
320 Not filled in Beijing release.</xs:documentation>
321             </xs:annotation>
322          </xs:element>
323          <xs:element name="role" type="xs:string" minOccurs="0">
324             <xs:annotation>
325                <xs:documentation source="public">Role played by the related party.
326 Filled with 'ONAPcustomer'</xs:documentation>
327             </xs:annotation>
328          </xs:element>
329          <xs:element name="@referredType" type="xs:string" minOccurs="0">
330             <xs:annotation>
331                <xs:documentation source="public">Not managed in the Beijing release.</xs:documentation>
332             </xs:annotation>
333          </xs:element>
334       </xs:sequence>
335    </xs:complexType>
336    <xs:element name="Value" type="Value">
337       <xs:annotation>
338          <xs:documentation source="public">Structure used to describe characteristic value.
339 Not managed in Beijing release.</xs:documentation>
340       </xs:annotation>
341    </xs:element>
342    <xs:complexType name="Value">
343       <xs:annotation>
344          <xs:documentation source="public">Structure used to describe characteristic value.
345 Not managed in Beijing release.</xs:documentation>
346       </xs:annotation>
347       <xs:sequence minOccurs="1" maxOccurs="1">
348          <xs:element name="@type" type="xs:string" minOccurs="0">
349             <xs:annotation>
350                <xs:documentation source="public">Not managed in Beijing release.</xs:documentation>
351             </xs:annotation>
352          </xs:element>
353          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
354             <xs:annotation>
355                <xs:documentation source="public">Not managed in Beijing release.</xs:documentation>
356             </xs:annotation>
357          </xs:element>
358          <xs:element name="serviceCharacteristicValue" type="xs:string" minOccurs="0">
359             <xs:annotation>
360                <xs:documentation source="public">Not managed in Beijing release.</xs:documentation>
361             </xs:annotation>
362          </xs:element>
363       </xs:sequence>
364    </xs:complexType>
365    <xs:element name="ListRelatedPartyRef" type="ListRelatedPartyRef">
366       <xs:annotation>
367          <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation>
368       </xs:annotation>
369    </xs:element>
370    <xs:complexType name="ListRelatedPartyRef">
371       <xs:annotation>
372          <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation>
373       </xs:annotation>
374       <xs:sequence minOccurs="1" maxOccurs="1">
375          <xs:element name="id" type="xs:string" minOccurs="0">
376             <xs:annotation>
377                <xs:documentation source="public">Unique identifier of a related party</xs:documentation>
378             </xs:annotation>
379          </xs:element>
380          <xs:element name="role" type="xs:string" minOccurs="0">
381             <xs:annotation>
382                <xs:documentation source="public">Role played by the related party - only role “ONAPcustomer” is managed in Beijing release.</xs:documentation>
383             </xs:annotation>
384          </xs:element>
385       </xs:sequence>
386    </xs:complexType>
387    <xs:element name="ListServiceSpecificationRef" type="ListServiceSpecificationRef">
388       <xs:annotation>
389          <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation>
390       </xs:annotation>
391    </xs:element>
392    <xs:complexType name="ListServiceSpecificationRef">
393       <xs:annotation>
394          <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation>
395       </xs:annotation>
396       <xs:sequence minOccurs="1" maxOccurs="1">
397          <xs:element name="id" type="xs:string" minOccurs="0">
398             <xs:annotation>
399                <xs:documentation source="public">Unique identifier of the service specification</xs:documentation>
400             </xs:annotation>
401          </xs:element>
402          <xs:element name="name" type="xs:string" minOccurs="0">
403             <xs:annotation>
404                <xs:documentation source="public">Name of the required service specification</xs:documentation>
405             </xs:annotation>
406          </xs:element>
407       </xs:sequence>
408    </xs:complexType>
409    <xs:element name="ListService" type="ListService">
410       <xs:annotation>
411          <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation>
412       </xs:annotation>
413    </xs:element>
414    <xs:complexType name="ListService">
415       <xs:annotation>
416          <xs:documentation source="public">This class is used to structure list of service(s) retrieved</xs:documentation>
417       </xs:annotation>
418       <xs:sequence minOccurs="1" maxOccurs="1">
419          <xs:element name="id" type="xs:string" minOccurs="0">
420             <xs:annotation>
421                <xs:documentation source="public">Unique identifier of the service</xs:documentation>
422             </xs:annotation>
423          </xs:element>
424          <xs:element name="name" type="xs:string" minOccurs="0">
425             <xs:annotation>
426                <xs:documentation source="public">Name of the service</xs:documentation>
427             </xs:annotation>
428          </xs:element>
429          <xs:element name="serviceSpecification"
430                      type="ListServiceSpecificationRef"
431                      minOccurs="0">
432             <xs:annotation>
433                <xs:documentation source="public">A service specification reference  required to realize a ProductSpecification</xs:documentation>
434             </xs:annotation>
435          </xs:element>
436          <xs:element name="relatedParty" type="ListRelatedPartyRef" minOccurs="0">
437             <xs:annotation>
438                <xs:documentation source="public">Related Party to the service (only ONAP customer is managed)</xs:documentation>
439             </xs:annotation>
440          </xs:element>
441       </xs:sequence>
442    </xs:complexType>
443    <xs:element name="ServiceInventoryEvent" type="ServiceInventoryEvent">
444       <xs:annotation>
445          <xs:documentation source="public">Structure for a service inventory event notification</xs:documentation>
446       </xs:annotation>
447    </xs:element>
448    <xs:complexType name="ServiceInventoryEvent">
449       <xs:annotation>
450          <xs:documentation source="public">Structure for a service inventory event notification</xs:documentation>
451       </xs:annotation>
452       <xs:sequence minOccurs="1" maxOccurs="1">
453          <xs:element name="id" type="xs:string" minOccurs="1">
454             <xs:annotation>
455                <xs:documentation source="public">The Service Instance Id</xs:documentation>
456             </xs:annotation>
457          </xs:element>
458          <xs:element name="href" type="xs:string" minOccurs="1">
459             <xs:annotation>
460                <xs:documentation source="public">A reference to the service inventory</xs:documentation>
461             </xs:annotation>
462          </xs:element>
463          <xs:element name="name" type="xs:string" minOccurs="1">
464             <xs:annotation>
465                <xs:documentation source="public">The name of the Service Instance</xs:documentation>
466             </xs:annotation>
467          </xs:element>
468          <xs:element name="type" type="xs:string" minOccurs="1">
469             <xs:annotation>
470                <xs:documentation source="public">The type of event, service-instance</xs:documentation>
471             </xs:annotation>
472          </xs:element>
473          <xs:element name="state" type="xs:string" minOccurs="1">
474             <xs:annotation>
475                <xs:documentation source="public">The state of the service instance</xs:documentation>
476             </xs:annotation>
477          </xs:element>
478          <xs:element name="relatedParty" type="RelatedPartyRef" minOccurs="1"/>
479       </xs:sequence>
480    </xs:complexType>
481    <xs:element name="Notification" type="Notification">
482       <xs:annotation>
483          <xs:documentation source="public">Notification structure for a service notification</xs:documentation>
484       </xs:annotation>
485    </xs:element>
486    <xs:complexType name="Notification">
487       <xs:annotation>
488          <xs:documentation source="public">Notification structure for a service notification</xs:documentation>
489       </xs:annotation>
490       <xs:sequence minOccurs="1" maxOccurs="1">
491          <xs:element name="eventId" type="xs:string" minOccurs="1"/>
492          <xs:element name="eventDate" type="xs:dateTime" minOccurs="1"/>
493          <xs:element name="eventType" type="eventType" minOccurs="1"/>
494          <xs:element name="event" type="ServiceInventoryEvent" minOccurs="1"/>
495       </xs:sequence>
496    </xs:complexType>
497 </xs:schema>