Improve license scan result
[externalapi/nbi.git] / docs / offeredapis / api_serviceOrder / 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/serviceOrder/v4/model"
21            xmlns:xs="http://www.w3.org/2001/XMLSchema"
22            attributeFormDefault="unqualified"
23            elementFormDefault="qualified"
24            targetNamespace="http://orange.com/ONAPNBI/api/serviceOrder/v4/model">
25    <xs:annotation id="signature">
26       <xs:appinfo>API Designer</xs:appinfo>
27       <xs:documentation>Model: serviceOrder
28                     Version: 4.0.1
29                     Owner: ONAPNBI
30                     Generated on: 2019-04-18T12:39:38.945Z
31                     Generated by: Orange API Designer v2, model-v1</xs:documentation>
32    </xs:annotation>
33    <xs:simpleType name="ActionType">
34       <xs:restriction base="xs:string">
35          <xs:enumeration value="add"/>
36          <xs:enumeration value="modify"/>
37          <xs:enumeration value="delete"/>
38          <xs:enumeration value="noChange"/>
39       </xs:restriction>
40    </xs:simpleType>
41    <xs:simpleType name="StateType">
42       <xs:restriction base="xs:string">
43          <xs:enumeration value="acknowledged"/>
44          <xs:enumeration value="rejected"/>
45          <xs:enumeration value="pending"/>
46          <xs:enumeration value="held"/>
47          <xs:enumeration value="inProgress"/>
48          <xs:enumeration value="cancelled"/>
49          <xs:enumeration value="completed"/>
50          <xs:enumeration value="failed"/>
51          <xs:enumeration value="partial"/>
52       </xs:restriction>
53    </xs:simpleType>
54    <xs:simpleType name="RelationshipType">
55       <xs:restriction base="xs:string">
56          <xs:enumeration value="reliesOn"/>
57       </xs:restriction>
58    </xs:simpleType>
59    <xs:simpleType name="EventType">
60       <xs:restriction base="xs:string">
61          <xs:enumeration value="ServiceOrderCreationNotification"/>
62          <xs:enumeration value="ServiceOrderStateChangeNotification"/>
63          <xs:enumeration value="ServiceOrderItemStateChangeNotification"/>
64       </xs:restriction>
65    </xs:simpleType>
66    <xs:simpleType name="SeverityMessage">
67       <xs:restriction base="xs:string">
68          <xs:enumeration value="information"/>
69          <xs:enumeration value="error"/>
70       </xs:restriction>
71    </xs:simpleType>
72    <xs:element name="Error" type="Error">
73       <xs:annotation>
74          <xs:documentation source="public"/>
75       </xs:annotation>
76    </xs:element>
77    <xs:complexType name="Error">
78       <xs:annotation>
79          <xs:documentation source="public"/>
80       </xs:annotation>
81       <xs:sequence minOccurs="1" maxOccurs="1">
82          <xs:element name="code" type="xs:int" minOccurs="1">
83             <xs:annotation>
84                <xs:documentation source="public">Application related code (as defined in the API or from a common list)</xs:documentation>
85             </xs:annotation>
86          </xs:element>
87          <xs:element name="reason" type="xs:string" minOccurs="1">
88             <xs:annotation>
89                <xs:documentation source="public">Text that explains the reason for error. This can be shown to a client user.</xs:documentation>
90             </xs:annotation>
91          </xs:element>
92          <xs:element name="message" type="xs:string" minOccurs="0">
93             <xs:annotation>
94                <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>
95             </xs:annotation>
96          </xs:element>
97          <xs:element name="status" type="xs:string" minOccurs="0">
98             <xs:annotation>
99                <xs:documentation source="public">http error code extension like 400-2</xs:documentation>
100             </xs:annotation>
101          </xs:element>
102          <xs:element name="referenceError" type="xs:string" minOccurs="0">
103             <xs:annotation>
104                <xs:documentation source="public">url pointing to documentation describing the error</xs:documentation>
105             </xs:annotation>
106          </xs:element>
107       </xs:sequence>
108    </xs:complexType>
109    <xs:element name="ServiceRelationship" type="ServiceRelationship">
110       <xs:annotation>
111          <xs:documentation source="public">Linked Services to the one instantiate
112 nbi component used this relationship to sort request to ONAP.</xs:documentation>
113       </xs:annotation>
114    </xs:element>
115    <xs:complexType name="ServiceRelationship">
116       <xs:annotation>
117          <xs:documentation source="public">Linked Services to the one instantiate
118 nbi component used this relationship to sort request to ONAP.</xs:documentation>
119       </xs:annotation>
120       <xs:sequence minOccurs="1" maxOccurs="1">
121          <xs:element name="type" type="RelationshipType" minOccurs="1">
122             <xs:annotation>
123                <xs:documentation source="public">Relationship type. It can be : “reliesOn” if the Service needs another already owned Service to rely on (e.g. an option on an already owned mobile access Service) or “targets” or “isTargeted” (depending on the way of expressing the link) for any other kind of links that may be useful.
124 Only reliesOn is managed in Beijing release.</xs:documentation>
125             </xs:annotation>
126          </xs:element>
127          <xs:element name="service" type="Service" minOccurs="1">
128             <xs:annotation>
129                <xs:documentation source="public">Service reference - id of the service targeted.
130 not managed in Beijing release.</xs:documentation>
131             </xs:annotation>
132          </xs:element>
133       </xs:sequence>
134    </xs:complexType>
135    <xs:element name="ServiceRef" type="ServiceRef">
136       <xs:annotation>
137          <xs:documentation source="public">Service references</xs:documentation>
138       </xs:annotation>
139    </xs:element>
140    <xs:complexType name="ServiceRef">
141       <xs:annotation>
142          <xs:documentation source="public">Service references</xs:documentation>
143       </xs:annotation>
144       <xs:sequence minOccurs="1" maxOccurs="1">
145          <xs:element name="id" type="xs:string" minOccurs="1">
146             <xs:annotation>
147                <xs:documentation source="public">Unique identifier of the service</xs:documentation>
148             </xs:annotation>
149          </xs:element>
150          <xs:element name="href" type="xs:string" minOccurs="0">
151             <xs:annotation>
152                <xs:documentation source="public">Reference of the service</xs:documentation>
153             </xs:annotation>
154          </xs:element>
155       </xs:sequence>
156    </xs:complexType>
157    <xs:element name="ServiceCharacteristic" type="ServiceCharacteristic">
158       <xs:annotation>
159          <xs:documentation source="public">ServiceCharacteristic</xs:documentation>
160       </xs:annotation>
161    </xs:element>
162    <xs:complexType name="ServiceCharacteristic">
163       <xs:annotation>
164          <xs:documentation source="public">ServiceCharacteristic</xs:documentation>
165       </xs:annotation>
166       <xs:sequence minOccurs="1" maxOccurs="1">
167          <xs:element name="name" type="xs:string" minOccurs="1">
168             <xs:annotation>
169                <xs:documentation source="public">Name of characteristic</xs:documentation>
170             </xs:annotation>
171          </xs:element>
172          <xs:element name="valueType" type="xs:string" minOccurs="0"/>
173          <xs:element name="value" type="Value" minOccurs="0">
174             <xs:annotation>
175                <xs:documentation source="public"/>
176             </xs:annotation>
177          </xs:element>
178       </xs:sequence>
179    </xs:complexType>
180    <xs:element name="RelatedParty" type="RelatedParty">
181       <xs:annotation>
182          <xs:documentation source="public">A related party defines party which are involved in this order and the role they are playing.
183 for Beijing release:
184 With the current version of APIs used from SO and AAI we need to manage a ‘customer’. This customer concept is confusing with Customer BSS concept. We took the following rules to manage the ‘customer’ information:
185 o       It could be provided through a serviceOrder in the service Order a relatedParty with role ‘ONAPcustomer’ should be provided in the serviceOrder header (we will not consider in this release the party at item level); External API component will check if this customer exists and create it in AAI if not.
186 o       If no relatedParty are provided the service will be affected to ‘generic’ customer (dummy customer) – we assume this ‘generic’ customer always exists.</xs:documentation>
187       </xs:annotation>
188    </xs:element>
189    <xs:complexType name="RelatedParty">
190       <xs:annotation>
191          <xs:documentation source="public">A related party defines party which are involved in this order and the role they are playing.
192 for Beijing release:
193 With the current version of APIs used from SO and AAI we need to manage a ‘customer’. This customer concept is confusing with Customer BSS concept. We took the following rules to manage the ‘customer’ information:
194 o       It could be provided through a serviceOrder in the service Order a relatedParty with role ‘ONAPcustomer’ should be provided in the serviceOrder header (we will not consider in this release the party at item level); External API component will check if this customer exists and create it in AAI if not.
195 o       If no relatedParty are provided the service will be affected to ‘generic’ customer (dummy customer) – we assume this ‘generic’ customer always exists.</xs:documentation>
196       </xs:annotation>
197       <xs:sequence minOccurs="1" maxOccurs="1">
198          <xs:element name="id" type="xs:string" minOccurs="1">
199             <xs:annotation>
200                <xs:documentation source="public">Unique identifier of a related party</xs:documentation>
201             </xs:annotation>
202          </xs:element>
203          <xs:element name="href" type="xs:string" minOccurs="0">
204             <xs:annotation>
205                <xs:documentation source="public">An hyperlink to the party - not used in Beijnig release</xs:documentation>
206             </xs:annotation>
207          </xs:element>
208          <xs:element name="role" type="xs:string" minOccurs="1">
209             <xs:annotation>
210                <xs:documentation source="public">The role of the related party (e.g. Owner, requester, fullfiller etc).
211 ONLY 'ONAPcustomer' is considered</xs:documentation>
212             </xs:annotation>
213          </xs:element>
214          <xs:element name="name" type="xs:string" minOccurs="0">
215             <xs:annotation>
216                <xs:documentation source="public">Name of the related party</xs:documentation>
217             </xs:annotation>
218          </xs:element>
219          <xs:element name="@referredType" type="xs:string" minOccurs="0">
220             <xs:annotation>
221                <xs:documentation source="public"/>
222             </xs:annotation>
223          </xs:element>
224       </xs:sequence>
225    </xs:complexType>
226    <xs:element name="ServiceSpecificationRef" type="ServiceSpecificationRef">
227       <xs:annotation>
228          <xs:documentation source="public">The service specification (these attributes are fetched from the catalogue).</xs:documentation>
229       </xs:annotation>
230    </xs:element>
231    <xs:complexType name="ServiceSpecificationRef">
232       <xs:annotation>
233          <xs:documentation source="public">The service specification (these attributes are fetched from the catalogue).</xs:documentation>
234       </xs:annotation>
235       <xs:sequence minOccurs="1" maxOccurs="1">
236          <xs:element name="id" type="xs:string" minOccurs="1">
237             <xs:annotation>
238                <xs:documentation source="public">Unique identifier of the service specification
239 This information will be used to retrieve SDC information + mapped to SO ModelNameVersionIdin the request.</xs:documentation>
240             </xs:annotation>
241          </xs:element>
242          <xs:element name="href" type="xs:string" minOccurs="0">
243             <xs:annotation>
244                <xs:documentation source="public">Reference of the service specification
245 Not used in Beijing release.</xs:documentation>
246             </xs:annotation>
247          </xs:element>
248          <xs:element name="name" type="xs:string" minOccurs="0">
249             <xs:annotation>
250                <xs:documentation source="public">Name of the service specification
251 Not used in Beijing release</xs:documentation>
252             </xs:annotation>
253          </xs:element>
254          <xs:element name="version" type="xs:string" minOccurs="0">
255             <xs:annotation>
256                <xs:documentation source="public">Version of the service Specification
257 Not used in Beijing release</xs:documentation>
258             </xs:annotation>
259          </xs:element>
260          <xs:element name="targetServiceSchema" type="TargetServiceSchema" minOccurs="0">
261             <xs:annotation>
262                <xs:documentation source="public">This structure could be used to describe the service</xs:documentation>
263             </xs:annotation>
264          </xs:element>
265          <xs:element name="@type" type="xs:string" minOccurs="0">
266             <xs:annotation>
267                <xs:documentation source="public">Not used in Beijing release</xs:documentation>
268             </xs:annotation>
269          </xs:element>
270          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
271             <xs:annotation>
272                <xs:documentation source="public">Not used in Beijing release</xs:documentation>
273             </xs:annotation>
274          </xs:element>
275          <xs:element name="@baseType" type="xs:string" minOccurs="0">
276             <xs:annotation>
277                <xs:documentation source="public">Not used in Beijing release</xs:documentation>
278             </xs:annotation>
279          </xs:element>
280       </xs:sequence>
281    </xs:complexType>
282    <xs:element name="Service" type="Service">
283       <xs:annotation>
284          <xs:documentation source="public">Service (to be added, modified, deleted) description</xs:documentation>
285       </xs:annotation>
286    </xs:element>
287    <xs:complexType name="Service">
288       <xs:annotation>
289          <xs:documentation source="public">Service (to be added, modified, deleted) description</xs:documentation>
290       </xs:annotation>
291       <xs:sequence minOccurs="1" maxOccurs="1">
292          <xs:element name="id" type="xs:string" minOccurs="1">
293             <xs:annotation>
294                <xs:documentation source="public">Identifier of a service instance.
295 It must be valued if orderItem action is 'delete' and corresponds to a AAI service.id</xs:documentation>
296             </xs:annotation>
297          </xs:element>
298          <xs:element name="href" type="xs:string" minOccurs="0">
299             <xs:annotation>
300                <xs:documentation source="public">Reference to the Service (useful for delete or modify command).
301 Not managed in Beijing release.</xs:documentation>
302             </xs:annotation>
303          </xs:element>
304          <xs:element name="name" type="xs:string" minOccurs="0">
305             <xs:annotation>
306                <xs:documentation source="public">Name of the service - When orderItem action is 'add' this name will be used in ONAP/SO request as InstaceName.</xs:documentation>
307             </xs:annotation>
308          </xs:element>
309          <xs:element name="serviceState" type="xs:string" minOccurs="0">
310             <xs:annotation>
311                <xs:documentation source="public">The lifecycle state of the service requested;
312 Not managed in Beijing release.</xs:documentation>
313             </xs:annotation>
314          </xs:element>
315          <xs:element name="@type" type="xs:string" minOccurs="0">
316             <xs:annotation>
317                <xs:documentation source="public">To define the service type
318 Not managed in Beijing Release</xs:documentation>
319             </xs:annotation>
320          </xs:element>
321          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
322             <xs:annotation>
323                <xs:documentation source="public">The URL to get the resource schema.
324 Not managed in Beijing Release</xs:documentation>
325             </xs:annotation>
326          </xs:element>
327          <xs:element name="serviceCharacteristic"
328                      type="ServiceCharacteristic"
329                      minOccurs="0"
330                      maxOccurs="unbounded">
331             <xs:annotation>
332                <xs:documentation source="public">A list of service characteristics .A name/value pair list used to store instance specific values of attributes. The behavior is equivalent to a MAP data structure where only one entry for any given value of "name" can exist</xs:documentation>
333             </xs:annotation>
334          </xs:element>
335          <xs:element name="serviceRelationship"
336                      type="ServiceRelationship"
337                      minOccurs="0"
338                      maxOccurs="unbounded">
339             <xs:annotation>
340                <xs:documentation source="public">A list or service relationships (ServiceRelationship[*]). Linked Services to the one instantiate, it can be : “reliesOn” if the Service needs another already owned Service to rely on (e.g. an option on an already owned mobile access Service) or “targets” or “isTargeted” (depending on the way of expressing the link) for any other kind of links that may be useful.
341 Only reliesOn are considered in Beijnig release.</xs:documentation>
342             </xs:annotation>
343          </xs:element>
344          <xs:element name="relatedParty"
345                      type="RelatedParty"
346                      minOccurs="0"
347                      maxOccurs="unbounded">
348             <xs:annotation>
349                <xs:documentation source="public">A list of related party parties linked at the Service level (it may be a User for example).
350 Not managed in Beijing release</xs:documentation>
351             </xs:annotation>
352          </xs:element>
353          <xs:element name="serviceSpecification"
354                      type="ServiceSpecificationRef"
355                      minOccurs="0">
356             <xs:annotation>
357                <xs:documentation source="public">A link to the service specification (catalog information)
358 This is required if orderItem action is add.</xs:documentation>
359             </xs:annotation>
360          </xs:element>
361       </xs:sequence>
362    </xs:complexType>
363    <xs:element name="OrderItemRelationship" type="OrderItemRelationship">
364       <xs:annotation>
365          <xs:documentation source="public">Linked order item to the one containing this attribute.
366 nbi component used this relationship to sort request to ONAP.</xs:documentation>
367       </xs:annotation>
368    </xs:element>
369    <xs:complexType name="OrderItemRelationship">
370       <xs:annotation>
371          <xs:documentation source="public">Linked order item to the one containing this attribute.
372 nbi component used this relationship to sort request to ONAP.</xs:documentation>
373       </xs:annotation>
374       <xs:sequence minOccurs="1" maxOccurs="1">
375          <xs:element name="type" type="RelationshipType" minOccurs="1">
376             <xs:annotation>
377                <xs:documentation source="public">The type of related order item, can be : dependancy if the order item needs to be “not started” until another order item is complete</xs:documentation>
378             </xs:annotation>
379          </xs:element>
380          <xs:element name="id" type="xs:string" minOccurs="1">
381             <xs:annotation>
382                <xs:documentation source="public">Unique identifier of an order item</xs:documentation>
383             </xs:annotation>
384          </xs:element>
385       </xs:sequence>
386    </xs:complexType>
387    <xs:element name="ServiceOrderItem" type="ServiceOrderItem">
388       <xs:annotation>
389          <xs:documentation source="public">An identified part of the order. A service order is decomposed into one or more order items.</xs:documentation>
390       </xs:annotation>
391    </xs:element>
392    <xs:complexType name="ServiceOrderItem">
393       <xs:annotation>
394          <xs:documentation source="public">An identified part of the order. A service order is decomposed into one or more order items.</xs:documentation>
395       </xs:annotation>
396       <xs:sequence minOccurs="1" maxOccurs="1">
397          <xs:element name="id" type="xs:string" minOccurs="1">
398             <xs:annotation>
399                <xs:documentation source="public">Identifier of the line item (generally it is a sequence number 01, 02, 03, …)</xs:documentation>
400             </xs:annotation>
401          </xs:element>
402          <xs:element name="action" type="ActionType" minOccurs="0">
403             <xs:annotation>
404                <xs:documentation source="public">The action to be carried out on the Service. Can be add, modify, delete, noChange</xs:documentation>
405             </xs:annotation>
406          </xs:element>
407          <xs:element name="state" type="StateType" minOccurs="0">
408             <xs:annotation>
409                <xs:documentation source="public">State of the order item (described in the state machine diagram)
410 Only Acknowledged, Rejected, InProgress, Completed, Failed will be managed for service order item state</xs:documentation>
411             </xs:annotation>
412          </xs:element>
413          <xs:element name="percentProgress" type="xs:string" minOccurs="0">
414             <xs:annotation>
415                <xs:documentation source="public">Progress of the delivery in percentage.</xs:documentation>
416             </xs:annotation>
417          </xs:element>
418          <xs:element name="@type" type="xs:string" minOccurs="0">
419             <xs:annotation>
420                <xs:documentation source="public">Used to extend the order item.
421 not used in Beijing relase</xs:documentation>
422             </xs:annotation>
423          </xs:element>
424          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
425             <xs:annotation>
426                <xs:documentation source="public">not used in Beijing relase</xs:documentation>
427             </xs:annotation>
428          </xs:element>
429          <xs:element name="@baseType" type="xs:string" minOccurs="0">
430             <xs:annotation>
431                <xs:documentation source="public">not used in Beijing relase</xs:documentation>
432             </xs:annotation>
433          </xs:element>
434          <xs:element name="orderItemRelationship"
435                      type="OrderItemRelationship"
436                      minOccurs="0"
437                      maxOccurs="unbounded">
438             <xs:annotation>
439                <xs:documentation source="public">Linked order item to the one containing this attribute</xs:documentation>
440             </xs:annotation>
441          </xs:element>
442          <xs:element name="service" type="Service" minOccurs="1">
443             <xs:annotation>
444                <xs:documentation source="public">The Service to be acted on by the order item</xs:documentation>
445             </xs:annotation>
446          </xs:element>
447          <xs:element name="orderItemMessage"
448                      type="OrderMessage"
449                      minOccurs="0"
450                      maxOccurs="unbounded">
451             <xs:annotation>
452                <xs:documentation source="public"/>
453             </xs:annotation>
454          </xs:element>
455       </xs:sequence>
456    </xs:complexType>
457    <xs:element name="ServiceOrder" type="ServiceOrder">
458       <xs:annotation>
459          <xs:documentation source="public">A Service Order is a type of order which can be used to place an order between a customer and a service provider or between a service provider and a partner and vice versa</xs:documentation>
460       </xs:annotation>
461    </xs:element>
462    <xs:complexType name="ServiceOrder">
463       <xs:annotation>
464          <xs:documentation source="public">A Service Order is a type of order which can be used to place an order between a customer and a service provider or between a service provider and a partner and vice versa</xs:documentation>
465       </xs:annotation>
466       <xs:sequence minOccurs="1" maxOccurs="1">
467          <xs:element name="id" type="xs:string" minOccurs="1">
468             <xs:annotation>
469                <xs:documentation source="public">ID created on repository side</xs:documentation>
470             </xs:annotation>
471          </xs:element>
472          <xs:element name="href" type="xs:string" minOccurs="0">
473             <xs:annotation>
474                <xs:documentation source="public">Hyperlink to access the order</xs:documentation>
475             </xs:annotation>
476          </xs:element>
477          <xs:element name="externalId" type="xs:string" minOccurs="0">
478             <xs:annotation>
479                <xs:documentation source="public">ID given by the consumer and only understandable by him (to facilitate his searches)</xs:documentation>
480             </xs:annotation>
481          </xs:element>
482          <xs:element name="priority" type="xs:string" minOccurs="0">
483             <xs:annotation>
484                <xs:documentation source="public">A way that can be used by consumers to prioritize orders in Service Order Management system (from 0 to 4 : 0 is the highest priority, and 4 the lowest)</xs:documentation>
485             </xs:annotation>
486          </xs:element>
487          <xs:element name="description" type="xs:string" minOccurs="0">
488             <xs:annotation>
489                <xs:documentation source="public">A free-text description of the service order</xs:documentation>
490             </xs:annotation>
491          </xs:element>
492          <xs:element name="category" type="xs:string" minOccurs="0">
493             <xs:annotation>
494                <xs:documentation source="public">Used to categorize the order that can be useful for the OM system (e.g. “broadband”, “TVOption”, ...)</xs:documentation>
495             </xs:annotation>
496          </xs:element>
497          <xs:element name="state" type="StateType" minOccurs="0">
498             <xs:annotation>
499                <xs:documentation source="public">State of the order : described in the state-machine diagram
500 Only Acknowledged, Rejected, InProgress, Completed, Failed, Partial  will be managed for service order state (Held, Pending and Cancelled are not managed)</xs:documentation>
501             </xs:annotation>
502          </xs:element>
503          <xs:element name="orderDate" type="xs:dateTime" minOccurs="0">
504             <xs:annotation>
505                <xs:documentation source="public"/>
506             </xs:annotation>
507          </xs:element>
508          <xs:element name="completionDateTime" type="xs:dateTime" minOccurs="0">
509             <xs:annotation>
510                <xs:documentation source="public">Date when the order was completed</xs:documentation>
511             </xs:annotation>
512          </xs:element>
513          <xs:element name="requestedStartDate" type="xs:dateTime" minOccurs="0">
514             <xs:annotation>
515                <xs:documentation source="public">Order start date wished by the requestor</xs:documentation>
516             </xs:annotation>
517          </xs:element>
518          <xs:element name="requestedCompletionDate" type="xs:dateTime" minOccurs="0">
519             <xs:annotation>
520                <xs:documentation source="public">Requested delivery date from the requestor perspective</xs:documentation>
521             </xs:annotation>
522          </xs:element>
523          <xs:element name="expectedCompletionDate" type="xs:dateTime" minOccurs="0">
524             <xs:annotation>
525                <xs:documentation source="public"/>
526             </xs:annotation>
527          </xs:element>
528          <xs:element name="startDate" type="xs:dateTime" minOccurs="0">
529             <xs:annotation>
530                <xs:documentation source="public">Date when the order was started for processing</xs:documentation>
531             </xs:annotation>
532          </xs:element>
533          <xs:element name="@baseType" type="xs:string" minOccurs="0">
534             <xs:annotation>
535                <xs:documentation source="public"/>
536             </xs:annotation>
537          </xs:element>
538          <xs:element name="@type" type="xs:string" minOccurs="0">
539             <xs:annotation>
540                <xs:documentation source="public"/>
541             </xs:annotation>
542          </xs:element>
543          <xs:element name="@schemaLocation" type="xs:string" minOccurs="0">
544             <xs:annotation>
545                <xs:documentation source="public"/>
546             </xs:annotation>
547          </xs:element>
548          <xs:element name="relatedParty"
549                      type="RelatedParty"
550                      minOccurs="0"
551                      maxOccurs="unbounded">
552             <xs:annotation>
553                <xs:documentation source="public">A list of related parties which are involved in this order and the role they are playing.</xs:documentation>
554             </xs:annotation>
555          </xs:element>
556          <xs:element name="orderRelationship"
557                      type="OrderRelationship"
558                      minOccurs="0"
559                      maxOccurs="unbounded">
560             <xs:annotation>
561                <xs:documentation source="public">A list of related order references .Linked order to the one containing this attribute</xs:documentation>
562             </xs:annotation>
563          </xs:element>
564          <xs:element name="orderItem"
565                      type="ServiceOrderItem"
566                      minOccurs="0"
567                      maxOccurs="unbounded">
568             <xs:annotation>
569                <xs:documentation source="public">A list of order items that have to be processed.</xs:documentation>
570             </xs:annotation>
571          </xs:element>
572          <xs:element name="orderMessage"
573                      type="OrderMessage"
574                      minOccurs="0"
575                      maxOccurs="unbounded"/>
576       </xs:sequence>
577    </xs:complexType>
578    <xs:element name="OrderRelationship" type="OrderRelationship">
579       <xs:annotation>
580          <xs:documentation source="public">Linked order to the one containing this attribute.
581 This relationship is not used to sort ONAP request.</xs:documentation>
582       </xs:annotation>
583    </xs:element>
584    <xs:complexType name="OrderRelationship">
585       <xs:annotation>
586          <xs:documentation source="public">Linked order to the one containing this attribute.
587 This relationship is not used to sort ONAP request.</xs:documentation>
588       </xs:annotation>
589       <xs:sequence minOccurs="1" maxOccurs="1">
590          <xs:element name="type" type="xs:string" minOccurs="0">
591             <xs:annotation>
592                <xs:documentation source="public">The type of related order, can be : “dependency” if the order needs to be “not started” until another order item is complete (a service order in this case) or “cross-ref” to keep track of the source order (a productOrder)</xs:documentation>
593             </xs:annotation>
594          </xs:element>
595          <xs:element name="id" type="xs:string" minOccurs="1">
596             <xs:annotation>
597                <xs:documentation source="public">The id of the related order</xs:documentation>
598             </xs:annotation>
599          </xs:element>
600          <xs:element name="href" type="xs:string" minOccurs="0">
601             <xs:annotation>
602                <xs:documentation source="public">A hyperlink to the related order</xs:documentation>
603             </xs:annotation>
604          </xs:element>
605          <xs:element name="@referredType" type="xs:string" minOccurs="0">
606             <xs:annotation>
607                <xs:documentation source="public">Type of the referred order.</xs:documentation>
608             </xs:annotation>
609          </xs:element>
610       </xs:sequence>
611    </xs:complexType>
612    <xs:element name="TargetServiceSchema" type="TargetServiceSchema">
613       <xs:annotation>
614          <xs:documentation source="public">Target to the schema describing the service spec resource</xs:documentation>
615       </xs:annotation>
616    </xs:element>
617    <xs:complexType name="TargetServiceSchema">
618       <xs:annotation>
619          <xs:documentation source="public">Target to the schema describing the service spec resource</xs:documentation>
620       </xs:annotation>
621       <xs:sequence minOccurs="1" maxOccurs="1">
622          <xs:element name="@type" type="xs:string" minOccurs="1">
623             <xs:annotation>
624                <xs:documentation source="public">Indicates the (class) type of resource.</xs:documentation>
625             </xs:annotation>
626          </xs:element>
627          <xs:element name="@schemaLocation" type="xs:string" minOccurs="1">
628             <xs:annotation>
629                <xs:documentation source="public">This field provided a link to the schema describing this REST resource.</xs:documentation>
630             </xs:annotation>
631          </xs:element>
632       </xs:sequence>
633    </xs:complexType>
634    <xs:element name="Value" type="Value">
635       <xs:annotation>
636          <xs:documentation source="public">Value is a descriptive structure for service characteristic</xs:documentation>
637       </xs:annotation>
638    </xs:element>
639    <xs:complexType name="Value">
640       <xs:annotation>
641          <xs:documentation source="public">Value is a descriptive structure for service characteristic</xs:documentation>
642       </xs:annotation>
643       <xs:sequence minOccurs="1" maxOccurs="1">
644          <xs:element name="serviceCharacteristicValue" type="xs:string" minOccurs="0">
645             <xs:annotation>
646                <xs:documentation source="public">Value of the characteristic.</xs:documentation>
647             </xs:annotation>
648          </xs:element>
649       </xs:sequence>
650    </xs:complexType>
651    <xs:element name="CreateServiceOrderItem" type="CreateServiceOrderItem">
652       <xs:annotation>
653          <xs:documentation source="public">This structure is used in the operation POST for a serviceOrder request to describe an item.
654 Attribute description is not accurate and should be find in the serviceOrderItem class.</xs:documentation>
655       </xs:annotation>
656    </xs:element>
657    <xs:complexType name="CreateServiceOrderItem">
658       <xs:annotation>
659          <xs:documentation source="public">This structure is used in the operation POST for a serviceOrder request to describe an item.
660 Attribute description is not accurate and should be find in the serviceOrderItem class.</xs:documentation>
661       </xs:annotation>
662       <xs:sequence minOccurs="1" maxOccurs="1">
663          <xs:element name="id" type="xs:string" minOccurs="1">
664             <xs:annotation>
665                <xs:documentation source="public">Identifier of the line item (generally it is a sequence number 01, 02, 03, …)</xs:documentation>
666             </xs:annotation>
667          </xs:element>
668          <xs:element name="action" type="ActionType" minOccurs="0">
669             <xs:annotation>
670                <xs:documentation source="public">The action to be carried out on the Service. Can be add, modify, delete, noChange</xs:documentation>
671             </xs:annotation>
672          </xs:element>
673          <xs:element name="orderItemRelationship"
674                      type="OrderItemRelationship"
675                      minOccurs="0"
676                      maxOccurs="unbounded">
677             <xs:annotation>
678                <xs:documentation source="public">Linked order item to the one containing this attribute</xs:documentation>
679             </xs:annotation>
680          </xs:element>
681          <xs:element name="service" type="Service" minOccurs="1">
682             <xs:annotation>
683                <xs:documentation source="public">The Service to be acted on by the order item</xs:documentation>
684             </xs:annotation>
685          </xs:element>
686       </xs:sequence>
687    </xs:complexType>
688    <xs:element name="CreateServiceOrder" type="CreateServiceOrder">
689       <xs:annotation>
690          <xs:documentation source="public">This structure is used in the operation POST for a serviceOrder request.
691 Attribute description is not accurate and should be find in the serviceOrder class.</xs:documentation>
692       </xs:annotation>
693    </xs:element>
694    <xs:complexType name="CreateServiceOrder">
695       <xs:annotation>
696          <xs:documentation source="public">This structure is used in the operation POST for a serviceOrder request.
697 Attribute description is not accurate and should be find in the serviceOrder class.</xs:documentation>
698       </xs:annotation>
699       <xs:sequence minOccurs="1" maxOccurs="1">
700          <xs:element name="externalId" type="xs:string" minOccurs="0">
701             <xs:annotation>
702                <xs:documentation source="public">ID given by the consumer and only understandable by him (to facilitate his searches)</xs:documentation>
703             </xs:annotation>
704          </xs:element>
705          <xs:element name="priority" type="xs:string" minOccurs="0">
706             <xs:annotation>
707                <xs:documentation source="public">A way that can be used by consumers to prioritize orders in Service Order Management system (from 0 to 4 : 0 is the highest priority, and 4 the lowest)</xs:documentation>
708             </xs:annotation>
709          </xs:element>
710          <xs:element name="description" type="xs:string" minOccurs="0">
711             <xs:annotation>
712                <xs:documentation source="public">A free-text description of the service order</xs:documentation>
713             </xs:annotation>
714          </xs:element>
715          <xs:element name="category" type="xs:string" minOccurs="0">
716             <xs:annotation>
717                <xs:documentation source="public">Used to categorize the order that can be useful for the OM system (e.g. “broadband”, “TVOption”, ...)</xs:documentation>
718             </xs:annotation>
719          </xs:element>
720          <xs:element name="requestedStartDate" type="xs:dateTime" minOccurs="0">
721             <xs:annotation>
722                <xs:documentation source="public">Order start date wished by the requestor</xs:documentation>
723             </xs:annotation>
724          </xs:element>
725          <xs:element name="requestedCompletionDate" type="xs:dateTime" minOccurs="0">
726             <xs:annotation>
727                <xs:documentation source="public">Requested delivery date from the requestor perspective</xs:documentation>
728             </xs:annotation>
729          </xs:element>
730          <xs:element name="relatedParty"
731                      type="RelatedParty"
732                      minOccurs="0"
733                      maxOccurs="unbounded">
734             <xs:annotation>
735                <xs:documentation source="public">A list of related parties which are involved in this order and the role they are playing.</xs:documentation>
736             </xs:annotation>
737          </xs:element>
738          <xs:element name="orderRelationship"
739                      type="OrderRelationship"
740                      minOccurs="0"
741                      maxOccurs="unbounded">
742             <xs:annotation>
743                <xs:documentation source="public">A list of related order references .Linked order to the one containing this attribute</xs:documentation>
744             </xs:annotation>
745          </xs:element>
746          <xs:element name="orderItem"
747                      type="CreateServiceOrderItem"
748                      minOccurs="0"
749                      maxOccurs="unbounded">
750             <xs:annotation>
751                <xs:documentation source="public">A list of order items that have to be processed.</xs:documentation>
752             </xs:annotation>
753          </xs:element>
754       </xs:sequence>
755    </xs:complexType>
756    <xs:element name="ServiceOrderSummary" type="ServiceOrderSummary">
757       <xs:annotation>
758          <xs:documentation source="public">This structure is used to provide a subset of serviceOrder attributes to be provided in particular for notification messages</xs:documentation>
759       </xs:annotation>
760    </xs:element>
761    <xs:complexType name="ServiceOrderSummary">
762       <xs:annotation>
763          <xs:documentation source="public">This structure is used to provide a subset of serviceOrder attributes to be provided in particular for notification messages</xs:documentation>
764       </xs:annotation>
765       <xs:sequence minOccurs="1" maxOccurs="1">
766          <xs:element name="id" type="xs:string" minOccurs="1">
767             <xs:annotation>
768                <xs:documentation source="public">ID created on repository side</xs:documentation>
769             </xs:annotation>
770          </xs:element>
771          <xs:element name="href" type="xs:string" minOccurs="0">
772             <xs:annotation>
773                <xs:documentation source="public">Hyperlink to access the order</xs:documentation>
774             </xs:annotation>
775          </xs:element>
776          <xs:element name="externalId" type="xs:string" minOccurs="0">
777             <xs:annotation>
778                <xs:documentation source="public">ID given by the consumer and only understandable by him (to facilitate his searches)</xs:documentation>
779             </xs:annotation>
780          </xs:element>
781          <xs:element name="state" type="StateType" minOccurs="0">
782             <xs:annotation>
783                <xs:documentation source="public">State of the order : described in the state-machine diagram
784 Only Acknowledged, Rejected, InProgress, Completed, Failed, Partial  will be managed for service order state (Held, Pending and Cancelled are not managed)</xs:documentation>
785             </xs:annotation>
786          </xs:element>
787          <xs:element name="orderDate" type="xs:dateTime" minOccurs="0">
788             <xs:annotation>
789                <xs:documentation source="public"/>
790             </xs:annotation>
791          </xs:element>
792          <xs:element name="completionDateTime" type="xs:dateTime" minOccurs="0">
793             <xs:annotation>
794                <xs:documentation source="public">Date when the order was completed</xs:documentation>
795             </xs:annotation>
796          </xs:element>
797       </xs:sequence>
798    </xs:complexType>
799    <xs:element name="Notification" type="Notification">
800       <xs:annotation>
801          <xs:documentation source="public">Notification structure for a serviceOrdering notification</xs:documentation>
802       </xs:annotation>
803    </xs:element>
804    <xs:complexType name="Notification">
805       <xs:annotation>
806          <xs:documentation source="public">Notification structure for a serviceOrdering notification</xs:documentation>
807       </xs:annotation>
808       <xs:sequence minOccurs="1" maxOccurs="1">
809          <xs:element name="eventId" type="xs:string" minOccurs="1">
810             <xs:annotation>
811                <xs:documentation source="public"/>
812             </xs:annotation>
813          </xs:element>
814          <xs:element name="eventDate" type="xs:dateTime" minOccurs="1">
815             <xs:annotation>
816                <xs:documentation source="public"/>
817             </xs:annotation>
818          </xs:element>
819          <xs:element name="eventType" type="EventType" minOccurs="1">
820             <xs:annotation>
821                <xs:documentation source="public"/>
822             </xs:annotation>
823          </xs:element>
824          <xs:element name="event" type="ServiceOrderSummaryWithItem" minOccurs="1"/>
825       </xs:sequence>
826    </xs:complexType>
827    <xs:element name="ServiceOrderItemSummary" type="ServiceOrderItemSummary">
828       <xs:annotation>
829          <xs:documentation source="public">Service Order item summary to be used for notification</xs:documentation>
830       </xs:annotation>
831    </xs:element>
832    <xs:complexType name="ServiceOrderItemSummary">
833       <xs:annotation>
834          <xs:documentation source="public">Service Order item summary to be used for notification</xs:documentation>
835       </xs:annotation>
836       <xs:sequence minOccurs="1" maxOccurs="1">
837          <xs:element name="id" type="xs:string" minOccurs="1">
838             <xs:annotation>
839                <xs:documentation source="public">Identifier of the line item (generally it is a sequence number 01, 02, 03, …)</xs:documentation>
840             </xs:annotation>
841          </xs:element>
842          <xs:element name="action" type="ActionType" minOccurs="0">
843             <xs:annotation>
844                <xs:documentation source="public">The action to be carried out on the Service. Can be add, modify, delete, noChange
845 modify is not managed in Beijing release.</xs:documentation>
846             </xs:annotation>
847          </xs:element>
848          <xs:element name="state" type="StateType" minOccurs="0">
849             <xs:annotation>
850                <xs:documentation source="public">State of the order item (described in the state machine diagram)
851 Only Acknowledged, Rejected, InProgress, Completed, Failed will be managed for service order item state</xs:documentation>
852             </xs:annotation>
853          </xs:element>
854          <xs:element name="service" type="Service" minOccurs="1">
855             <xs:annotation>
856                <xs:documentation source="public">The Service to be acted on by the order item</xs:documentation>
857             </xs:annotation>
858          </xs:element>
859       </xs:sequence>
860    </xs:complexType>
861    <xs:element name="ServiceOrderSummaryWithItem" type="ServiceOrderSummaryWithItem">
862       <xs:annotation>
863          <xs:documentation source="public">Service order item summary with item description</xs:documentation>
864       </xs:annotation>
865    </xs:element>
866    <xs:complexType name="ServiceOrderSummaryWithItem">
867       <xs:annotation>
868          <xs:documentation source="public">Service order item summary with item description</xs:documentation>
869       </xs:annotation>
870       <xs:sequence minOccurs="1" maxOccurs="1">
871          <xs:element name="id" type="xs:string" minOccurs="1">
872             <xs:annotation>
873                <xs:documentation source="public">ID created on repository side</xs:documentation>
874             </xs:annotation>
875          </xs:element>
876          <xs:element name="href" type="xs:string" minOccurs="0">
877             <xs:annotation>
878                <xs:documentation source="public">Hyperlink to access the order</xs:documentation>
879             </xs:annotation>
880          </xs:element>
881          <xs:element name="externalId" type="xs:string" minOccurs="0">
882             <xs:annotation>
883                <xs:documentation source="public">ID given by the consumer and only understandable by him (to facilitate his searches)</xs:documentation>
884             </xs:annotation>
885          </xs:element>
886          <xs:element name="state" type="StateType" minOccurs="0">
887             <xs:annotation>
888                <xs:documentation source="public">State of the order : described in the state-machine diagram
889 Only Acknowledged, Rejected, InProgress, Completed, Failed, Partial  will be managed for service order state (Held, Pending and Cancelled are not managed)</xs:documentation>
890             </xs:annotation>
891          </xs:element>
892          <xs:element name="orderDate" type="xs:dateTime" minOccurs="0">
893             <xs:annotation>
894                <xs:documentation source="public"/>
895             </xs:annotation>
896          </xs:element>
897          <xs:element name="completionDateTime" type="xs:dateTime" minOccurs="0">
898             <xs:annotation>
899                <xs:documentation source="public">Date when the order was completed</xs:documentation>
900             </xs:annotation>
901          </xs:element>
902          <xs:element name="orderItem"
903                      type="ServiceOrderItemSummary"
904                      minOccurs="0"
905                      maxOccurs="unbounded">
906             <xs:annotation>
907                <xs:documentation source="public">A list of order items that have to be processed.</xs:documentation>
908             </xs:annotation>
909          </xs:element>
910       </xs:sequence>
911    </xs:complexType>
912    <xs:element name="OrderMessage" type="OrderMessage">
913       <xs:annotation>
914          <xs:documentation source="public">An optional array of messages associated with the Order</xs:documentation>
915       </xs:annotation>
916    </xs:element>
917    <xs:complexType name="OrderMessage">
918       <xs:annotation>
919          <xs:documentation source="public">An optional array of messages associated with the Order</xs:documentation>
920       </xs:annotation>
921       <xs:sequence minOccurs="1" maxOccurs="1">
922          <xs:element name="code" type="xs:string" minOccurs="0">
923             <xs:annotation>
924                <xs:documentation source="public">A code associated to this message</xs:documentation>
925             </xs:annotation>
926          </xs:element>
927          <xs:element name="field" type="xs:string" minOccurs="0">
928             <xs:annotation>
929                <xs:documentation source="public">Service Order attribute related to this error message</xs:documentation>
930             </xs:annotation>
931          </xs:element>
932          <xs:element name="messageInformation" type="xs:string" minOccurs="0">
933             <xs:annotation>
934                <xs:documentation source="public">Message related to this order</xs:documentation>
935             </xs:annotation>
936          </xs:element>
937          <xs:element name="severity" type="SeverityMessage" minOccurs="1">
938             <xs:annotation>
939                <xs:documentation source="public">Gravity of this message</xs:documentation>
940             </xs:annotation>
941          </xs:element>
942          <xs:element name="correctionRequired" type="xs:boolean" minOccurs="1">
943             <xs:annotation>
944                <xs:documentation source="public">Indicator that an action is required to allow service order fullfilment to follow up</xs:documentation>
945             </xs:annotation>
946          </xs:element>
947       </xs:sequence>
948    </xs:complexType>
949 </xs:schema>