cpee 1.3.164 → 1.3.166

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/cockpit/css/ui.css +5 -12
  3. data/cockpit/index.html +4 -4
  4. data/cockpit/js/instance.js +34 -14
  5. data/cockpit/js/wfadaptor.cpee.js +5 -5
  6. data/cockpit/testsets/CPEE.xml +16 -0
  7. data/cockpit/testsets/{Signavio Model Base.xml → Signavio.xml} +0 -0
  8. data/cockpit/testsets/{index.xml → testsets.xml} +0 -0
  9. data/cockpit/testsets/transformations.xml +4 -0
  10. data/cpee.gemspec +1 -1
  11. data/lib/cpee/processtransformation/bpmn2.rb +12 -14
  12. data/lib/cpee/processtransformation/cpee.rb +3 -22
  13. data/lib/cpee/processtransformation/structures.rb +27 -41
  14. data/lib/cpee/processtransformation/target.rb +48 -0
  15. data/server/instances/13/notifications/4ff0cde5161c44dae49b263cbc12eaf8/consumer-secret +1 -0
  16. data/server/instances/13/notifications/4ff0cde5161c44dae49b263cbc12eaf8/producer-secret +1 -0
  17. data/server/instances/13/notifications/4ff0cde5161c44dae49b263cbc12eaf8/subscription.xml +23 -0
  18. data/server/instances/13/properties.xml +146 -0
  19. data/server/instances/14/properties.xml +332 -0
  20. data/server/instances/15/notifications/a73954a6728b0f086d1ea50245027fbf/consumer-secret +1 -0
  21. data/server/instances/15/notifications/a73954a6728b0f086d1ea50245027fbf/producer-secret +1 -0
  22. data/server/instances/{12/notifications/b0a0abbb8ad6fb81c579c4e97829d681 → 15/notifications/a73954a6728b0f086d1ea50245027fbf}/subscription.xml +3 -0
  23. data/server/instances/15/properties.xml +330 -0
  24. data/server/resources/transformation_dslx.xsl +3 -3
  25. metadata +16 -7
  26. data/server/instances/12/notifications/b0a0abbb8ad6fb81c579c4e97829d681/consumer-secret +0 -1
  27. data/server/instances/12/notifications/b0a0abbb8ad6fb81c579c4e97829d681/producer-secret +0 -1
@@ -0,0 +1,48 @@
1
+ # encoding: UTF-8
2
+ #
3
+ # This file is part of CPEE.
4
+ #
5
+ # Apache License, Version 2.0
6
+ #
7
+ # Copyright (c) 2013 Juergen Mangler
8
+ #
9
+ # Licensed under the Apache License, Version 2.0 (the "License");
10
+ # you may not use this file except in compliance with the License.
11
+ # You may obtain a copy of the License at
12
+ #
13
+ # http://www.apache.org/licenses/LICENSE-2.0
14
+ #
15
+ # Unless required by applicable law or agreed to in writing, software
16
+ # distributed under the License is distributed on an "AS IS" BASIS,
17
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
+ # See the License for the specific language governing permissions and
19
+ # limitations under the License.
20
+
21
+ module CPEE
22
+
23
+ module ProcessTransformation
24
+
25
+ module Target
26
+
27
+ class Default
28
+ def initialize(tree)
29
+ @tree = tree
30
+ end
31
+ def generate(node)
32
+ generate_for_list(@tree,node)
33
+ end
34
+
35
+ def generate_for_list(list,res)
36
+ list.each do |e|
37
+ nam = e.class.name.gsub(/\w+:+/,'')
38
+ send("print_#{nam}".to_sym,e,res)
39
+ end
40
+ end
41
+
42
+ end
43
+
44
+ end
45
+
46
+ end
47
+
48
+ end
@@ -0,0 +1,23 @@
1
+ <subscription xmlns="http://riddl.org/ns/common-patterns/notifications-producer/1.0" url="http://localhost:9299/events">
2
+ <topic id="running">
3
+ <event>activity_calling</event>
4
+ <event>activity_failed</event>
5
+ <event>activity_manipulating</event>
6
+ <event>activity_done</event>
7
+ </topic>
8
+ <topic id="properties/dataelements">
9
+ <event>change</event>
10
+ </topic>
11
+ <topic id="properties/endpoints">
12
+ <event>change</event>
13
+ </topic>
14
+ <topic id="properties/description">
15
+ <event>error</event>
16
+ </topic>
17
+ <topic id="properties/state">
18
+ <event>change</event>
19
+ </topic>
20
+ <topic id="properties/status">
21
+ <event>change</event>
22
+ </topic>
23
+ </subscription>
@@ -0,0 +1,146 @@
1
+ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
+ <info>Enter info here</info>
3
+ <properties/>
4
+ <state>ready</state>
5
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
6
+ <positions/>
7
+ <dataelements>
8
+ <persons>3</persons>
9
+ <card>Visa_12345</card>
10
+ <airline>null</airline>
11
+ <hotels>[]</hotels>
12
+ <from>Vienna</from>
13
+ <to>Prague</to>
14
+ <costs>0</costs>
15
+ </dataelements>
16
+ <endpoints>
17
+ <bookAir>http://gruppe.wst.univie.ac.at/~mangler/services/airline.php</bookAir>
18
+ <bookHotel>http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php</bookHotel>
19
+ <approve>http://gruppe.wst.univie.ac.at/~mangler/services/approval.php</approve>
20
+ </endpoints>
21
+ <dsl>call :a1, :bookAir, { :method =&gt; :post, :parameters =&gt; {:from =&gt; data.from, :to =&gt; data.to, :persons =&gt; data.persons} }, &lt;&lt;-end
22
+ data.airline = result.value('id')
23
+ data.costs += result.value('costs').to_f
24
+ status.update 1, 'Hotel'
25
+ end
26
+ parallel do
27
+ loop pre_test{data.persons &gt; 0} do
28
+ parallel_branch data.persons do |p|
29
+ call :a2, :bookHotel, { :method =&gt; :post, :parameters =&gt; {:to =&gt; data.to} }, &lt;&lt;-end
30
+ data.hotels &lt;&lt; result.value('id')
31
+ data.costs += result.value('costs').to_f
32
+ end
33
+ end
34
+ manipulate :a3, &lt;&lt;-end
35
+ data.persons -= 1
36
+ end
37
+ end
38
+ end
39
+ choose :inclusive do
40
+ alternative "data.costs &gt; 700" do
41
+ call :a4, :approve, { :method =&gt; :post, :parameters =&gt; {:costs =&gt; data.costs} }
42
+ end
43
+ end
44
+ </dsl>
45
+ <dslx>
46
+ <description xmlns="http://cpee.org/ns/description/1.0">
47
+ <call id="a1" endpoint="bookAir">
48
+ <parameters>
49
+ <method>:post</method>
50
+ <parameters>
51
+ <from>data.from</from>
52
+ <to>data.to</to>
53
+ <persons>data.persons</persons>
54
+ </parameters>
55
+ </parameters>
56
+ <manipulate output="result"> data.airline = result.value('id')
57
+ data.costs += result.value('costs').to_f
58
+ status.update 1, 'Hotel'</manipulate>
59
+ </call>
60
+ <parallel>
61
+ <loop pre_test="data.persons &gt; 0">
62
+ <parallel_branch pass="data.persons" local="p">
63
+ <call id="a2" endpoint="bookHotel">
64
+ <parameters>
65
+ <method>:post</method>
66
+ <parameters>
67
+ <to>data.to</to>
68
+ </parameters>
69
+ </parameters>
70
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
71
+ data.costs += result.value('costs').to_f</manipulate>
72
+ </call>
73
+ </parallel_branch>
74
+ <manipulate id="a3"> data.persons -= 1</manipulate>
75
+ </loop>
76
+ </parallel>
77
+ <choose>
78
+ <alternative condition="data.costs &gt; 700">
79
+ <call id="a4" endpoint="approve">
80
+ <parameters>
81
+ <method>:post</method>
82
+ <parameters>
83
+ <costs>data.costs</costs>
84
+ </parameters>
85
+ </parameters>
86
+ </call>
87
+ </alternative>
88
+ </choose>
89
+ </description>
90
+ </dslx>
91
+ <status>
92
+ <id>0</id>
93
+ <message>undefined</message>
94
+ </status>
95
+ <description>
96
+ <description xmlns="http://cpee.org/ns/description/1.0">
97
+ <call id="a1" endpoint="bookAir">
98
+ <parameters>
99
+ <method>:post</method>
100
+ <parameters>
101
+ <from>data.from</from>
102
+ <to>data.to</to>
103
+ <persons>data.persons</persons>
104
+ </parameters>
105
+ </parameters>
106
+ <manipulate output="result"> data.airline = result.value('id')
107
+ data.costs += result.value('costs').to_f
108
+ status.update 1, 'Hotel'</manipulate>
109
+ </call>
110
+ <parallel>
111
+ <loop pre_test="data.persons &gt; 0">
112
+ <parallel_branch pass="data.persons" local="p">
113
+ <call id="a2" endpoint="bookHotel">
114
+ <parameters>
115
+ <method>:post</method>
116
+ <parameters>
117
+ <to>data.to</to>
118
+ </parameters>
119
+ </parameters>
120
+ <manipulate output="result"> data.hotels &lt;&lt; result.value('id')
121
+ data.costs += result.value('costs').to_f</manipulate>
122
+ </call>
123
+ </parallel_branch>
124
+ <manipulate id="a3"> data.persons -= 1</manipulate>
125
+ </loop>
126
+ </parallel>
127
+ <choose>
128
+ <alternative condition="data.costs &gt; 700">
129
+ <call id="a4" endpoint="approve">
130
+ <parameters>
131
+ <method>:post</method>
132
+ <parameters>
133
+ <costs>data.costs</costs>
134
+ </parameters>
135
+ </parameters>
136
+ </call>
137
+ </alternative>
138
+ </choose>
139
+ </description>
140
+ </description>
141
+ <transformation>
142
+ <description type="copy"/>
143
+ <dataelements type="rest"/>
144
+ <endpoints type="rest"/>
145
+ </transformation>
146
+ </properties>
@@ -0,0 +1,332 @@
1
+ <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
+ <info>Enter info here</info>
3
+ <properties/>
4
+ <state>stopped</state>
5
+ <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
6
+ <positions>
7
+ <a2>after</a2>
8
+ </positions>
9
+ <dataelements>
10
+ <name>Milos</name>
11
+ <vnr>3456</vnr>
12
+ <email>a1346963@unet.univie.ac.at</email>
13
+ <garage>TaCfQzDhNF</garage>
14
+ <schadensumme>7401</schadensumme>
15
+ <schaden>gering</schaden>
16
+ <versicherungssumme>dummy</versicherungssumme>
17
+ <historie>dummy</historie>
18
+ <entscheidung>dummy</entscheidung>
19
+ </dataelements>
20
+ <endpoints>
21
+ <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
22
+ <a>http://wwwlab.cs.univie.ac.at/~a1100570/a.php</a>
23
+ <b>http://wwwlab.cs.univie.ac.at/~a1100570/b.php</b>
24
+ <c>http://wwwlab.cs.univie.ac.at/~a1100570/c.php</c>
25
+ <d>http://wwwlab.cs.univie.ac.at/~a1100570/d.php</d>
26
+ <e>http://wwwlab.cs.univie.ac.at/~a1100570/e.php</e>
27
+ <f>http://wwwlab.cs.univie.ac.at/~a1100570/f.php</f>
28
+ <g>http://wwwlab.cs.univie.ac.at/~a1100570/g.php</g>
29
+ </endpoints>
30
+ <dsl>call :a1, :a, { :label =&gt; "Schadenmeldung registrieren", :method =&gt; :get, :parameters =&gt; nil }, &lt;&lt;-end
31
+ data.name=result['name']
32
+ data.vnr=result['vnr']
33
+ data.email=result['email']
34
+ data.garage=result['garage']
35
+ data.schadensumme=result['schadensumme']
36
+ end
37
+ call :a2, :b, { :label =&gt; "Schadenmeldung klassifizieren", :method =&gt; :post, :parameters =&gt; {:name =&gt; data.name} }, &lt;&lt;-end
38
+ data.schaden=result['groesse']
39
+ p 'riririr'
40
+ end
41
+ p 'hahaha'
42
+ choose :exclusive do
43
+ alternative "data.schaden=='gering'", :svg-label =&gt; "" do
44
+ parallel do
45
+ parallel_branch do
46
+ call :a3, :c, { :label =&gt; "Versicherungssumme ermitteln", :method =&gt; :post, :parameters =&gt; {:schadengroesse =&gt; data.schadensumme} }, &lt;&lt;-end
47
+ data.versicherungssumme=result['versicherungssumme']
48
+ end
49
+ end
50
+ parallel_branch do
51
+ call :a4, :d, { :label =&gt; "Garage kontaktieren", :method =&gt; :post, :parameters =&gt; {:garage =&gt; data.garage, :email =&gt; data.email, :name =&gt; data.name} }
52
+ end
53
+ end
54
+ end
55
+ otherwise :svg-label =&gt; "" do
56
+ call :a5, :c, { :label =&gt; "Versicherungssumme ermitteln", :method =&gt; :post, :parameters =&gt; {:schadengroesse =&gt; data.schadensumme} }, &lt;&lt;-end
57
+ data.versicherungssumme=result['versicherungssumme']
58
+ end
59
+ call :a6, :e, { :label =&gt; "Versicherungshistorie ermitteln", :method =&gt; :post, :parameters =&gt; {:schaden =&gt; data.schaden} }, &lt;&lt;-end
60
+ data.historie=result['text']
61
+ end
62
+ call :a7, :d, { :label =&gt; "Garage kontaktieren", :method =&gt; :post, :parameters =&gt; {:garage =&gt; data.garage, :name =&gt; data.name, :email =&gt; data.email} }
63
+ end
64
+ end
65
+ call :a8, :f, { :label =&gt; "Entscheidung treffen", :method =&gt; :get, :parameters =&gt; nil }, &lt;&lt;-end
66
+ data.entscheidung=result['ok']
67
+ end
68
+ choose :exclusive do
69
+ alternative "entscheidung='OK'", :svg-label =&gt; "" do
70
+ call :a10, :timeout, { :label =&gt; "Zahlen", :method =&gt; :post, :parameters =&gt; {:timeout =&gt; 3} }
71
+ end
72
+ otherwise :svg-label =&gt; "" do
73
+ end
74
+ end
75
+ call :a9, :g, { :label =&gt; "Entscheidung mitteilen", :method =&gt; :post, :parameters =&gt; {:name =&gt; data.name, :email =&gt; data.email, :body =&gt; data.entscheidung} }
76
+ </dsl>
77
+ <dslx>
78
+ <description xmlns="http://cpee.org/ns/description/1.0">
79
+ <call id="a1" endpoint="a" svg-label="Schadenmeldung registrieren">
80
+ <parameters>
81
+ <label>"Schadenmeldung registrieren"</label>
82
+ <method>:get</method>
83
+ <parameters/>
84
+ </parameters>
85
+ <manipulate>data.name=result['name']
86
+ data.vnr=result['vnr']
87
+ data.email=result['email']
88
+ data.garage=result['garage']
89
+ data.schadensumme=result['schadensumme']</manipulate>
90
+ </call>
91
+ <call id="a2" endpoint="b" svg-label="Schadenmeldung klassifizieren">
92
+ <parameters>
93
+ <label>"Schadenmeldung klassifizieren"</label>
94
+ <method>:post</method>
95
+ <parameters>
96
+ <name>data.name</name>
97
+ </parameters>
98
+ </parameters>
99
+ <manipulate>data.schaden=result['groesse']</manipulate>
100
+ </call>
101
+ <choose mode="exclusive" svg-label="">
102
+ <alternative condition="data.schaden='gering'" svg-label="">
103
+ <parallel svg-label="">
104
+ <parallel_branch svg-label="">
105
+ <call id="a3" endpoint="c" svg-label="Versicherungssumme ermitteln">
106
+ <parameters>
107
+ <label>"Versicherungssumme ermitteln"</label>
108
+ <method>:post</method>
109
+ <parameters>
110
+ <schadengroesse>data.schadensumme</schadengroesse>
111
+ </parameters>
112
+ </parameters>
113
+ <manipulate>data.versicherungssumme=result['versicherungssumme']</manipulate>
114
+ </call>
115
+ </parallel_branch>
116
+ <parallel_branch svg-label="">
117
+ <call id="a4" endpoint="d" svg-label="Garage kontaktieren">
118
+ <parameters>
119
+ <label>"Garage kontaktieren"</label>
120
+ <method>:post</method>
121
+ <parameters>
122
+ <garage>data.garage</garage>
123
+ <email>data.email</email>
124
+ <name>data.name</name>
125
+ </parameters>
126
+ </parameters>
127
+ </call>
128
+ </parallel_branch>
129
+ </parallel>
130
+ </alternative>
131
+ <otherwise svg-label="">
132
+ <call id="a5" endpoint="c" svg-label="Versicherungssumme ermitteln">
133
+ <parameters>
134
+ <label>"Versicherungssumme ermitteln"</label>
135
+ <method>:post</method>
136
+ <parameters>
137
+ <schadengroesse>data.schadensumme</schadengroesse>
138
+ </parameters>
139
+ </parameters>
140
+ <manipulate>data.versicherungssumme=result['versicherungssumme']</manipulate>
141
+ </call>
142
+ <call id="a6" endpoint="e" svg-label="Versicherungshistorie ermitteln">
143
+ <parameters>
144
+ <label>"Versicherungshistorie ermitteln"</label>
145
+ <method>:post</method>
146
+ <parameters>
147
+ <schaden>data.schaden</schaden>
148
+ </parameters>
149
+ </parameters>
150
+ <manipulate>data.historie=result['text']</manipulate>
151
+ </call>
152
+ <call id="a7" endpoint="d" svg-label="Garage kontaktieren">
153
+ <parameters>
154
+ <label>"Garage kontaktieren"</label>
155
+ <method>:post</method>
156
+ <parameters>
157
+ <garage>data.garage</garage>
158
+ <name>data.name</name>
159
+ <email>data.email</email>
160
+ </parameters>
161
+ </parameters>
162
+ </call>
163
+ </otherwise>
164
+ </choose>
165
+ <call id="a8" endpoint="f">
166
+ <parameters>
167
+ <label>"Entscheidung treffen"</label>
168
+ <method>:get</method>
169
+ <parameters/>
170
+ </parameters>
171
+ <manipulate>data.entscheidung=result['ok']</manipulate>
172
+ </call>
173
+ <choose mode="exclusive" svg-label="">
174
+ <alternative condition="entscheidung='OK'" svg-label="">
175
+ <call id="a10" endpoint="timeout" svg-label="Zahlen">
176
+ <parameters>
177
+ <label>"Zahlen"</label>
178
+ <method>:post</method>
179
+ <parameters>
180
+ <timeout>3</timeout>
181
+ </parameters>
182
+ </parameters>
183
+ </call>
184
+ </alternative>
185
+ <otherwise svg-label=""/>
186
+ </choose>
187
+ <call id="a9" endpoint="g" svg-label="Entscheidung mitteilen">
188
+ <parameters>
189
+ <label>"Entscheidung mitteilen"</label>
190
+ <method>:post</method>
191
+ <parameters>
192
+ <name>data.name</name>
193
+ <email>data.email</email>
194
+ <body>data.entscheidung</body>
195
+ </parameters>
196
+ </parameters>
197
+ </call>
198
+ </description>
199
+ </dslx>
200
+ <status>
201
+ <id>0</id>
202
+ <message>undefined</message>
203
+ </status>
204
+ <description>
205
+ <description xmlns="http://cpee.org/ns/description/1.0">
206
+ <call id="a1" endpoint="a" svg-label="Schadenmeldung registrieren">
207
+ <parameters>
208
+ <label>"Schadenmeldung registrieren"</label>
209
+ <method>:get</method>
210
+ <parameters/>
211
+ </parameters>
212
+ <manipulate>data.name=result['name']
213
+ data.vnr=result['vnr']
214
+ data.email=result['email']
215
+ data.garage=result['garage']
216
+ data.schadensumme=result['schadensumme']</manipulate>
217
+ </call>
218
+ <call id="a2" endpoint="b" svg-label="Schadenmeldung klassifizieren">
219
+ <parameters>
220
+ <label>"Schadenmeldung klassifizieren"</label>
221
+ <method>:post</method>
222
+ <parameters>
223
+ <name>data.name</name>
224
+ </parameters>
225
+ </parameters>
226
+ <manipulate>data.schaden=result['groesse']</manipulate>
227
+ </call>
228
+ <choose mode="exclusive" svg-label="">
229
+ <alternative condition="data.schaden='gering'" svg-label="">
230
+ <parallel svg-label="">
231
+ <parallel_branch svg-label="">
232
+ <call id="a3" endpoint="c" svg-label="Versicherungssumme ermitteln">
233
+ <parameters>
234
+ <label>"Versicherungssumme ermitteln"</label>
235
+ <method>:post</method>
236
+ <parameters>
237
+ <schadengroesse>data.schadensumme</schadengroesse>
238
+ </parameters>
239
+ </parameters>
240
+ <manipulate>data.versicherungssumme=result['versicherungssumme']</manipulate>
241
+ </call>
242
+ </parallel_branch>
243
+ <parallel_branch svg-label="">
244
+ <call id="a4" endpoint="d" svg-label="Garage kontaktieren">
245
+ <parameters>
246
+ <label>"Garage kontaktieren"</label>
247
+ <method>:post</method>
248
+ <parameters>
249
+ <garage>data.garage</garage>
250
+ <email>data.email</email>
251
+ <name>data.name</name>
252
+ </parameters>
253
+ </parameters>
254
+ </call>
255
+ </parallel_branch>
256
+ </parallel>
257
+ </alternative>
258
+ <otherwise svg-label="">
259
+ <call id="a5" endpoint="c" svg-label="Versicherungssumme ermitteln">
260
+ <parameters>
261
+ <label>"Versicherungssumme ermitteln"</label>
262
+ <method>:post</method>
263
+ <parameters>
264
+ <schadengroesse>data.schadensumme</schadengroesse>
265
+ </parameters>
266
+ </parameters>
267
+ <manipulate>data.versicherungssumme=result['versicherungssumme']</manipulate>
268
+ </call>
269
+ <call id="a6" endpoint="e" svg-label="Versicherungshistorie ermitteln">
270
+ <parameters>
271
+ <label>"Versicherungshistorie ermitteln"</label>
272
+ <method>:post</method>
273
+ <parameters>
274
+ <schaden>data.schaden</schaden>
275
+ </parameters>
276
+ </parameters>
277
+ <manipulate>data.historie=result['text']</manipulate>
278
+ </call>
279
+ <call id="a7" endpoint="d" svg-label="Garage kontaktieren">
280
+ <parameters>
281
+ <label>"Garage kontaktieren"</label>
282
+ <method>:post</method>
283
+ <parameters>
284
+ <garage>data.garage</garage>
285
+ <name>data.name</name>
286
+ <email>data.email</email>
287
+ </parameters>
288
+ </parameters>
289
+ </call>
290
+ </otherwise>
291
+ </choose>
292
+ <call id="a8" endpoint="f">
293
+ <parameters>
294
+ <label>"Entscheidung treffen"</label>
295
+ <method>:get</method>
296
+ <parameters/>
297
+ </parameters>
298
+ <manipulate>data.entscheidung=result['ok']</manipulate>
299
+ </call>
300
+ <choose mode="exclusive" svg-label="">
301
+ <alternative condition="entscheidung='OK'" svg-label="">
302
+ <call id="a10" endpoint="timeout" svg-label="Zahlen">
303
+ <parameters>
304
+ <label>"Zahlen"</label>
305
+ <method>:post</method>
306
+ <parameters>
307
+ <timeout>3</timeout>
308
+ </parameters>
309
+ </parameters>
310
+ </call>
311
+ </alternative>
312
+ <otherwise svg-label=""/>
313
+ </choose>
314
+ <call id="a9" endpoint="g" svg-label="Entscheidung mitteilen">
315
+ <parameters>
316
+ <label>"Entscheidung mitteilen"</label>
317
+ <method>:post</method>
318
+ <parameters>
319
+ <name>data.name</name>
320
+ <email>data.email</email>
321
+ <body>data.entscheidung</body>
322
+ </parameters>
323
+ </parameters>
324
+ </call>
325
+ </description>
326
+ </description>
327
+ <transformation>
328
+ <description type="copy"/>
329
+ <dataelements type="xslt"/>
330
+ <endpoints type="xslt"/>
331
+ </transformation>
332
+ </properties>