]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.document.base.ontology/graph/ConnectionPoints.pgraph
Redirect document commandRelation and commandExecutorRelation terminals
[simantics/platform.git] / bundles / org.simantics.document.base.ontology / graph / ConnectionPoints.pgraph
1 L0 = <http://www.simantics.org/Layer0-1.1>
2 STR = <http://www.simantics.org/Structural-1.2>
3 DOC = <http://www.simantics.org/Documentation-1.2>
4 RELATIONS = <http://www.simantics.org/Documentation-1.2/Relations>
5 G2D = <http://www.simantics.org/G2D-1.1>
6 DIA = <http://www.simantics.org/Diagram-2.2>
7 MOD = <http://www.simantics.org/Modeling-1.2>
8
9
10 /*** Structure connections ***/
11 DOC.Document.ChildRelation <T STR.ConnectionRelation
12     >-- DOC.Document.ChildRelation.ordinal --> L0.String <R L0.HasProperty
13
14 DOC.Document.IsConnectedToChild <R STR.IsConnectedTo : DOC.Document.ChildRelation
15
16 DOC.ConnectionType : STR.ConnectionType
17     G2D.HasColor [0.8,0.64,0.0] : G2D.Color
18     G2D.HasStrokeType G2D.StrokeType.Scaling
19     G2D.HasStroke _ : G2D.Stroke
20         G2D.HasStrokeWidth 0.2 : L0.Float
21         G2D.HasLineCap G2D.LineCap.ButtCap
22         G2D.HasLineJoin G2D.LineJoin.MiterJoin
23     STR.HasConnectionConstraint
24         DOC.ParentToChildConstraint : DOC.RelationTypeConstraint
25             DOC.RelationTypeConstraint.Type1 RELATIONS.parentRelation
26             DOC.RelationTypeConstraint.Type2 RELATIONS.childRelation
27         DOC.NoSelfConnectionConstraint
28
29 DOC.RelationTypeConstraint <T STR.ConnectionConstraint
30     L0.HasDescription """Ensures that connections are type1-type2 or type2-type1."""
31     >-- DOC.RelationTypeConstraint.Type1 --> STR.ConnectionRelation <R L0.HasProperty : L0.FunctionalRelation
32     >-- DOC.RelationTypeConstraint.Type2 --> STR.ConnectionRelation <R L0.HasProperty : L0.FunctionalRelation
33
34 DOC.NoSelfConnectionConstraint : STR.ConnectionConstraint
35     L0.HasDescription """Ensures that elements cannot connect to themselves"""    
36
37
38 defChildConnectionPoint : L0.Template
39     @template %subject %ordinal
40         %subject <R DOC.Document.IsConnectedToChild
41             DOC.Document.ChildRelation.ordinal %ordinal
42             
43 RELATIONS.parentRelation <T L0.FunctionalRelation <T STR.ConnectionRelation
44     @L0.assert STR.AllowsConnectionType DOC.ConnectionType
45     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.ParentTerminal
46     @L0.assert STR.HasAttachmentRelation DIA.HasPlainConnector
47                 
48 RELATIONS.childRelation <T STR.ConnectionRelation
49     @L0.assert STR.AllowsConnectionType DOC.ConnectionType
50     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.ChildTerminal
51     @L0.assert STR.HasAttachmentRelation DIA.HasArrowConnector
52
53 RELATIONS.functionalChildRelation <T RELATIONS.childRelation <T L0.FunctionalRelation
54
55 RELATIONS.parent : RELATIONS.parentRelation <R STR.IsConnectedTo
56
57 RELATIONS.part1 : RELATIONS.functionalChildRelation
58     @defChildConnectionPoint "1"
59 RELATIONS.part2 : RELATIONS.functionalChildRelation
60     @defChildConnectionPoint "2"
61 RELATIONS.part3 : RELATIONS.functionalChildRelation
62     @defChildConnectionPoint "3"
63 RELATIONS.part4 : RELATIONS.functionalChildRelation
64     @defChildConnectionPoint "4"    
65 RELATIONS.part5 : RELATIONS.functionalChildRelation
66     @defChildConnectionPoint "5"  
67 RELATIONS.part6 : RELATIONS.functionalChildRelation
68     @defChildConnectionPoint "6"  
69 RELATIONS.part7 : RELATIONS.functionalChildRelation
70     @defChildConnectionPoint "7"  
71 RELATIONS.part8 : RELATIONS.functionalChildRelation
72     @defChildConnectionPoint "8"
73 RELATIONS.part9 : RELATIONS.functionalChildRelation
74     @defChildConnectionPoint "9"
75 RELATIONS.part10 : RELATIONS.functionalChildRelation
76     @defChildConnectionPoint "10"
77
78 RELATIONS.part11 : RELATIONS.functionalChildRelation
79     @defChildConnectionPoint "11"
80 RELATIONS.part12 : RELATIONS.functionalChildRelation
81     @defChildConnectionPoint "12"
82 RELATIONS.part13 : RELATIONS.functionalChildRelation
83     @defChildConnectionPoint "13"
84 RELATIONS.part14 : RELATIONS.functionalChildRelation
85     @defChildConnectionPoint "14"
86 RELATIONS.part15 : RELATIONS.functionalChildRelation
87     @defChildConnectionPoint "15"
88 RELATIONS.part16 : RELATIONS.functionalChildRelation
89     @defChildConnectionPoint "16"
90 RELATIONS.part17 : RELATIONS.functionalChildRelation
91     @defChildConnectionPoint "17"
92 RELATIONS.part18 : RELATIONS.functionalChildRelation
93     @defChildConnectionPoint "18"
94 RELATIONS.part19 : RELATIONS.functionalChildRelation
95     @defChildConnectionPoint "19"
96 RELATIONS.part20 : RELATIONS.functionalChildRelation
97     @defChildConnectionPoint "20"
98 RELATIONS.part21 : RELATIONS.functionalChildRelation
99     @defChildConnectionPoint "21"
100 RELATIONS.part22 : RELATIONS.functionalChildRelation
101     @defChildConnectionPoint "22"
102 RELATIONS.part23 : RELATIONS.functionalChildRelation
103     @defChildConnectionPoint "23"
104 RELATIONS.part24 : RELATIONS.functionalChildRelation
105     @defChildConnectionPoint "24"
106 RELATIONS.part25 : RELATIONS.functionalChildRelation
107     @defChildConnectionPoint "25"
108 RELATIONS.part26 : RELATIONS.functionalChildRelation
109     @defChildConnectionPoint "26"
110 RELATIONS.part27 : RELATIONS.functionalChildRelation
111     @defChildConnectionPoint "27"
112 RELATIONS.part28 : RELATIONS.functionalChildRelation
113     @defChildConnectionPoint "28"
114 RELATIONS.part29 : RELATIONS.functionalChildRelation
115     @defChildConnectionPoint "29"
116 RELATIONS.part30 : RELATIONS.functionalChildRelation
117     @defChildConnectionPoint "30"
118 RELATIONS.part31 : RELATIONS.functionalChildRelation
119     @defChildConnectionPoint "31"
120 RELATIONS.part32 : RELATIONS.functionalChildRelation
121     @defChildConnectionPoint "32"
122 RELATIONS.part33 : RELATIONS.functionalChildRelation
123     @defChildConnectionPoint "33"
124 RELATIONS.part34 : RELATIONS.functionalChildRelation
125     @defChildConnectionPoint "34"
126 RELATIONS.part35 : RELATIONS.functionalChildRelation
127     @defChildConnectionPoint "35"
128 RELATIONS.part36 : RELATIONS.functionalChildRelation
129     @defChildConnectionPoint "36"
130 RELATIONS.part37 : RELATIONS.functionalChildRelation
131     @defChildConnectionPoint "37"
132 RELATIONS.part38 : RELATIONS.functionalChildRelation
133     @defChildConnectionPoint "38"
134 RELATIONS.part39 : RELATIONS.functionalChildRelation
135     @defChildConnectionPoint "39"
136 RELATIONS.part40 : RELATIONS.functionalChildRelation
137     @defChildConnectionPoint "40"
138 RELATIONS.part41 : RELATIONS.functionalChildRelation
139     @defChildConnectionPoint "41"
140 RELATIONS.part42 : RELATIONS.functionalChildRelation
141     @defChildConnectionPoint "42"
142 RELATIONS.part43 : RELATIONS.functionalChildRelation
143     @defChildConnectionPoint "43"
144 RELATIONS.part44 : RELATIONS.functionalChildRelation
145     @defChildConnectionPoint "44"
146 RELATIONS.part45 : RELATIONS.functionalChildRelation
147     @defChildConnectionPoint "45"
148 RELATIONS.part46 : RELATIONS.functionalChildRelation
149     @defChildConnectionPoint "46"
150 RELATIONS.part47 : RELATIONS.functionalChildRelation
151     @defChildConnectionPoint "47"
152 RELATIONS.part48 : RELATIONS.functionalChildRelation
153     @defChildConnectionPoint "48"
154 RELATIONS.part49 : RELATIONS.functionalChildRelation
155     @defChildConnectionPoint "49"
156 RELATIONS.part50 : RELATIONS.functionalChildRelation
157     @defChildConnectionPoint "50"
158
159 RELATIONS.partN <R STR.IsConnectedTo : RELATIONS.childRelation
160     
161 /*** Command connections ***/
162 DOC.Document.CommandRelation <T STR.ConnectionRelation
163     >-- DOC.Document.CommandRelation.ordinal --> L0.String <R L0.HasProperty
164
165 DOC.Document.IsConnectedToCommand <R STR.IsConnectedTo : DOC.Document.CommandRelation
166
167 DOC.CommandConnectionType : STR.ConnectionType
168     G2D.HasColor [1.0,0.0,1.0] : G2D.Color
169     G2D.HasStrokeType G2D.StrokeType.Scaling
170     G2D.HasStroke _ : G2D.Stroke
171         G2D.HasStrokeWidth 0.2 : L0.Float
172         G2D.HasLineCap G2D.LineCap.ButtCap
173         G2D.HasLineJoin G2D.LineJoin.MiterJoin
174     STR.HasConnectionConstraint
175         DOC.CommandToCommandExecutorConstraint : DOC.RelationTypeConstraint
176             DOC.RelationTypeConstraint.Type1 RELATIONS.commandExecutorRelation
177             DOC.RelationTypeConstraint.Type2 RELATIONS.commandRelation        
178         DOC.NoSelfConnectionConstraint
179
180 defCommandExecutorConnectionPoint : L0.Template
181     @template %subject
182         %subject <R STR.IsConnectedTo
183
184 defCommandConnectionPoint : L0.Template
185     @template %subject %ordinal
186         %subject <R DOC.Document.IsConnectedToCommand
187             DOC.Document.CommandRelation.ordinal %ordinal
188             
189 RELATIONS.commandExecutorRelation <T STR.ConnectionRelation
190     @L0.assert STR.AllowsConnectionType DOC.CommandConnectionType
191     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.CommandExecutorTerminal
192     @L0.assert STR.HasAttachmentRelation DIA.HasArrowConnector
193     >-- RELATIONS.commandExecutorRelation.propagate --> "Boolean" <R L0.HasProperty : L0.FunctionalRelation
194     @L0.assert RELATIONS.commandExecutorRelation.propagate false 
195                 
196 RELATIONS.commandRelation <T L0.FunctionalRelation <T STR.ConnectionRelation
197     @L0.assert STR.AllowsConnectionType DOC.CommandConnectionType
198     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.CommandTerminal
199     @L0.assert STR.HasAttachmentRelation DIA.HasPlainConnector
200             
201 RELATIONS.click : RELATIONS.commandRelation
202     @defCommandConnectionPoint "1"
203     
204 RELATIONS.edit : RELATIONS.commandRelation
205     @defCommandConnectionPoint "2"
206
207 RELATIONS.load : RELATIONS.commandRelation
208     @defCommandConnectionPoint "3"
209
210 RELATIONS.trigger : RELATIONS.commandRelation
211     @defCommandConnectionPoint "4"
212
213 RELATIONS.select : RELATIONS.commandRelation
214     @defCommandConnectionPoint "5"    
215     
216 RELATIONS.valueChanged : RELATIONS.commandRelation
217     @defCommandConnectionPoint "6"
218     
219 RELATIONS.triggerTrue : RELATIONS.commandRelation
220     @defCommandConnectionPoint "7"       
221     
222 RELATIONS.triggerFalse : RELATIONS.commandRelation
223     @defCommandConnectionPoint "8"
224     
225 RELATIONS.uploaded : RELATIONS.commandRelation
226     @defCommandConnectionPoint "9"
227
228 RELATIONS.closed : RELATIONS.commandRelation
229     @defCommandConnectionPoint "10"
230
231 RELATIONS.enter : RELATIONS.commandRelation
232     @defCommandConnectionPoint "11"
233
234 RELATIONS.submit : RELATIONS.commandExecutorRelation
235     @defCommandExecutorConnectionPoint
236
237 RELATIONS.event : RELATIONS.commandExecutorRelation
238     @defCommandExecutorConnectionPoint
239     
240 RELATIONS.open : RELATIONS.commandExecutorRelation
241     @defCommandExecutorConnectionPoint
242
243 RELATIONS.close : RELATIONS.commandExecutorRelation
244     @defCommandExecutorConnectionPoint
245     
246 RELATIONS.sequenceTrigger : RELATIONS.commandExecutorRelation
247     @defCommandExecutorConnectionPoint
248     RELATIONS.commandExecutorRelation.propagate true    
249
250 RELATIONS.broadcast : RELATIONS.commandExecutorRelation
251     @defCommandExecutorConnectionPoint
252
253 RELATIONS.sequence1 : RELATIONS.commandRelation
254     @defCommandConnectionPoint "1"     
255
256 RELATIONS.sequence2 : RELATIONS.commandRelation
257     @defCommandConnectionPoint "2"
258
259 RELATIONS.sequence3 : RELATIONS.commandRelation
260     @defCommandConnectionPoint "3"
261
262 RELATIONS.sequence4 : RELATIONS.commandRelation
263     @defCommandConnectionPoint "4"
264
265 RELATIONS.sequence5 : RELATIONS.commandRelation
266     @defCommandConnectionPoint "5"
267
268 RELATIONS.sequence6 : RELATIONS.commandRelation
269     @defCommandConnectionPoint "6"
270
271 RELATIONS.sequence7 : RELATIONS.commandRelation
272     @defCommandConnectionPoint "7"
273
274 RELATIONS.sequence8 : RELATIONS.commandRelation
275     @defCommandConnectionPoint "8"
276
277 RELATIONS.sequence9 : RELATIONS.commandRelation
278     @defCommandConnectionPoint "9"
279
280 RELATIONS.sequence10 : RELATIONS.commandRelation
281     @defCommandConnectionPoint "10"
282
283 RELATIONS.broadcasted : RELATIONS.commandRelation
284     @defCommandConnectionPoint "1"
285
286 RELATIONS.eventIn : RELATIONS.commandExecutorRelation
287     @defCommandExecutorConnectionPoint
288
289 RELATIONS.eventOut : RELATIONS.commandRelation
290     @defCommandConnectionPoint "1"
291     
292 /*** Data connections ***/
293 DOC.Document.DataRelation <T STR.ConnectionRelation
294 DOC.Document.IsConnectedToData <R STR.IsConnectedTo : DOC.Document.DataRelation
295
296 DOC.DataStroke : G2D.Stroke
297     G2D.HasDashArray [1.0, 0.5] : L0.FloatArray
298     G2D.HasStrokeWidth 0.2 : L0.Float
299     G2D.HasLineCap G2D.LineCap.ButtCap
300     G2D.HasLineJoin G2D.LineJoin.MiterJoin
301
302 DOC.DataConnectionType : STR.ConnectionType
303     G2D.HasColor [0,0.65,1.0] : G2D.Color
304     G2D.HasStrokeType G2D.StrokeType.Scaling
305     G2D.HasStroke DOC.DataStroke
306     STR.HasConnectionConstraint
307         DOC.DataProviderToDataConsumerConstraint : DOC.RelationTypeConstraint
308             DOC.RelationTypeConstraint.Type1 RELATIONS.dataProviderRelation
309             DOC.RelationTypeConstraint.Type2 RELATIONS.dataConsumerRelation  
310         DOC.NoSelfConnectionConstraint
311             
312 defDataProviderConnectionPoint : L0.Template
313     @template %subject
314         %subject <R STR.IsConnectedTo
315
316 defDataConsumerConnectionPoint : L0.Template
317     @template %subject
318         %subject <R DOC.Document.IsConnectedToData
319             
320 RELATIONS.dataProviderRelation <T STR.ConnectionRelation
321     @L0.assert STR.AllowsConnectionType DOC.DataConnectionType
322     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.DataProviderTerminal
323     @L0.assert STR.HasAttachmentRelation DIA.HasPlainConnector
324                 
325 RELATIONS.dataConsumerRelation <T STR.ConnectionRelation
326     @L0.assert STR.AllowsConnectionType DOC.DataConnectionType
327     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.DataConsumerTerminal
328     @L0.assert STR.HasAttachmentRelation DIA.HasArrowConnector
329
330 RELATIONS.singleDataConsumerRelation <T L0.FunctionalRelation <T RELATIONS.dataConsumerRelation
331             
332 RELATIONS.dataIn : RELATIONS.singleDataConsumerRelation 
333     @defDataConsumerConnectionPoint
334
335 RELATIONS.arrayDataIn : RELATIONS.dataConsumerRelation 
336     @defDataConsumerConnectionPoint
337
338 RELATIONS.dataOut : RELATIONS.dataProviderRelation
339     @defDataProviderConnectionPoint
340     
341 RELATIONS.dataIn1 : RELATIONS.singleDataConsumerRelation 
342     @defDataConsumerConnectionPoint
343     
344 RELATIONS.dataIn2 : RELATIONS.singleDataConsumerRelation 
345     @defDataConsumerConnectionPoint
346
347 RELATIONS.dataIn3 : RELATIONS.singleDataConsumerRelation 
348     @defDataConsumerConnectionPoint
349     
350 RELATIONS.dataIn4 : RELATIONS.singleDataConsumerRelation 
351     @defDataConsumerConnectionPoint
352     
353 RELATIONS.dataIn5 : RELATIONS.singleDataConsumerRelation 
354     @defDataConsumerConnectionPoint
355     
356 RELATIONS.dataIn6 : RELATIONS.singleDataConsumerRelation 
357     @defDataConsumerConnectionPoint
358     
359 RELATIONS.dataIn7 : RELATIONS.singleDataConsumerRelation 
360     @defDataConsumerConnectionPoint
361     
362 RELATIONS.dataIn8 : RELATIONS.singleDataConsumerRelation 
363     @defDataConsumerConnectionPoint
364     
365 RELATIONS.dataIn9 : RELATIONS.singleDataConsumerRelation 
366     @defDataConsumerConnectionPoint
367     
368 RELATIONS.dataIn10 : RELATIONS.singleDataConsumerRelation 
369     @defDataConsumerConnectionPoint
370
371 /*** Data definition connections ***/
372 DOC.Document.DataDefinitionRelation <T STR.ConnectionRelation
373 DOC.Document.IsConnectedToDataDefinition <R STR.IsConnectedTo : DOC.Document.DataDefinitionRelation
374
375 DOC.DataDefinitionConnectionType : STR.ConnectionType
376     G2D.HasColor [0,0.65,1.0] : G2D.Color
377     G2D.HasStrokeType G2D.StrokeType.Scaling
378     G2D.HasStroke DOC.DataStroke
379     STR.HasConnectionConstraint
380         DOC.DataDefinitionToDataDefinitionConsumerConstraint : DOC.RelationTypeConstraint
381             DOC.RelationTypeConstraint.Type1 RELATIONS.dataDefinitionRelation
382             DOC.RelationTypeConstraint.Type2 RELATIONS.dataDefinitionConsumerRelation     
383         DOC.NoSelfConnectionConstraint 
384
385 defDataDefinitionConnectionPoint : L0.Template
386     @template %subject
387         %subject <R STR.IsConnectedTo
388
389 defDataDefinitionConsumerConnectionPoint : L0.Template
390     @template %subject
391         %subject <R DOC.Document.IsConnectedToDataDefinition
392             
393 RELATIONS.dataDefinitionRelation <T STR.ConnectionRelation
394     @L0.assert STR.AllowsConnectionType DOC.DataDefinitionConnectionType
395     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.DataProviderTerminal
396     @L0.assert STR.HasAttachmentRelation DIA.HasPlainConnector
397
398 RELATIONS.singleDataDefinitionRelation <T RELATIONS.dataDefinitionRelation <T L0.FunctionalRelation
399
400 RELATIONS.dataDefinitionConsumerRelation <T STR.ConnectionRelation
401     @L0.assert STR.AllowsConnectionType DOC.DataDefinitionConnectionType
402     @L0.assert MOD.ConnectionRelationToTerminal DOC.Terminals.DataConsumerTerminal
403     @L0.assert STR.HasAttachmentRelation DIA.HasArrowConnector               
404             
405 RELATIONS.data1 : RELATIONS.dataDefinitionConsumerRelation
406     @defDataDefinitionConsumerConnectionPoint
407
408 RELATIONS.data2 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
409     @defDataDefinitionConsumerConnectionPoint
410     
411 RELATIONS.data3 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
412     @defDataDefinitionConsumerConnectionPoint
413     
414 RELATIONS.data4 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
415     @defDataDefinitionConsumerConnectionPoint
416
417 RELATIONS.data5 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
418     @defDataDefinitionConsumerConnectionPoint
419
420 RELATIONS.data6 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
421     @defDataDefinitionConsumerConnectionPoint
422
423 RELATIONS.data7 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
424     @defDataDefinitionConsumerConnectionPoint
425
426 RELATIONS.data8 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
427     @defDataDefinitionConsumerConnectionPoint
428
429 RELATIONS.data9 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
430     @defDataDefinitionConsumerConnectionPoint
431
432 RELATIONS.data10 : RELATIONS.dataDefinitionConsumerRelation : L0.FunctionalRelation
433     @defDataDefinitionConsumerConnectionPoint
434
435 RELATIONS.dataDefinition : RELATIONS.dataDefinitionRelation
436     @defDataDefinitionConnectionPoint
437