1# zxid/sg/liberty-idwsf-pmm-v1.0.sg  -- Provisioned Module Manager
2# Slightly edited, 3.6.2007, Sampo Kellomaki (sampo@iki.fi)
3# $Id: liberty-idwsf-prov-v1.0.sg,v 1.3 2007-08-10 19:19:10 sampo Exp $
4
5target(prov, urn:liberty:prov:2006-12)
6
7import(lu, urn:liberty:util:2006-08, liberty-idwsf-utility-v2.0.xsd)
8import(dp, urn:liberty:dp:2006-12,   liberty-idwsf-dp-v1.0.xsd)
9import(ds, http://www.w3.org/2000/09/xmldsig#, http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd)
10import(a,  http://www.w3.org/2005/08/addressing, http://www.w3.org/2005/08/addressing/ws-addr.xsd)
11
12PMID	 -> %prov:PMIDType
13%PMIDType:	 base(xs:anyURI)
14  @issuer	 -> %xs:anyURI
15  ;
16
17PMDescriptor	 -> %prov:PMDescriptorType
18%PMDescriptorType:
19  prov:PMID
20  prov:PMEngineRef?
21  prov:PMInitData?
22  prov:PMRTData?
23  ds:Signature?
24  @activate?	 -> %xs:boolean
25  @activateAt?	 -> %xs:dateTime
26  @deactivateAt? -> %xs:dateTime
27  @any
28  ;
29
30PMInitData	 -> %xenc:EncryptedData
31PMRTData	 -> %xenc:EncryptedData
32
33ProvisioningHandle	 -> %prov:ProvisioningHandleType
34%ProvisioningHandleType:
35  prov:PMDArtifact
36  prov:ProvisioningServiceEPR?
37  ds:Signature?
38  @expires?	 -> %xs:dateTime
39  @any
40  ;
41
42ProvisioningServiceEPR	 -> %a:EndpointReferenceType
43
44PMDArtifact	 -> %xs:string
45
46CallbackEPR	 -> %a:EndpointReferenceType
47
48PMStatus	 -> %prov:PMStatusType
49%PMStatusType:
50  prov:PMID
51  prov:State
52  ;
53
54State	 -> %prov:StateType
55%StateType:	 base(xs:anyURI)
56  @asof?	 -> %xs:dateTime
57  ;
58
59PMEInfo	 -> %prov:PMEInfoType
60%PMEInfoType:
61  prov:PMEngineRef
62  prov:PMECreatorID
63  prov:PMEWhenCreated
64  prov:PMEEnabled
65  prov:PMEWhenEnabled
66  prov:PMESize
67  prov:PMEHash
68  ;
69
70PMEngineRef	 -> %xs:anyURI
71PMECreatorID	 -> %xs:anyURI
72PMEWhenCreated	 -> %xs:dateTime
73PMEEnabled	 -> %xs:boolean
74PMEWhenEnabled	 -> %xs:dateTime
75PMESize	 -> %xs:integer
76
77PMEHash	 -> %prov:PMEHashType
78%PMEHashType:	 base(xs:base64Binary)
79  @method	 -> %xs:anyURI
80  ;
81
82%RequestAbstractType:
83  @any
84  ;
85
86%ResponseAbstractType:
87  lu:Status
88  @any
89  ;
90
91PMERegister	 -> %prov:PMERegisterType
92%PMERegisterType:	 base(prov:RequestAbstractType)
93  prov:PMEngineRef
94  prov:PMESize
95  prov:PMEHash
96  ;
97
98PMERegisterResponse	 -> %prov:PMERegisterResponseType
99%PMERegisterResponseType:	 base(prov:ResponseAbstractType)
100  prov:PMEUploadMax?
101  ;
102
103PMEUploadMax	 -> %xs:integer
104
105PMEUpload	 -> %prov:PMEUploadType
106%PMEUploadType:	 base(prov:RequestAbstractType)
107  prov:PMEngineRef
108  prov:EngineData
109  @offset	 -> %xs:integer
110  @remaining	 -> %xs:integer
111  ;
112
113PMEUploadResponse	 -> %prov:PMEUploadResponseType
114%PMEUploadResponseType:	 base(prov:ResponseAbstractType) ;
115
116PMEDownload	 -> %prov:PMEDownloadType
117%PMEDownloadType:	 base(prov:RequestAbstractType)
118  prov:PMEngineRef
119  &@dp:BasicPagingAttributeGroup
120  ;
121
122PMEDownloadResponse	 -> %prov:PMEDownloadResponseType
123%PMEDownloadResponseType:	 base(prov:ResponseAbstractType)
124  prov:EngineData?
125  &@dp:BasicPagingResponseAttributeGroup
126  ;
127
128EngineData	 -> %xs:base64Binary
129
130PMEEnable	 -> %prov:PMEEnableType
131%PMEEnableType:	 base(prov:RequestAbstractType)
132  prov:PMEngineRef+
133  ;
134
135PMEEnableResponse	 -> %prov:PMEEnableResponseType
136%PMEEnableResponseType:	 base(prov:ResponseAbstractType) ;
137
138PMEDisable	 -> %prov:PMEDisableType
139%PMEDisableType:	 base(prov:RequestAbstractType)
140  prov:PMEngineRef+
141  ;
142
143PMEDisableResponse	 -> %prov:PMEDisableResponseType
144%PMEDisableResponseType:	 base(prov:ResponseAbstractType) ;
145
146PMEDelete	 -> %prov:PMEDeleteType
147%PMEDeleteType:	 base(prov:RequestAbstractType)
148  prov:PMEngineRef+
149  ;
150
151PMEDeleteResponse	 -> %prov:PMEDeleteResponseType
152%PMEDeleteResponseType:	 base(prov:ResponseAbstractType) ;
153
154PMEGetInfo	 -> %prov:PMEGetInfoType
155%PMEGetInfoType:	 base(prov:RequestAbstractType)
156  prov:PMEngineRef*
157  ;
158
159PMEGetInfoResponse	 -> %prov:PMEGetInfoResponseType
160%PMEGetInfoResponseType:	 base(prov:ResponseAbstractType)
161  prov:PMEInfo*
162  ;
163
164PMGetDescriptor	 -> %prov:PMGetDescriptorType
165%PMGetDescriptorType:	 base(prov:RequestAbstractType)
166  prov:PMDArtifact
167  prov:CallbackEPR+
168  ;
169
170PMGetDescriptorResponse	 -> %prov:PMGetDescriptorResponseType
171%PMGetDescriptorResponseType:	 base(prov:ResponseAbstractType)
172  prov:PMDescriptor?
173  ;
174
175PMActivate	 -> %prov:PMActivateType
176%PMActivateType:	 base(prov:RequestAbstractType)
177  prov:PMActivateItem+
178  dp:NotifyTo?
179  ;
180
181PMActivateItem	 -> %prov:PMActivateItemType
182%PMActivateItemType:
183  prov:PMID
184  @itemID	 -> %xs:string
185  @at?	 -> %xs:dateTime
186  ;
187
188PMActivateResponse	 -> %prov:PMActivateResponseType
189%PMActivateResponseType:	 base(prov:ResponseAbstractType) ;
190
191PMDeactivate	 -> %prov:PMDeactivateType
192%PMDeactivateType:	 base(prov:RequestAbstractType)
193  prov:PMDeactivateItem+
194  dp:NotifyTo?
195  ;
196
197PMDeactivateItem	 -> %prov:PMDeactivateItemType
198%PMDeactivateItemType:
199  prov:PMID
200  @itemID	 -> %xs:string
201  @at?	 -> %xs:dateTime
202  ;
203
204PMDeactivateResponse	 -> %prov:PMDeactivateResponseType
205%PMDeactivateResponseType:	 base(prov:ResponseAbstractType) ;
206
207PMRegisterDescriptor	 -> %prov:PMRegisterDescriptorType
208%PMRegisterDescriptorType:	 base(prov:RequestAbstractType)
209  prov:PMRegisterDescriptorItem+
210  ;
211
212PMRegisterDescriptorItem	 -> %prov:PMRegisterDescriptorItemType
213%PMRegisterDescriptorItemType:
214  prov:PMDescriptor
215  @itemID	 -> %xs:string
216  ;
217
218PMRegisterDescriptorResponse	 -> %prov:PMRegisterDescriptorResponseType
219%PMRegisterDescriptorResponseType:	 base(prov:ResponseAbstractType)
220  prov:PMRegisterDescriptorResponseItem*
221  ;
222
223PMRegisterDescriptorResponseItem	 -> %prov:PMRegisterDescriptorResponseItemType
224%PMRegisterDescriptorResponseItemType:
225  prov:ProvisioningHandle
226  @ref	 -> %xs:string
227  ;
228
229PMUpdate	 -> %prov:PMUpdateType
230%PMUpdateType:	 base(prov:RequestAbstractType)
231  prov:PMUpdateItem+
232  dp:NotifyTo?
233  ;
234
235PMUpdateItem	 -> %prov:PMUpdateItemType
236%PMUpdateItemType:
237  prov:PMDescriptor
238  @type	 -> %xs:anyURI
239  @itemID	 -> %xs:string
240  @at?	 -> %xs:dateTime
241  ;
242
243PMUpdateResponse	 -> %prov:PMUpdateResponseType
244%PMUpdateResponseType:	 base(prov:ResponseAbstractType) ;
245
246PMDelete	 -> %prov:PMDeleteType
247%PMDeleteType:	 base(prov:RequestAbstractType)
248  prov:PMDeleteItem+
249  dp:NotifyTo?
250  ;
251
252PMDeleteItem	 -> %prov:PMDeleteItemType
253%PMDeleteItemType:
254  prov:PMID
255  @itemID	 -> %xs:string
256  ;
257
258PMDeleteResponse	 -> %prov:PMDeleteResponseType
259%PMDeleteResponseType:	 base(prov:ResponseAbstractType) ;
260
261PMGetStatus	 -> %prov:PMGetStatusType
262%PMGetStatusType:	 base(prov:RequestAbstractType)
263  prov:PMID*
264  ;
265
266PMGetStatusResponse	 -> %prov:PMGetStatusResponseType
267%PMGetStatusResponseType:	 base(prov:ResponseAbstractType)
268  prov:PMStatus*
269  ;
270
271PMSetStatus	 -> %prov:PMSetStatusType
272%PMSetStatusType:	 base(prov:RequestAbstractType)
273  prov:PMStatus
274  ;
275
276PMSetStatusResponse	 -> %prov:PMSetStatusResponseType
277%PMSetStatusResponseType:	 base(prov:ResponseAbstractType) ;
278
279Poll	 -> %dp:PollType
280
281PollResponse	 -> %dp:PollResponseType
282
283UpdateEPR	 -> %prov:UpdateEPRType
284%UpdateEPRType:	 base(prov:RequestAbstractType)
285  prov:UpdateEPRItem+
286  ;
287
288UpdateEPRItem	 -> %prov:UpdateEPRItemType
289%UpdateEPRItemType:
290  prov:PMID
291  prov:CallbackEPR
292  @itemID	 -> %xs:string
293  ;
294
295UpdateEPRResponse	 -> %prov:UpdateEPRResponseType
296%UpdateEPRResponseType:	 base(prov:ResponseAbstractType) ;
297
298#EOF
299