1 <?xml version = "1.0" encoding = "UTF-8"?>
\r
2 <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.openecomp.org/sdnc/svclogic" xmlns="http://www.openecomp.org/sdnc/svclogic">
\r
4 <xsd:simpleType name="modeType">
\r
5 <xsd:restriction base="xsd:string">
\r
6 <xsd:enumeration value="sync" />
\r
7 <xsd:enumeration value="async" />
\r
11 <xsd:group name="node">
\r
13 <xsd:element ref="block" />
\r
14 <xsd:element ref="is-available" />
\r
15 <xsd:element ref="exists" />
\r
16 <xsd:element ref="reserve" />
\r
17 <xsd:element ref="release" />
\r
18 <xsd:element ref="allocate" />
\r
19 <xsd:element ref="get-resource" />
\r
20 <xsd:element ref="configure" />
\r
21 <xsd:element ref="return" />
\r
22 <xsd:element ref="switch" />
\r
23 <xsd:element ref="record" />
\r
24 <xsd:element ref="save" />
\r
25 <xsd:element ref="for" />
\r
26 <xsd:element ref="set" />
\r
27 <xsd:element ref="execute" />
\r
28 <xsd:element ref="delete" />
\r
29 <xsd:element ref="update" />
\r
30 <xsd:element ref="call" />
\r
31 <xsd:element ref="notify" />
\r
32 <xsd:element ref="break" />
\r
33 <xsd:element ref="while" />
\r
37 <xsd:element name="service-logic">
\r
40 <xsd:element ref="method" minOccurs="0" maxOccurs="unbounded" />
\r
42 <xsd:attribute name="module" use="required" type="xsd:string" />
\r
43 <xsd:attribute name="version" use="required" type="xsd:string" />
\r
47 <xsd:element name="method">
\r
50 <xsd:group ref="node" minOccurs="0" maxOccurs="unbounded" />
\r
52 <xsd:attribute name="rpc" use="required" type="xsd:string" />
\r
53 <xsd:attribute name="mode" use="optional" type="modeType" />
\r
57 <xsd:element name="block">
\r
60 <xsd:group ref="node" minOccurs="0" maxOccurs="unbounded" />
\r
62 <xsd:attribute name="atomic" use="optional" type="xsd:boolean" />
\r
66 <xsd:element name="is-available">
\r
69 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
71 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
72 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
73 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
74 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
78 <xsd:element name="exists">
\r
81 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
83 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
84 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
85 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
86 <xsd:attribute name="key" use="required" type="xsd:string" />
\r
90 <xsd:element name="outcome">
\r
93 <xsd:group ref="node" minOccurs="0" maxOccurs="unbounded" />
\r
95 <xsd:attribute name="ref" use="optional" type="xsd:string" />
\r
96 <xsd:attribute name="value" use="required" type="xsd:string" />
\r
100 <xsd:element name="reserve">
\r
103 <!-- This node does not actually read from parameters -->
\r
104 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
105 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
107 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
108 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
109 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
110 <xsd:attribute name="select" use="optional" type="xsd:string" />
\r
111 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
115 <xsd:element name="release">
\r
118 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
120 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
121 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
122 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
123 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
127 <xsd:element name="record">
\r
130 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
131 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
133 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
137 <xsd:element name="allocate">
\r
140 <!-- This node does not actually read from parameters -->
\r
141 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
142 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
144 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
145 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
146 <xsd:attribute name="key" use="required" type="xsd:string" />
\r
147 <xsd:attribute name="pfx" use="required" type="xsd:string" />
\r
151 <xsd:element name="get-resource">
\r
154 <!-- This node does not actually read from parameters -->
\r
155 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
156 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
158 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
159 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
160 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
161 <xsd:attribute name="local-only" use="optional" type="xsd:boolean" />
\r
162 <xsd:attribute name="order-by" use="optional" type="xsd:string" />
\r
163 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
164 <!-- force is retired and does not do anything -->
\r
165 <xsd:attribute name="force" use="optional" type="xsd:string" />
\r
169 <xsd:element name="configure">
\r
172 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
173 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
175 <xsd:attribute name="adaptor" use="required" type="xsd:string" />
\r
176 <xsd:attribute name="key" use="required" type="xsd:string" />
\r
177 <xsd:attribute name="activate" use="optional" type="xsd:boolean" />
\r
182 <xsd:element name="parameter">
\r
184 <xsd:attribute name="name" use="required" type="xsd:string" />
\r
185 <xsd:attribute name="value" use="required" type="xsd:string" />
\r
190 <xsd:element name="return">
\r
193 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
195 <xsd:attribute name="status" use="optional" type="xsd:string" />
\r
199 <xsd:element name="switch">
\r
202 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
204 <xsd:attribute name="test" use="required" type="xsd:string" />
\r
208 <xsd:element name="save">
\r
211 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
212 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
214 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
215 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
216 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
217 <xsd:attribute name="force" use="optional" type="xsd:boolean" />
\r
218 <xsd:attribute name="local-only" use="optional" type="xsd:boolean" />
\r
219 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
223 <xsd:element name="delete">
\r
226 <!-- This node does not actually read from parameters -->
\r
227 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
228 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
230 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
231 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
232 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
233 <!-- force is retired and does not do anything -->
\r
234 <xsd:attribute name="force" use="optional" type="xsd:string" />
\r
235 <!-- local-only is retired and does not do anything -->
\r
236 <xsd:attribute name="local-only" use="optional" type="xsd:string" />
\r
237 <!-- pfx is retired and does not do anything -->
\r
238 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
242 <xsd:element name="for">
\r
245 <xsd:group ref="node" minOccurs="0" maxOccurs="unbounded" />
\r
247 <xsd:attribute name="atomic" use="optional" type="xsd:boolean" />
\r
248 <xsd:attribute name="index" use="required" type="xsd:string" />
\r
249 <xsd:attribute name="start" use="required" type="xsd:string" />
\r
250 <xsd:attribute name="end" use="required" type="xsd:string" />
\r
251 <xsd:attribute name="silentFailure" use="optional" type="xsd:boolean" default="false" />
\r
255 <xsd:element name="set">
\r
258 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
260 <xsd:attribute name="only-if-unset" use="optional"
\r
261 type="xsd:boolean" />
\r
265 <xsd:element name="execute">
\r
268 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
269 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
271 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
272 <xsd:attribute name="method" use="required" type="xsd:string" />
\r
273 <xsd:attribute name="emitsOutcome" use="optional" type="xsd:boolean" />
\r
277 <xsd:element name="update">
\r
280 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
281 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
283 <xsd:attribute name="plugin" use="required" type="xsd:string" />
\r
284 <xsd:attribute name="resource" use="required" type="xsd:string" />
\r
285 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
286 <xsd:attribute name="force" use="optional" type="xsd:boolean" />
\r
287 <xsd:attribute name="local-only" use="optional" type="xsd:boolean" />
\r
288 <xsd:attribute name="pfx" use="optional" type="xsd:string" />
\r
292 <xsd:element name="call">
\r
295 <!-- This node does not actually read from parameters -->
\r
296 <xsd:element ref="parameter" minOccurs="0" maxOccurs="unbounded" />
\r
297 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
299 <xsd:attribute name="module" use="optional" type="xsd:string" />
\r
300 <xsd:attribute name="rpc" use="required" type="xsd:string" />
\r
301 <xsd:attribute name="version" use="optional" type="xsd:string" />
\r
302 <xsd:attribute name="mode" use="required" type="xsd:string" />
\r
306 <xsd:element name="notify">
\r
309 <xsd:element ref="outcome" minOccurs="0" maxOccurs="unbounded" />
\r
311 <xsd:attribute name="plugin" use="optional" type="xsd:string" />
\r
312 <xsd:attribute name="resource" use="optional" type="xsd:string" />
\r
313 <xsd:attribute name="action" use="required" type="xsd:string" />
\r
314 <xsd:attribute name="key" use="optional" type="xsd:string" />
\r
315 <!-- force is retired and does not do anything -->
\r
316 <xsd:attribute name="force" use="optional" type="xsd:string" />
\r
320 <xsd:element name="break">
\r
321 <xsd:complexType />
\r
324 <xsd:element name="while">
\r
327 <xsd:group ref="node" minOccurs="0" maxOccurs="unbounded" />
\r
329 <xsd:attribute name="test" use="required" type="xsd:string" />
\r
330 <xsd:attribute name="do" use="optional" type="xsd:boolean" />
\r