cpee 2.1.29 → 2.1.50
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +1 -1
- data/cockpit/config.json +1 -1
- data/cockpit/css/graph.css +13 -0
- data/cockpit/css/track.css +1 -1
- data/cockpit/css/wfadaptor.css +9 -2
- data/cockpit/edit.html +1 -1
- data/cockpit/graph.html +1 -0
- data/cockpit/index.html +2 -2
- data/cockpit/js/details.js +2 -2
- data/cockpit/js/instance.js +162 -112
- data/cockpit/js/wfadaptor.js +20 -14
- data/cockpit/js_libs.zip +0 -0
- data/cockpit/templates/Coopis 2010.xml +109 -14
- data/cockpit/templates/Frames.xml +297 -0
- data/cockpit/templates/Subprocess.xml +54 -6
- data/cockpit/templates/Wait.xml +5 -11
- data/cockpit/templates/Worklist.xml +58 -26
- data/cockpit/themes/compact/rngs/call.rng +127 -86
- data/cockpit/themes/compact/rngs/callmanipulate.rng +32 -7
- data/cockpit/themes/compact/rngs/closed_loop_control.rng +2 -2
- data/cockpit/themes/compact/rngs/closed_loop_measuring.rng +3 -3
- data/cockpit/themes/compact/rngs/start.rng +110 -72
- data/cockpit/themes/compact/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/compact/symbols/callmanipulate.svg +3 -3
- data/cockpit/themes/compact/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/compact/symbols/delete.svg +4 -0
- data/cockpit/themes/compact/symbols/start_event.svg +5 -0
- data/cockpit/themes/compact/symbols/test.svg +74 -0
- data/cockpit/themes/compact/theme.js +105 -9
- data/cockpit/themes/control/rngs/call.rng +127 -86
- data/cockpit/themes/control/rngs/callmanipulate.rng +32 -7
- data/cockpit/themes/control/rngs/closed_loop_control.rng +2 -2
- data/cockpit/themes/control/rngs/closed_loop_measuring.rng +3 -3
- data/cockpit/themes/control/rngs/start.rng +110 -72
- data/cockpit/themes/control/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/control/symbols/callmanipulate.svg +3 -3
- data/cockpit/themes/control/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/control/symbols/delete.svg +4 -0
- data/cockpit/themes/control/symbols/start_event.svg +5 -0
- data/cockpit/themes/control/symbols/test.svg +74 -0
- data/cockpit/themes/control/theme.js +53 -7
- data/cockpit/themes/default/rngs/call.rng +127 -86
- data/cockpit/themes/default/rngs/callmanipulate.rng +32 -7
- data/cockpit/themes/default/rngs/closed_loop_control.rng +2 -2
- data/cockpit/themes/default/rngs/closed_loop_measuring.rng +3 -3
- data/cockpit/themes/default/rngs/start.rng +110 -72
- data/cockpit/themes/default/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/default/symbols/callmanipulate.svg +3 -3
- data/cockpit/themes/default/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/default/symbols/delete.svg +4 -0
- data/cockpit/themes/default/symbols/start_event.svg +5 -0
- data/cockpit/themes/default/symbols/test.svg +74 -0
- data/cockpit/themes/default/theme.js +105 -9
- data/cockpit/themes/extended/rngs/call.rng +127 -86
- data/cockpit/themes/extended/rngs/callmanipulate.rng +32 -7
- data/cockpit/themes/extended/rngs/closed_loop_control.rng +2 -2
- data/cockpit/themes/extended/rngs/closed_loop_measuring.rng +3 -3
- data/cockpit/themes/extended/rngs/start.rng +110 -72
- data/cockpit/themes/extended/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/extended/symbols/callmanipulate.svg +3 -3
- data/cockpit/themes/extended/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/extended/symbols/delete.svg +4 -0
- data/cockpit/themes/extended/symbols/start_event.svg +5 -0
- data/cockpit/themes/extended/symbols/test.svg +74 -0
- data/cockpit/themes/extended/theme.js +105 -9
- data/cockpit/themes/model/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/model/symbols/callmanipulate.svg +3 -3
- data/cockpit/themes/model/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/model/symbols/delete.svg +4 -0
- data/cockpit/themes/model/symbols/start_event.svg +5 -0
- data/cockpit/themes/model/symbols/test.svg +74 -0
- data/cockpit/themes/model/theme.js +50 -4
- data/cockpit/themes/packed/rngs/call.rng +127 -86
- data/cockpit/themes/packed/rngs/callmanipulate.rng +32 -7
- data/cockpit/themes/packed/rngs/closed_loop_control.rng +2 -2
- data/cockpit/themes/packed/rngs/closed_loop_measuring.rng +3 -3
- data/cockpit/themes/packed/rngs/start.rng +110 -72
- data/cockpit/themes/packed/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/packed/symbols/callmanipulate.svg +3 -3
- data/cockpit/themes/packed/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/packed/symbols/delete.svg +4 -0
- data/cockpit/themes/packed/symbols/start_event.svg +5 -0
- data/cockpit/themes/packed/symbols/test.svg +74 -0
- data/cockpit/themes/packed/theme.js +105 -9
- data/cockpit/themes/preset/rngs/call.rng +127 -86
- data/cockpit/themes/preset/rngs/callmanipulate.rng +32 -7
- data/cockpit/themes/preset/rngs/closed_loop_control.rng +2 -2
- data/cockpit/themes/preset/rngs/closed_loop_measuring.rng +3 -3
- data/cockpit/themes/preset/rngs/start.rng +110 -72
- data/cockpit/themes/preset/symbols/call_sensor.svg +9 -0
- data/cockpit/themes/preset/symbols/callmanipulate.svg +3 -3
- data/cockpit/themes/preset/symbols/callmanipulate_sensor.svg +11 -0
- data/cockpit/themes/preset/symbols/delete.svg +4 -0
- data/cockpit/themes/preset/symbols/start_event.svg +5 -0
- data/cockpit/themes/preset/symbols/test.svg +74 -0
- data/cockpit/themes/preset/theme.js +105 -9
- data/cpee.gemspec +6 -5
- data/lib/cpee/fail.rb +23 -0
- data/lib/cpee/implementation.rb +144 -49
- data/lib/cpee/implementation_callbacks.rb +11 -10
- data/lib/cpee/implementation_notifications.rb +4 -3
- data/lib/cpee/implementation_properties.rb +2 -2
- data/lib/cpee/message.rb +49 -15
- data/lib/cpee/persistence.rb +34 -12
- data/lib/cpee.xml +1 -1
- data/server/executionhandlers/ruby/backend/instance.template +1 -1
- data/server/executionhandlers/ruby/backend/run +4 -4
- data/server/executionhandlers/ruby/connection.rb +93 -34
- data/server/executionhandlers/ruby/controller.rb +29 -19
- data/server/executionhandlers/ruby/desc.xml +107 -0
- data/server/executionhandlers/ruby/dsl_to_dslx.xsl +67 -24
- data/server/executionhandlers/ruby/execution.rb +1 -0
- data/server/resources/states.xml +3 -0
- data/server/resources/test.pdf +0 -0
- data/server/resources/topics.xml +4 -2
- data/server/routing/end.pid +1 -0
- data/server/routing/end.rb +3 -2
- data/server/routing/forward-events-00.pid +1 -0
- data/server/routing/forward-events.rb +26 -13
- data/server/routing/forward-votes.pid +1 -0
- data/server/routing/forward-votes.rb +4 -4
- data/server/routing/persist.pid +1 -0
- data/server/routing/persist.rb +41 -31
- data/server/server.pid +1 -0
- data/tools/cpee +99 -24
- metadata +80 -32
- data/cockpit/templates/Coopis 2010.xml.active +0 -1
- data/cockpit/templates/Coopis 2010.xml.active-uuid +0 -1
- data/cockpit/templates/Subprocess.xml.active +0 -1
- data/cockpit/templates/Subprocess.xml.active-uuid +0 -1
- data/cockpit/templates/Track Test.xml.active +0 -1
- data/cockpit/templates/Track Test.xml.active-uuid +0 -1
- data/cockpit/templates/UR-VUE 2020 Solution Baseline.xml.active +0 -1
- data/cockpit/templates/UR-VUE 2020 Solution Baseline.xml.active-uuid +0 -1
- data/cockpit/templates/Wait.xml.active +0 -1
- data/cockpit/templates/Wait.xml.active-uuid +0 -1
- data/cockpit/templates/Wait.xml.attrs +0 -13
- data/server/executionhandlers/ruby/test.xml +0 -43
@@ -0,0 +1,74 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
2
|
+
<svg
|
3
|
+
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
4
|
+
xmlns:cc="http://creativecommons.org/ns#"
|
5
|
+
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
6
|
+
xmlns:svg="http://www.w3.org/2000/svg"
|
7
|
+
xmlns="http://www.w3.org/2000/svg"
|
8
|
+
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
9
|
+
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
10
|
+
class="clickable"
|
11
|
+
version="1.1"
|
12
|
+
id="svg10"
|
13
|
+
sodipodi:docname="test.svg"
|
14
|
+
inkscape:version="1.0.2 (e86c870879, 2021-01-15)">
|
15
|
+
<metadata
|
16
|
+
id="metadata16">
|
17
|
+
<rdf:RDF>
|
18
|
+
<cc:Work
|
19
|
+
rdf:about="">
|
20
|
+
<dc:format>image/svg+xml</dc:format>
|
21
|
+
<dc:type
|
22
|
+
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
23
|
+
</cc:Work>
|
24
|
+
</rdf:RDF>
|
25
|
+
</metadata>
|
26
|
+
<defs
|
27
|
+
id="defs14" />
|
28
|
+
<sodipodi:namedview
|
29
|
+
pagecolor="#ffffff"
|
30
|
+
bordercolor="#666666"
|
31
|
+
borderopacity="1"
|
32
|
+
objecttolerance="10"
|
33
|
+
gridtolerance="10"
|
34
|
+
guidetolerance="10"
|
35
|
+
inkscape:pageopacity="0"
|
36
|
+
inkscape:pageshadow="2"
|
37
|
+
inkscape:window-width="2062"
|
38
|
+
inkscape:window-height="1298"
|
39
|
+
id="namedview12"
|
40
|
+
showgrid="false"
|
41
|
+
inkscape:zoom="35.146667"
|
42
|
+
inkscape:cx="13.036699"
|
43
|
+
inkscape:cy="13.350011"
|
44
|
+
inkscape:window-x="0"
|
45
|
+
inkscape:window-y="27"
|
46
|
+
inkscape:window-maximized="0"
|
47
|
+
inkscape:current-layer="svg10" />
|
48
|
+
<rect
|
49
|
+
transform="rotate(45,14,12)"
|
50
|
+
x="7"
|
51
|
+
y="3"
|
52
|
+
width="21"
|
53
|
+
height="21"
|
54
|
+
class="cline hfill stand"
|
55
|
+
id="rect2"
|
56
|
+
style="fill:#3465a4" />
|
57
|
+
<circle
|
58
|
+
cx="15.5"
|
59
|
+
cy="15.5"
|
60
|
+
r="7"
|
61
|
+
class="stand"
|
62
|
+
id="circle4" />
|
63
|
+
<circle
|
64
|
+
cx="15.5"
|
65
|
+
cy="15.5"
|
66
|
+
r="7"
|
67
|
+
class="stand"
|
68
|
+
id="circle6" />
|
69
|
+
<path
|
70
|
+
d="m 15.500001,11.435193 3.825246,2.779205 -1.461114,4.496849 h -4.728265 l -1.461115,-4.496849 z"
|
71
|
+
class="stand"
|
72
|
+
id="path8"
|
73
|
+
style="fill:#ef2929;stroke-width:1" />
|
74
|
+
</svg>
|
@@ -93,7 +93,7 @@ function WFAdaptorManifestation(adaptor) {
|
|
93
93
|
|
94
94
|
nodes = JSON.parse(nodes);
|
95
95
|
$(nodes).each(function(key,str) {
|
96
|
-
nodes[key] = $X(str)
|
96
|
+
nodes[key] = $X(str);
|
97
97
|
});
|
98
98
|
|
99
99
|
var check1 = [];
|
@@ -176,14 +176,44 @@ function WFAdaptorManifestation(adaptor) {
|
|
176
176
|
|
177
177
|
if(xml_node.get(0).tagName != 'description' && !self.elements[xml_node.get(0).tagName].neverdelete) {
|
178
178
|
var icon = self.elements[xml_node.get(0).tagName].illustrator.svg.clone();
|
179
|
-
icon.
|
179
|
+
icon.find('.rfill').addClass('menu');
|
180
|
+
icon.find('.hfill').addClass('menu');
|
180
181
|
menu['Delete'] = [{
|
181
182
|
'label': 'Remove Element',
|
182
|
-
'function_call': function(selector,target,selected){
|
183
|
+
'function_call': function(selector,target,selected){
|
184
|
+
del_ui_pos(target)
|
185
|
+
self.adaptor.description.remove(selector,target);
|
186
|
+
localStorage.removeItem('marked');
|
187
|
+
localStorage.removeItem('marked_from');
|
188
|
+
},
|
183
189
|
'menu_icon': icon,
|
184
190
|
'type': undefined,
|
185
191
|
'params': [null, xml_node, self.selected()]
|
186
192
|
}];
|
193
|
+
var nodes = localStorage.getItem('marked');
|
194
|
+
nodes = JSON.parse(nodes);
|
195
|
+
if (nodes && nodes.length > 0) {
|
196
|
+
var icond = self.resources['delete'].clone();
|
197
|
+
icond.children('.standfat').addClass('menu');
|
198
|
+
menu['Delete'].push({
|
199
|
+
'label': 'Remove Marked Elements',
|
200
|
+
'function_call': function(){
|
201
|
+
$(nodes).each(function(key,str) {
|
202
|
+
nodes[key] = $X(str);
|
203
|
+
});
|
204
|
+
$(nodes).each(function(key,node){
|
205
|
+
var target = self.adaptor.description.get_node_by_svg_id($(node).attr('svg-id'));
|
206
|
+
del_ui_pos(target)
|
207
|
+
self.adaptor.description.remove(null,target);
|
208
|
+
localStorage.removeItem('marked');
|
209
|
+
localStorage.removeItem('marked_from');
|
210
|
+
});
|
211
|
+
},
|
212
|
+
'menu_icon': icond,
|
213
|
+
'type': undefined,
|
214
|
+
'params': []
|
215
|
+
})
|
216
|
+
}
|
187
217
|
}
|
188
218
|
if($('> code', xml_node).length > 0 && xml_node.get(0).tagName == 'call') {
|
189
219
|
var icon = self.elements.callmanipulate.illustrator.svg.clone();
|
@@ -198,7 +228,7 @@ function WFAdaptorManifestation(adaptor) {
|
|
198
228
|
}
|
199
229
|
if (xml_node.get(0).tagName == "call" || xml_node.get(0).tagName == "manipulate" || xml_node.get(0).tagName == "stop") {
|
200
230
|
var icon = self.elements.call.illustrator.svg.clone();
|
201
|
-
icon.children('g.replace').addClass('
|
231
|
+
icon.children('g.replace').addClass('passive');
|
202
232
|
var vtarget = self.adaptor.illustrator.get_node_by_svg_id(svgid);
|
203
233
|
if (vtarget.length > 0) {
|
204
234
|
if (vtarget.parents('g.activities.passive, g.activities.active').length > 0) {
|
@@ -223,6 +253,18 @@ function WFAdaptorManifestation(adaptor) {
|
|
223
253
|
new CustomMenu(e).contextmenu(menu);
|
224
254
|
} //}}}
|
225
255
|
|
256
|
+
function positionHandling(svgid) {
|
257
|
+
var xml_node = self.adaptor.description.get_node_by_svg_id(svgid);
|
258
|
+
var vtarget = self.adaptor.illustrator.get_node_by_svg_id(svgid);
|
259
|
+
if (vtarget.length > 0) {
|
260
|
+
if (vtarget.parents('g.activities.passive, g.activities.active').length > 0) {
|
261
|
+
del_ui_pos(xml_node);
|
262
|
+
} else {
|
263
|
+
add_ui_pos(xml_node);
|
264
|
+
}
|
265
|
+
}
|
266
|
+
}
|
267
|
+
|
226
268
|
// Events
|
227
269
|
this.events.touchend = function(svgid, e) { // {{{
|
228
270
|
clearTimeout(self.presstimer);
|
@@ -234,6 +276,7 @@ function WFAdaptorManifestation(adaptor) {
|
|
234
276
|
this.events.mousedown = function(svgid, e, child, sibling) { // {{{
|
235
277
|
if(e.button == 0) { // left-click
|
236
278
|
} else if(e.button == 1) { // middle-click
|
279
|
+
positionHandling(svgid);
|
237
280
|
} else if(e.button == 2) { // right-click
|
238
281
|
contextMenuHandling(svgid,e,child,sibling);
|
239
282
|
}
|
@@ -266,6 +309,8 @@ function WFAdaptorManifestation(adaptor) {
|
|
266
309
|
localStorage.removeItem('marked_from');
|
267
310
|
}
|
268
311
|
}
|
312
|
+
} else if (e && (e.shiftKey)) {
|
313
|
+
positionHandling(svgid);
|
269
314
|
} else {
|
270
315
|
self.adaptor.illustrator.get_elements().removeClass('marked');
|
271
316
|
localStorage.removeItem('marked');
|
@@ -299,6 +344,7 @@ function WFAdaptorManifestation(adaptor) {
|
|
299
344
|
|
300
345
|
// other resources
|
301
346
|
this.resources.arrow = self.adaptor.theme_dir + 'symbols/arrow.svg';
|
347
|
+
this.resources.delete = self.adaptor.theme_dir + 'symbols/delete.svg';
|
302
348
|
|
303
349
|
// Primitive Elements
|
304
350
|
this.elements.call = { /*{{{*/
|
@@ -311,10 +357,18 @@ function WFAdaptorManifestation(adaptor) {
|
|
311
357
|
},
|
312
358
|
'info': function(node){ return { 'element-endpoint': $(node).attr('endpoint') }; },
|
313
359
|
'resolve_symbol': function(node) {
|
314
|
-
if($('
|
315
|
-
|
360
|
+
if ($('> annotations > _context_data_analysis > probes > probe', node).length > 0) {
|
361
|
+
if ($('> code', node).length > 0) {
|
362
|
+
return 'callmanipulate_sensor';
|
363
|
+
} else {
|
364
|
+
return 'call_sensor';
|
365
|
+
}
|
316
366
|
} else {
|
317
|
-
|
367
|
+
if ($('> code', node).length > 0) {
|
368
|
+
return 'callmanipulate';
|
369
|
+
} else {
|
370
|
+
return 'call';
|
371
|
+
}
|
318
372
|
}
|
319
373
|
},
|
320
374
|
'svg': self.adaptor.theme_dir + 'symbols/call.svg'
|
@@ -1169,6 +1223,30 @@ function WFAdaptorManifestation(adaptor) {
|
|
1169
1223
|
'expansion': function(node) {
|
1170
1224
|
return 'vertical';
|
1171
1225
|
},
|
1226
|
+
'resolve_symbol': function(node) {
|
1227
|
+
let plist = []
|
1228
|
+
let dirty = false
|
1229
|
+
$('*:not(:has(*))',node).each(function(i,n) {
|
1230
|
+
let lines = n.textContent.split(/(\r\n)|\n|;/)
|
1231
|
+
for (const l of lines) {
|
1232
|
+
if (l != null) {
|
1233
|
+
let m0 = l.match(/^[^=]*data\.([a-z0-9A-Z_]+)[^=]*=/)
|
1234
|
+
if (m0 != null) {
|
1235
|
+
plist.push(m0[1])
|
1236
|
+
}
|
1237
|
+
let m1 = l.match(/=[^=].*data\.([a-z0-9A-Z_]+)/)
|
1238
|
+
let m2 = l.match(/^[^=]*data\.([a-z0-9A-Z_]+)[^=]*$/)
|
1239
|
+
if (m1 != null && !plist.includes(m1[1])) {
|
1240
|
+
dirty = true
|
1241
|
+
}
|
1242
|
+
if (m2 != null && !plist.includes(m2[1])) {
|
1243
|
+
dirty = true
|
1244
|
+
}
|
1245
|
+
}
|
1246
|
+
}
|
1247
|
+
})
|
1248
|
+
if (dirty) { return 'start_event'; }
|
1249
|
+
},
|
1172
1250
|
'closing_symbol': 'end',
|
1173
1251
|
'col_shift': function(node) {
|
1174
1252
|
return true;
|
@@ -1242,13 +1320,31 @@ function WFAdaptorManifestation(adaptor) {
|
|
1242
1320
|
// Abstract Elements
|
1243
1321
|
// * they may only have an illustrator (or other parts)
|
1244
1322
|
// * they HAVE TO have a parent
|
1323
|
+
this.elements.start_event = { /*{{{*/
|
1324
|
+
'parent': 'start',
|
1325
|
+
'illustrator': {//{{{
|
1326
|
+
'svg': self.adaptor.theme_dir + 'symbols/start_event.svg'
|
1327
|
+
}//}}}
|
1328
|
+
}; /*}}}*/
|
1329
|
+
this.elements.call_sensor = { /*{{{*/
|
1330
|
+
'parent': 'call',
|
1331
|
+
'illustrator': {//{{{
|
1332
|
+
'svg': self.adaptor.theme_dir + 'symbols/call_sensor.svg'
|
1333
|
+
}//}}}
|
1334
|
+
}; /*}}}*/
|
1245
1335
|
this.elements.callmanipulate = { /*{{{*/
|
1246
1336
|
'parent': 'call',
|
1247
1337
|
'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
|
1248
1338
|
'illustrator': {//{{{
|
1249
|
-
'info': function(node){ return { 'element-endpoint': $(node).attr('endpoint') }; },
|
1250
1339
|
'svg': self.adaptor.theme_dir + 'symbols/callmanipulate.svg'
|
1251
|
-
}
|
1340
|
+
}//}}}
|
1341
|
+
}; /*}}}*/
|
1342
|
+
this.elements.callmanipulate_sensor = { /*{{{*/
|
1343
|
+
'parent': 'call',
|
1344
|
+
'description': self.adaptor.theme_dir + 'rngs/callmanipulate.rng',
|
1345
|
+
'illustrator': {//{{{
|
1346
|
+
'svg': self.adaptor.theme_dir + 'symbols/callmanipulate_sensor.svg'
|
1347
|
+
}//}}}
|
1252
1348
|
}; /*}}}*/
|
1253
1349
|
this.elements.loop_head = { /*{{{*/
|
1254
1350
|
'parent': 'loop',
|
@@ -27,6 +27,14 @@
|
|
27
27
|
</element>
|
28
28
|
</element>
|
29
29
|
<element name="annotations" rngui:header="Annotations">
|
30
|
+
<element name="_generic" rngui:header="Generic" rngui:fold="closed">
|
31
|
+
<zeroOrMore rngui:label="Create Annotation Pair">
|
32
|
+
<element rngui:label="Name" rngui:labeltype="xml">
|
33
|
+
<anyName/>
|
34
|
+
<data type="string" rngui:label="Value"/>
|
35
|
+
</element>
|
36
|
+
</zeroOrMore>
|
37
|
+
</element>
|
30
38
|
<element name="_timing" rngui:header="Timing" rngui:fold="closed">
|
31
39
|
<element name="_timing_weight" rngui:label="ω - Weight">
|
32
40
|
<data type="float" rngui:label="[0,1]"/>
|
@@ -34,92 +42,6 @@
|
|
34
42
|
<element name="_timing_avg" rngui:label="Avg in min">
|
35
43
|
<data type="float" rngui:label="Minutes"/>
|
36
44
|
</element>
|
37
|
-
<element name="_context_data_analysis" rngui:header="Context Data Analysis" rngui:hint="All data returned from the endpoint implementing this task as well as arbitray external data streams can be consumed and transformed in data probes. All probes can be the basis for impact factors. Please go to start to define instance data probes.">
|
38
|
-
|
39
|
-
<element name="probes" rngui:header="Data Probes - Context Data Extraction" rngui:fold="closed">
|
40
|
-
<zeroOrMore rngui:label="Add Probe">
|
41
|
-
<element name="probe">
|
42
|
-
<element name="name" rngui:label="Label">
|
43
|
-
<data type="string" rngui:label="Label"/>
|
44
|
-
</element>
|
45
|
-
<element name="extractor_type" rngui:label="Extractor Type">
|
46
|
-
<choice>
|
47
|
-
<value id='code'>Code</value>
|
48
|
-
<value id='service'>Service</value>
|
49
|
-
</choice>
|
50
|
-
</element>
|
51
|
-
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For extrinsic data'>
|
52
|
-
<text rngui:label="Code"/>
|
53
|
-
</element>
|
54
|
-
<element name="extractor_url" rngui:label="Extractor Service" rngui:hint='For extrinsic & discrete data'>
|
55
|
-
<data type="string" rngui:label="Service Url"/>
|
56
|
-
</element>
|
57
|
-
<element name="extractor_params" rngui:label="Extractor Service Arguments:">
|
58
|
-
<zeroOrMore rngui:label="Create Argument Pairs">
|
59
|
-
<element rngui:label="Name">
|
60
|
-
<anyName/>
|
61
|
-
<data type="string" rngui:label="Value / Json"/>
|
62
|
-
</element>
|
63
|
-
</zeroOrMore>
|
64
|
-
</element>
|
65
|
-
<element name="visualizer_url" rngui:label="Visualizer Url">
|
66
|
-
<data type="string" rngui:label="Service Url"/>
|
67
|
-
</element>
|
68
|
-
<element name="visualizer_params" rngui:label="Visualizer Arguments">
|
69
|
-
<zeroOrMore rngui:label="Create Argument Pairs">
|
70
|
-
<element rngui:label="Name">
|
71
|
-
<anyName/>
|
72
|
-
<data type="string" rngui:label="Value / Json"/>
|
73
|
-
</element>
|
74
|
-
</zeroOrMore>
|
75
|
-
</element>
|
76
|
-
</element>
|
77
|
-
</zeroOrMore>
|
78
|
-
</element>
|
79
|
-
|
80
|
-
<element name="ips" rngui:header="Impact Profiles" rngui:fold="closed">
|
81
|
-
<zeroOrMore rngui:label="Add Impact Profile">
|
82
|
-
<element name="ip">
|
83
|
-
<element name="name" rngui:label="Label">
|
84
|
-
<data type="string" rngui:label="Label"/>
|
85
|
-
</element>
|
86
|
-
<element name="target" rngui:label="Target Value">
|
87
|
-
<data type="string" rngui:label="Value"/>
|
88
|
-
</element>
|
89
|
-
<element name="ifs" rngui:header="Impact Factors">
|
90
|
-
<zeroOrMore rngui:label="Add Impact Factor">
|
91
|
-
<element name="if">
|
92
|
-
<element name="ivs" rngui:header="Impact Values">
|
93
|
-
<zeroOrMore rngui:label="Add Impact Value ">
|
94
|
-
<element name="iv">
|
95
|
-
<element name="extractor_url" rngui:label="Extractor Url">
|
96
|
-
<data type="string" rngui:label="Service Url + Parameters"/>
|
97
|
-
</element>
|
98
|
-
<element name="aggregator_url" rngui:label="Aggregator Url">
|
99
|
-
<data type="string" rngui:label="Service Url + Parameters"/>
|
100
|
-
</element>
|
101
|
-
</element>
|
102
|
-
</zeroOrMore>
|
103
|
-
</element>
|
104
|
-
<element name="aggregator_url" rngui:label="Impact Function Url">
|
105
|
-
<data type="string" rngui:label="Service Url + Parameters"/>
|
106
|
-
</element>
|
107
|
-
</element>
|
108
|
-
</zeroOrMore>
|
109
|
-
</element>
|
110
|
-
<element name="vfunc_url" rngui:label="Violation Function Url">
|
111
|
-
<data type="string" rngui:label="Service Url + Parameters"/>
|
112
|
-
</element>
|
113
|
-
</element>
|
114
|
-
</zeroOrMore>
|
115
|
-
</element>
|
116
|
-
|
117
|
-
</element>
|
118
|
-
<element name="report" rngui:header="Reporting" rngui:fold="closed">
|
119
|
-
<element name="url" rngui:label='HTML Snippet'>
|
120
|
-
<data type="string" rngui:label="url to report snippet"/>
|
121
|
-
</element>
|
122
|
-
</element>
|
123
45
|
<element name="explanations" rngui:header="Explanations">
|
124
46
|
<zeroOrMore rngui:label="Add Explanation">
|
125
47
|
<element name="explanation">
|
@@ -149,12 +71,131 @@
|
|
149
71
|
</zeroOrMore>
|
150
72
|
</element>
|
151
73
|
</element>
|
74
|
+
<element name="_shifting" rngui:header="Log Time Shifting" rngui:fold="closed_conditional">
|
75
|
+
<element name="_shifting_type" rngui:label="Type">
|
76
|
+
<choice>
|
77
|
+
<value>Duration</value>
|
78
|
+
<value>Ends</value>
|
79
|
+
</choice>
|
80
|
+
</element>
|
81
|
+
<optional>
|
82
|
+
<element name="_shifting_expression" rngui:label="Expression">
|
83
|
+
<data type="string" rngui:label="e.g.: same day, 16:00; 2 and a half weeks"/>
|
84
|
+
</element>
|
85
|
+
</optional>
|
86
|
+
</element>
|
87
|
+
<element name="_context_data_analysis" rngui:header="Context Data Analysis" rngui:hint="All data returned from the endpoint implementing this task as well as arbitray external data streams can be consumed and transformed in data probes. All probes can be the basis for impact factors. Please go to start to define instance data probes.">
|
88
|
+
<element name="probes" rngui:header="Data Probes - Context Data Extraction" rngui:fold="closed_conditional">
|
89
|
+
<zeroOrMore rngui:label="Add Probe">
|
90
|
+
<element name="probe">
|
91
|
+
<element name="id" rngui:label="ID">
|
92
|
+
<data type="string" rngui:label="ID"/>
|
93
|
+
</element>
|
94
|
+
<element name="source" rngui:label="Source">
|
95
|
+
<data type="string" rngui:label="Where does the sensor value come from?"/>
|
96
|
+
</element>
|
97
|
+
<element name="extractor_type" rngui:label="Extractor Type">
|
98
|
+
<choice>
|
99
|
+
<value id='intrinsic'>Intrinsic</value>
|
100
|
+
<value id='extrinsic'>Extrinsic</value>
|
101
|
+
<value id='separate'>Separate</value>
|
102
|
+
</choice>
|
103
|
+
</element>
|
104
|
+
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
105
|
+
<text rngui:label="Code"/>
|
106
|
+
</element>
|
107
|
+
<element name="extractor_url" rngui:label="Extractor Service" rngui:hint='For separate data'>
|
108
|
+
<data type="string" rngui:label="Service Url"/>
|
109
|
+
</element>
|
110
|
+
<element name="extractor_params" rngui:label="Extractor Service Arguments:">
|
111
|
+
<zeroOrMore rngui:label="Create Argument Pairs">
|
112
|
+
<element rngui:label="Name">
|
113
|
+
<anyName/>
|
114
|
+
<data type="string" rngui:label="Value / Json"/>
|
115
|
+
</element>
|
116
|
+
</zeroOrMore>
|
117
|
+
</element>
|
118
|
+
<element name="visualizer_url" rngui:label="Visualizer Url">
|
119
|
+
<data type="string" rngui:label="Service Url"/>
|
120
|
+
</element>
|
121
|
+
<element name="visualizer_params" rngui:label="Visualizer Arguments">
|
122
|
+
<zeroOrMore rngui:label="Create Argument Pairs">
|
123
|
+
<element rngui:label="Name">
|
124
|
+
<anyName/>
|
125
|
+
<data type="string" rngui:label="Value / Json"/>
|
126
|
+
</element>
|
127
|
+
</zeroOrMore>
|
128
|
+
</element>
|
129
|
+
</element>
|
130
|
+
</zeroOrMore>
|
131
|
+
</element>
|
132
|
+
|
133
|
+
<element name="ips" rngui:header="Impact Profiles" rngui:fold="closed">
|
134
|
+
<zeroOrMore rngui:label="Add Impact Profile">
|
135
|
+
<element name="ip">
|
136
|
+
<element name="name" rngui:label="Label">
|
137
|
+
<data type="string" rngui:label="Label"/>
|
138
|
+
</element>
|
139
|
+
<element name="target" rngui:label="Target Value">
|
140
|
+
<data type="string" rngui:label="Value"/>
|
141
|
+
</element>
|
142
|
+
<element name="ifs" rngui:header="Impact Factors">
|
143
|
+
<zeroOrMore rngui:label="Add Impact Factor">
|
144
|
+
<element name="if">
|
145
|
+
<element name="ivs" rngui:header="Impact Values">
|
146
|
+
<zeroOrMore rngui:label="Add Impact Value ">
|
147
|
+
<element name="iv">
|
148
|
+
<element name="extractor_url" rngui:label="Extractor Url">
|
149
|
+
<data type="string" rngui:label="Service Url + Parameters"/>
|
150
|
+
</element>
|
151
|
+
<element name="extractor_params" rngui:header="Extractor Arguments">
|
152
|
+
<zeroOrMore rngui:label="Create Extractor Argument Pairs">
|
153
|
+
<element rngui:label="Name">
|
154
|
+
<anyName/>
|
155
|
+
<data type="string" rngui:label="Value / Json"/>
|
156
|
+
</element>
|
157
|
+
</zeroOrMore>
|
158
|
+
</element>
|
159
|
+
<element name="aggregator_url" rngui:label="Aggregator Url">
|
160
|
+
<data type="string" rngui:label="Service Url + Parameters"/>
|
161
|
+
</element>
|
162
|
+
<element name="aggregator_params" rngui:header="Extractor Arguments">
|
163
|
+
<zeroOrMore rngui:label="Create Aggregator Argument Pairs">
|
164
|
+
<element rngui:label="Name">
|
165
|
+
<anyName/>
|
166
|
+
<data type="string" rngui:label="Value / Json"/>
|
167
|
+
</element>
|
168
|
+
</zeroOrMore>
|
169
|
+
</element>
|
170
|
+
</element>
|
171
|
+
</zeroOrMore>
|
172
|
+
</element>
|
173
|
+
<element name="aggregator_url" rngui:label="Impact Function Url">
|
174
|
+
<data type="string" rngui:label="Service Url + Parameters"/>
|
175
|
+
</element>
|
176
|
+
</element>
|
177
|
+
</zeroOrMore>
|
178
|
+
</element>
|
179
|
+
<element name="vfunc_url" rngui:label="Violation Function Url">
|
180
|
+
<data type="string" rngui:label="Service Url + Parameters"/>
|
181
|
+
</element>
|
182
|
+
</element>
|
183
|
+
</zeroOrMore>
|
184
|
+
</element>
|
185
|
+
|
186
|
+
</element>
|
187
|
+
<element name="report" rngui:header="Reporting" rngui:fold="closed">
|
188
|
+
<element name="url" rngui:label='HTML Snippet'>
|
189
|
+
<data type="string" rngui:label="url to report snippet"/>
|
190
|
+
</element>
|
191
|
+
</element>
|
152
192
|
<element name="_notes" rngui:header="Notes" rngui:fold="closed">
|
153
193
|
<element name="_notes_general" rngui:label="General">
|
154
194
|
<text rngui:wrap="true" rngui:label="Notes"/>
|
155
195
|
</element>
|
156
196
|
</element>
|
157
197
|
</element>
|
198
|
+
|
158
199
|
<element name="documentation" rngui:header="Documentation">
|
159
200
|
<element name="input" rngui:header="Input Arguments" rngui:fold="closed">
|
160
201
|
<zeroOrMore rngui:label="Create Argument">
|
@@ -50,6 +50,14 @@
|
|
50
50
|
</element>
|
51
51
|
</element>
|
52
52
|
<element name="annotations" rngui:header="Annotations">
|
53
|
+
<element name="_generic" rngui:header="Generic" rngui:fold="closed">
|
54
|
+
<zeroOrMore rngui:label="Create Annotation Pair">
|
55
|
+
<element rngui:label="Name" rngui:labeltype="xml">
|
56
|
+
<anyName/>
|
57
|
+
<data type="string" rngui:label="Value"/>
|
58
|
+
</element>
|
59
|
+
</zeroOrMore>
|
60
|
+
</element>
|
53
61
|
<element name="_timing" rngui:header="Timing" rngui:fold="closed">
|
54
62
|
<element name="_timing_weight" rngui:label="ω - Weight">
|
55
63
|
<data type="float" rngui:label="[0,1]"/>
|
@@ -86,24 +94,41 @@
|
|
86
94
|
</zeroOrMore>
|
87
95
|
</element>
|
88
96
|
</element>
|
97
|
+
<element name="_shifting" rngui:header="Log Time Shifting" rngui:fold="closed_conditional">
|
98
|
+
<element name="_shifting_type" rngui:label="Type">
|
99
|
+
<choice>
|
100
|
+
<value>Duration</value>
|
101
|
+
<value>Ends</value>
|
102
|
+
</choice>
|
103
|
+
</element>
|
104
|
+
<optional>
|
105
|
+
<element name="_shifting_expression" rngui:label="Expression">
|
106
|
+
<data type="string" rngui:label="e.g.: same day, 16:00; 2 and a half weeks"/>
|
107
|
+
</element>
|
108
|
+
</optional>
|
109
|
+
</element>
|
89
110
|
<element name="_context_data_analysis" rngui:header="Context Data Analysis" rngui:hint="All data returned from the endpoint implementing this task as well as arbitray external data streams can be consumed and transformed in data probes. All probes can be the basis for impact factors. Please go to start to define instance data probes.">
|
90
111
|
|
91
|
-
<element name="probes" rngui:header="Data Probes - Context Data Extraction" rngui:fold="
|
112
|
+
<element name="probes" rngui:header="Data Probes - Context Data Extraction" rngui:fold="closed_conditional">
|
92
113
|
<zeroOrMore rngui:label="Add Probe">
|
93
114
|
<element name="probe">
|
94
|
-
<element name="
|
95
|
-
<data type="string" rngui:label="
|
115
|
+
<element name="id" rngui:label="ID">
|
116
|
+
<data type="string" rngui:label="ID"/>
|
117
|
+
</element>
|
118
|
+
<element name="source" rngui:label="Source">
|
119
|
+
<data type="string" rngui:label="Where does the sensor value come from?"/>
|
96
120
|
</element>
|
97
121
|
<element name="extractor_type" rngui:label="Extractor Type">
|
98
122
|
<choice>
|
99
|
-
<value id='
|
100
|
-
<value id='
|
123
|
+
<value id='intrinsic'>Intrinsic</value>
|
124
|
+
<value id='extrinsic'>Extrinsic</value>
|
125
|
+
<value id='separate'>Separate</value>
|
101
126
|
</choice>
|
102
127
|
</element>
|
103
|
-
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For extrinsic data'>
|
128
|
+
<element name="extractor_code" rngui:label="Extractor Code" rngui:hint='For intrinsic & extrinsic data'>
|
104
129
|
<text rngui:label="Code"/>
|
105
130
|
</element>
|
106
|
-
<element name="extractor_url" rngui:label="Extractor Service" rngui:hint='For
|
131
|
+
<element name="extractor_url" rngui:label="Extractor Service" rngui:hint='For separate data'>
|
107
132
|
<data type="string" rngui:label="Service Url"/>
|
108
133
|
</element>
|
109
134
|
<element name="extractor_params" rngui:label="Extractor Service Arguments:">
|
@@ -1,6 +1,6 @@
|
|
1
1
|
<element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_control" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
2
|
-
<attribute name="
|
3
|
-
<data type="
|
2
|
+
<attribute name="ctime" rngui:label="Cycle time in ms" rngui:default="100">
|
3
|
+
<data type="integer" rngui:label="ms"/>
|
4
4
|
</attribute>
|
5
5
|
<element name="_expected" rngui:header="Values Expected to Change">
|
6
6
|
<zeroOrMore rngui:label="Add Value">
|
@@ -1,8 +1,8 @@
|
|
1
1
|
<element xmlns="http://relaxng.org/ns/structure/1.0" xmlns:rngui="http://rngui.org" rngui:version="1.2" ns="http://cpee.org/ns/description/1.0" name="closed_loop_measuring" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
2
|
-
<attribute name="
|
3
|
-
<data type="
|
2
|
+
<attribute name="ctime" rngui:label="Cycle time in ms" rngui:default="100">
|
3
|
+
<data type="integer" rngui:label="ms"/>
|
4
4
|
</attribute>
|
5
|
-
<element name="_expected" rngui:header="Values
|
5
|
+
<element name="_expected" rngui:header="Measured Values">
|
6
6
|
<zeroOrMore rngui:label="Add Value">
|
7
7
|
<element name="value" rngui:label="Value">
|
8
8
|
<data type="string" rngui:label="a dataelement"/>
|