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