Support for creating shared ontology dump to git
[simantics/platform.git] / bundles / org.simantics.modeling.ontology / graph / Modeling.pgraph
1 L0 = <http://www.simantics.org/Layer0-1.1>
2 L0X = <http://www.simantics.org/Layer0X-1.1>
3 STR = <http://www.simantics.org/Structural-1.2>
4 PROJ = <http://www.simantics.org/Project-1.2>
5 G2D = <http://www.simantics.org/G2D-1.1>
6 DIA = <http://www.simantics.org/Diagram-2.2>
7 SIMU = <http://www.simantics.org/Simulation-1.1>
8 DOC = <http://www.simantics.org/Document-1.2>
9 ISSUE = <http://www.simantics.org/Issue-1.2>
10 SG = <http://www.simantics.org/Scenegraph-1.1>
11 VIEW = <http://www.simantics.org/Views-1.2>
12 SEL = <http://www.simantics.org/SelectionView-1.2>
13 VP = <http://www.simantics.org/Viewpoint-1.2>
14 IMAGE = <http://www.simantics.org/Image2-1.2>
15 SHEET = <http://www.simantics.org/Spreadsheet-1.2>
16
17 PRED = L0X.Predicate
18
19 MOD = <http://www.simantics.org/Modeling-1.2> : L0.Ontology
20     @L0.new
21     L0.HasResourceClass "org.simantics.modeling.ModelingResources"
22
23 MOD.SCLMain : L0.SCLModule
24     L0.SCLModule.definition _ : L0.String
25       @L0.loadString "scl/SCLMain.scl"
26
27 MOD.Functions : L0.Library
28
29 //##########################################################################
30 //## Concepts
31 //##########################################################################
32
33 MOD.StructuralModel <T SIMU.Model
34     >-- MOD.StructuralModel.HasComponentTypeSupertype --> STR.ComponentType <R L0.IsRelatedTo : L0.TotalFunction
35         L0.HasDescription """When a new component type is created, it inherits the type 
36 specified by this relation. If unspecified, the new component type inherits STR.Component."""
37     >-- MOD.StructuralModel.HasDefaultComponentTypeName --> L0.String <R L0.HasProperty : L0.TotalFunction : SEL.GenericParameterType
38         L0.HasDescription """Specifies the name of a new component type. If the name is 
39 already used, adds a large enough number after the name."""
40         L0.HasLabel "Default User Component Name"
41     >-- MOD.StructuralModel.HasComponentTypeSubstructureType --> STR.ComponentType <R L0.IsRelatedTo : L0.TotalFunction    
42         L0.HasDescription """Specifies the type of the substructure of a component type
43 created to the model."""    
44     >-- MOD.StructuralModel.HasDefaultComponentTypeSymbol --> L0.Template <R L0.IsRelatedTo : L0.FunctionalRelation
45         L0.HasDescription """Specifies a template for a symbol that is created 
46 by default for the new component type under the model."""
47     >-- MOD.StructuralModel.HasSymbolDiagramType --> L0.Type <R L0.IsRelatedTo : L0.FunctionalRelation
48     >-- MOD.StructuralModel.HasSymbolType --> L0.Type <R L0.IsRelatedTo : L0.FunctionalRelation
49     >-- MOD.StructuralModel.HasConfigurationType --> L0.Type <R L0.IsRelatedTo : L0.FunctionalRelation
50
51     @L0.assert MOD.StructuralModel.HasComponentTypeSupertype STR.Component
52     @L0.assert MOD.StructuralModel.HasDefaultComponentTypeName "NewUserComponent"
53     @L0.assert MOD.StructuralModel.HasComponentTypeSubstructureType STR.Composite
54     @L0.assert MOD.StructuralModel.HasConfigurationType STR.Composite
55
56 MOD.SharedOntology <T L0.SharedOntology
57     @L0.tag L0.Abstract
58     @L0.assert MOD.StructuralModel.HasComponentTypeSupertype STR.Component
59     @L0.assert MOD.StructuralModel.HasDefaultComponentTypeName "NewUserComponent"
60     @L0.assert MOD.StructuralModel.HasComponentTypeSubstructureType STR.Composite
61     @L0.assert MOD.StructuralModel.HasConfigurationType STR.Composite
62     
63
64 MOD.Encapsulable : PRED.Predicate
65 MOD.Instantiable : PRED.Predicate
66 MOD.HasCounterpart : PRED.Predicate
67
68 MOD.Mapped <R L0.IsWeaklyRelatedTo : L0.Tag
69     L0.InverseOf MOD.Mapped
70 MOD.MappedFromConnector <R MOD.Mapped
71     L0.InverseOf MOD.MappedFromConnector
72
73 MOD.HasMappingTemplate <R L0X.HasTemplate
74
75 MOD.BasicExpression <T L0.String
76
77 MOD.Represents <R L0.IsWeaklyRelatedTo
78 MOD.SymbolToComponentType <R L0.IsWeaklyRelatedTo
79     L0.InverseOf MOD.ComponentTypeToSymbol
80 MOD.ComponentTypeToSymbol <R L0.IsWeaklyRelatedTo
81 MOD.DiagramToComposite <R L0.IsWeaklyRelatedTo
82     L0.InverseOf MOD.CompositeToDiagram
83 MOD.CompositeToDiagram <R L0.IsRelatedTo
84 MOD.ElementToComponent <R L0.IsWeaklyRelatedTo : L0.FunctionalRelation
85     L0.InverseOf MOD.ComponentToElement
86 MOD.ComponentToElement <R L0.IsWeaklyRelatedTo : L0.FunctionalRelation
87 MOD.ConnectorToComponent <R L0.IsWeaklyRelatedTo
88     L0.InverseOf MOD.ComponentToConnector
89 MOD.ComponentToConnector <R L0.IsWeaklyRelatedTo
90 MOD.ConnectionToConnector <R L0.IsWeaklyRelatedTo
91     L0.InverseOf MOD.ConnectorToConnection <R L0.IsWeaklyRelatedTo
92 MOD.MapsToConnection <R L0.IsWeaklyRelatedTo
93     L0.InverseOf MOD.ConnectionMapsTo
94 MOD.ConnectionMapsTo <R L0.IsWeaklyRelatedTo
95 MOD.DiagramConnectionToConnection <R MOD.MapsToConnection
96     L0.InverseOf MOD.ConnectionToDiagramConnection
97 MOD.ConnectionToDiagramConnection <R MOD.ConnectionMapsTo
98 MOD.DiagramConnectionToConnectionSpecial <R MOD.MapsToConnection
99     L0.InverseOf MOD.ConnectionToDiagramConnectionSpecial
100 MOD.ConnectionToDiagramConnectionSpecial <R MOD.ConnectionMapsTo
101 MOD.DiagramConnectionRelationToConnectionRelation <R L0.IsWeaklyRelatedTo
102     L0.InverseOf MOD.ConnectionRelationToDiagramConnectionRelation
103 MOD.DiagramConnectionTypeToConnectionType  <R L0.IsWeaklyRelatedTo
104     L0.InverseOf MOD.ConnectionTypeToDiagramConnectionType  <R L0.IsWeaklyRelatedTo
105 MOD.ConnectionRelationToDiagramConnectionRelation <R L0.IsWeaklyRelatedTo
106
107 MOD.DiagramConnectionRelationToConnectionRelationB <R L0.IsWeaklyRelatedTo
108     L0.InverseOf MOD.ConnectionRelationToDiagramConnectionRelationB  <R L0.IsWeaklyRelatedTo
109 MOD.DiagramConnectionRelationToConnectionRelationC <R L0.IsWeaklyRelatedTo
110     L0.InverseOf MOD.ConnectionRelationToDiagramConnectionRelationC  <R L0.IsWeaklyRelatedTo
111 MOD.DiagramConnectionRelationToComponentType <R L0.IsWeaklyRelatedTo
112
113 MOD.HasConnectionMappingSpecification <R L0.IsRelatedTo
114     L0.HasDomain DIA.Connector
115     L0.HasRange MOD.ConnectionMappingSpecification
116 MOD.ConnectionTypeToConnectionMappingSpecification <R L0.IsRelatedTo
117     L0.HasDomain STR.ConnectionType
118     L0.HasRange MOD.ConnectionMappingSpecification
119 MOD.ConnectionMappingSpecification <T L0.Entity
120     // MOD.DiagramConnectionRelationToConnectionRelationB
121     // MOD.DiagramConnectionRelationToConnectionRelationC
122     // MOD.DiagramConnectionRelationToComponentType
123 MOD.ConnectionRelationToConnectionMappingSpecification <R L0.IsRelatedTo
124     L0.HasDomain STR.ConnectionRelation
125     L0.HasRange MOD.ConnectionMappingSpecification
126 MOD.NeedsConnectionMappingSpecification <R L0.IsRelatedTo : L0.Tag : L0.FunctionalRelation
127     L0.HasDescription "Tells a connection relation that a diagram connection using it will require a DIA.Connector that has MOD.HasConnectionMappingSpecification statement attached to it if the used connection type has a MOD.ConnectionTypeToConnectionMappingSpecification specified. It guides connection creation."
128     L0.HasDomain STR.ConnectionRelation
129     L0.HasRange STR.ConnectionRelation
130
131 MOD.ConnectionTypeToComponentType <R L0.IsWeaklyRelatedTo
132 MOD.ConnectionTypeToConnectionRelation <R L0.IsWeaklyRelatedTo
133
134 MOD.ConnectionRelationToTerminal <R L0.IsWeaklyRelatedTo : L0.FunctionalRelation
135
136 MOD.DiagramToCompositeMapping <T L0X.Trigger
137 MOD.ComponentTypeUpdater <T L0X.Trigger
138     L0.HasDescription """This trigger is used with component type configurations to keep the component type interface and symbol terminals in sync with the configuration."""
139
140 MOD.ImpliesDiagramConnectionRelationType <R L0.IsRelatedTo
141     <-- STR.ConnectionRelation
142     --> L0.Type
143     L0.HasDescription """This relation indicates that a certain diagram connection relation type
144 should be used together with a certain connection relation."""
145
146 MOD.ReferenceElement <T DIA.Element
147     @L0.singleProperty MOD.HasParentComponent
148     @L0.singleProperty MOD.HasReferenceRelation
149 MOD.HasParentComponent <R L0.IsWeaklyRelatedTo
150     L0.HasRange STR.Component
151     L0.InverseOf MOD.HasParentComponent.Inverse <R L0.IsWeaklyRelatedTo
152 MOD.HasReferenceRelation <R L0.IsRelatedTo
153     L0.HasRange L0.Relation
154     L0.InverseOf MOD.HasReferenceRelation.Inverse <R L0.IsWeaklyRelatedTo
155     @L0.optionalProperty MOD.HasReferencedType
156 MOD.HasReferencedType <R L0.IsRelatedTo
157     --> L0.Type
158
159 MOD.TestTerminal <T DIA.DefinedElement <T DIA.Terminal
160     @L0.tag L0.Deprecated
161     STR.IsDefinedBy _ : DIA.Composite <R L0.IsRelatedTo
162         @L0.orderedSet
163             _ : DIA.SVGElement
164                 G2D.HasSVGDocument """<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg xmlns="http://www.w3.org/2000/svg" overflow="visible" version="1.1"><g transform="translate(-0.0,-0.0)"><rect x="-0.5" y="-0.5" width="1.0" height="1.0" fill="rgb(255,102,0)" stroke="black" stroke-width="0.1"/></g></svg>"""
165
166 //??
167 MOD.WebmonVariable <T L0.OrderedSet
168
169 MOD.HasModelQuery <R L0.IsRelatedTo
170     L0.HasDescription "For attaching so called query nodes to models in the model browser. The query nodes will be shown under the model sub-node Queries."
171     L0.HasRange L0.Entity
172
173 MOD.HasBaseRules <R L0.IsRelatedTo
174     L0.HasRange STR.ModelingRules
175 MOD.MappedModelingRules <T STR.ModelingRules
176     @L0.singleProperty MOD.HasBaseRules
177
178 MOD.MappingSubgraphExtent : L0X.SubgraphExtent
179 MOD.MappingSubgraphAdvisor : L0X.SubgraphAdvisor
180
181 MOD.Documents : L0.Library
182
183 MOD.Documents.IssueBinding : DOC.DocumentTypeBinding
184   DOC.DocumentTypeBinding.HasType ISSUE.Issue
185   DOC.DocumentTypeBinding.HasDocumentType MOD.Documents.IssueTemplate
186
187 MOD.Documents.IssueTemplate <T DOC.Scenegraph.Composite
188   >-- MOD.Documents.IssueTemplate.UserContent <R L0.HasProperty : SG.LiftedPropertyRelation
189       --> DOC.WikiDocument.WikiText
190   @L0.assert MOD.Documents.IssueTemplate.UserContent "Some user-defined text about this issue"
191   @L0.assert SG.Node.children
192     _ : L0.List
193       @L0.list
194         MOD.Documents.IssueTemplate.Header : DOC.Scenegraph.Wiki
195           DOC.Scenegraph.Wiki.text MOD.Functions.issueDocumentHeader : L0.Function 
196         MOD.Documents.IssueTemplate.User : DOC.Scenegraph.Wiki
197           DOC.Scenegraph.Node.printInPDF true
198           DOC.Scenegraph.Wiki.text
199             @SG.lifted MOD.Documents.IssueTemplate.UserContent
200     
201 MOD.HiddenComposite <R L0.IsRelatedTo : L0.Tag : L0.FunctionalRelation
202     L0.HasDomain STR.Composite
203
204 // @since 1.25.0, 1.22.2
205 MOD.GeneratesConnectionComponentInternally
206     @L0.defTag
207     L0.HasDomain STR.ConnectionRelation
208     L0.HasDescription "Indicates that a tagged connection relation will generate a component for the configuration connection internally."
209
210 //##########################################################################
211 //## Templates
212 //##########################################################################
213
214 MOD.HasModelingTemplate <R L0X.HasTemplate
215
216 MOD.DiagramTemplate <T L0.Template
217     >-- MOD.DiagramTemplate.HasMappingType --> L0.Type <R L0.IsRelatedTo : L0.FunctionalRelation
218     @L0.assert MOD.DiagramTemplate.HasMappingType MOD.DiagramToCompositeMapping
219
220 MOD.HasDiagramType <R L0.IsRelatedTo
221     L0.HasRange L0.Type
222     
223
224 //##########################################################################
225 //## UI
226 //##########################################################################
227
228 MOD.DependenciesView <T L0X.RelationView
229     @L0.assert L0.HasName "Dependencies"
230     @L0.assert L0X.AppliesRelation L0X.DependenciesRelation
231     @L0.assert L0X.HasBindingPattern "bfff"
232
233 //##########################################################################
234 //## Templates
235 //##########################################################################
236
237 MOD.defSymbol : L0.Template
238     @template %subject %label %componentType
239         %subject <T DIA.Element
240             MOD.SymbolToComponentType %componentType
241             L0.HasLabel %label
242
243 MOD.terminal : L0.Template
244     @template %subject %parent %relation
245         %subject
246             DIA.HasConnectionPoint %relation 
247                 <-- %parent
248
249 MOD.terminalRelation : L0.Template
250     @template %subject %target
251         %subject <R STR.IsConnectedTo
252             MOD.DiagramConnectionRelationToConnectionRelation %target
253
254 MOD.connection : L0.Template
255     @template %subject %relation
256         %subject 
257             >-- %relation
258             MOD.DiagramConnectionRelationToConnectionRelation %relation
259
260 MOD.contextualHelpId ==> "String" <R L0.HasProperty : L0.FunctionalRelation
261
262 MOD.convertedValue <R L0.HasProperty : L0.FunctionalRelation
263   L0.RequiresValueType "a"
264
265 MOD.OntologyDependencies : PROJ.NamespaceRequirement
266     L0.HasDescription "Specifies the ontologies required by a modelling project."
267     PROJ.RequiresNamespace
268         "http://www.simantics.org/Layer0-1.1" : L0.URI
269         "http://www.simantics.org/Diagram-2.2" : L0.URI
270         "http://www.simantics.org/Modeling-1.2" : L0.URI
271         "http://www.simantics.org/SelectionView-1.2" : L0.URI
272
273 MOD.ModelBrowser <T VIEW.Explorer
274     @L0.assert VIEW.Control.layoutData
275         _ : VIEW.GridLayout.GridData
276             VIEW.GridLayout.GridData.horizontalGrab true
277             VIEW.GridLayout.GridData.verticalGrab true
278     @L0.assert VIEW.Control.style
279         _ : VIEW.Control.Style
280             VIEW.Control.Style.HasConstant VIEW.Control.Style.Constant.Multi
281             VIEW.Control.Style.HasConstant VIEW.Control.Style.Constant.FullSelection
282     @L0.assert VIEW.Explorer.columns
283         _ : VIEW.Explorer.ColumnList
284             @L0.list
285                 VIEW.SingleColumn
286     @L0.assert VIEW.Explorer.input MOD.Functions.projectSelection
287     @L0.assert VIEW.Explorer.columnsVisible false
288     @L0.assert VIEW.Explorer.displayFilter true
289     @L0.assert VIEW.Explorer.publishSelection true
290     @L0.assert VIEW.Explorer.persistor MOD.Functions.standardPersistor
291     @L0.assert VIEW.Explorer.browseContext
292         _ : VIEW.ResourceURI
293             VIEW.ResourceURI.HasResource PROJ.ProjectBrowseContext
294     @L0.assert VIEW.Explorer.contextMenuId "#ModelBrowserPopup"
295     @L0.assert VIEW.Explorer.uiContext "org.simantics.modeling.ui.modelBrowser"
296     @L0.assert VIEW.Explorer.useNodeBrowseContexts true
297     @L0.assert VIEW.Explorer.useNodeActionContexts true
298
299 MOD.PlainModelBrowser : MOD.ModelBrowser
300
301 MOD.Functions.sclValue : L0.ExternalValue
302
303 MOD.MonitorValue <T STR.MonitorValue
304   @L0.assert L0.valueAccessor
305     MOD.Functions.monitorValueAccessor : L0.ExternalValue
306   @L0.assert L0.ConvertsToValueWith MOD.Functions.sclValue
307   @L0.assert L0.SCLValue.environment
308     _ : L0.SCLValue.Environment
309       L0.SCLValue.Environment.moduleName "Simantics/All"
310       L0.SCLValue.Environment.namespace ""
311   @L0.assert L0.readOnly
312     MOD.Functions.monitorReadOnly : L0.Function
313
314 MOD.SCLValue <T L0.SCLValue
315   @L0.assert L0.ConvertsToValueWith MOD.Functions.sclValue
316   /*@L0.assert L0.SCLValue.environment
317     _ : L0.SCLValue.Environment
318       L0.SCLValue.Environment.moduleName "Simantics/All"
319       L0.SCLValue.Environment.namespace ""*/
320
321 MOD.scl : L0.Template
322     @template %subject %property %expression %valueType
323         %subject
324             %property _ : MOD.SCLValue
325               L0.SCLValue.expression %expression
326               L0.HasValueType %valueType
327
328 MOD.sclValue : L0.Template
329     @template %subject %expression %valueType
330         %subject  : MOD.SCLValue
331             L0.SCLValue.expression %expression
332             L0.HasValueType %valueType
333
334 MOD.sclAssertion : L0.Template
335     @template %type %property %expression %valueType
336         %type
337             L0.Asserts _ : L0.Assertion
338               L0.HasPredicate %property
339               L0.HasObject _ : MOD.SCLValue
340                 L0.SCLValue.expression %expression
341                 L0.HasValueType %valueType
342
343 MOD.Functions.obtainedString : L0.Function
344   L0.HasValueType "String"
345
346 MOD.Functions.obtainedDouble : L0.Function
347   L0.HasValueType "Double"
348
349 MOD.Functions.obtainedBoolean : L0.Function
350   L0.HasValueType "Boolean"
351
352 MOD.Functions.obtainedColor : L0.Function
353   L0.HasValueType "Color"
354     
355 MOD.Functions.obtainedFormatter : L0.Function
356   L0.HasValueType "Formatter"
357
358 MOD.Functions.obtainedVec2d : L0.Function
359   L0.HasValueType "Formatter"
360
361 MOD.self <R L0.HasProperty : L0.FunctionalRelation
362
363 //##########################################################################
364 //## Source information modeling
365 //##########################################################################
366
367 MOD.SourceInformation <T L0.Entity
368     >-- MOD.SourceInformation.copiedFrom ==> "String" <R L0.HasProperty : L0.FunctionalRelation
369     >-- MOD.SourceInformation.copiedAtRevision --> L0.RevisionId <R L0.HasProperty : L0.FunctionalRelation
370 MOD.HasSourceInformation --> MOD.SourceInformation <R L0.IsRelatedTo : L0.FunctionalRelation
371
372 //##########################################################################
373 //## Change information modeling
374 //##########################################################################
375
376 MOD.ChangeInformation <T L0.Literal
377     @L0.assert L0.HasDataType ${ createdBy : String, createdAt : Long, modifiedBy : String, modifiedAt : Long }
378
379 MOD.Functions.modificationTimeTextLong : L0.Function
380     L0.HasValueType "String"
381
382 MOD.ChangeInformation."n-createdBy" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType
383     ==> "String"
384     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    
385     L0.HasLabel "Author"
386     SEL.SortingName "1"
387     L0.readOnly true
388
389 MOD.ChangeInformation."n-createdAt" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType    
390     ==> "Long"
391     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    
392     L0.HasLabel "Created At"
393     SEL.HasDisplayValue MOD.Functions.modificationTimeTextLong
394     SEL.SortingName "2"
395     L0.readOnly true
396
397 MOD.ChangeInformation."n-modifiedBy" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType    
398     ==> "String"
399     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    
400     L0.HasLabel "Last Modified By"
401     SEL.SortingName "3"
402     L0.readOnly true
403
404 MOD.ChangeInformation."n-modifiedAt" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType    
405     ==> "Long"
406     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    
407     L0.HasLabel "Last Modified At"
408     SEL.HasDisplayValue MOD.Functions.modificationTimeTextLong
409     SEL.SortingName "4"
410     L0.readOnly true
411
412 MOD.changeInformation <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType
413     L0.HasLabel "Change Information"
414     --> MOD.ChangeInformation
415     SEL.HasDisplayValue ""
416     L0.readOnly true
417     SEL.canBeLifted false
418     SEL.HasStandardPropertyInfo MOD.SystemPropertyInfo
419
420 MOD.changed
421     @L0.defTag
422     L0.HasDescription "Indicates that the change information of this object has been modified after import into this database."
423
424 MOD.TypeWithChangeInformation <T L0.Entity
425
426 L0.HasName : SEL.GenericParameterType
427   SEL.HasDisplayValue _ : SEL.DisplayValue
428     L0.Literal.HasInputValidator MOD.Functions.nameInputValidator  : L0.Function
429
430 L0.HasLabel : SEL.GenericParameterType
431 L0X.HasGeneratedNamePrefix : SEL.GenericParameterType
432
433 L0.SCLModule : MOD.TypeWithChangeInformation
434 L0.SCLScript : MOD.TypeWithChangeInformation
435 L0.Library : MOD.TypeWithChangeInformation
436 SIMU.Model : MOD.TypeWithChangeInformation
437 MOD.Subscription : MOD.TypeWithChangeInformation
438 MOD.Subscription.Item : MOD.TypeWithChangeInformation
439 SIMU.State : MOD.TypeWithChangeInformation
440 ISSUE.Issue : MOD.TypeWithChangeInformation     
441 DOC.Document : MOD.TypeWithChangeInformation
442 SHEET.Book : MOD.TypeWithChangeInformation
443 SHEET.Spreadsheet : MOD.TypeWithChangeInformation
444 L0.Type  : MOD.TypeWithChangeInformation
445 L0.Relation : MOD.TypeWithChangeInformation
446 STR.ComponentType <T MOD.TypeWithChangeInformation
447
448 L0.SCLModule : L0.TypeWithIdentifier
449 L0.SCLScript : L0.TypeWithIdentifier
450 L0.Type  : L0.TypeWithIdentifier
451 L0.Relation : L0.TypeWithIdentifier
452 L0.Library : L0.TypeWithIdentifier
453 STR.ComponentType <T L0.TypeWithIdentifier
454
455 MOD.PartialIC <T L0.Literal
456     //@L0.assert L0.HasDataType ${ values : Map( ( | ResourceRVIPart { role : |CHILD|PROPERTY, resource : Long(unit="resource") } | StringRVIPart { role : |CHILD|PROPERTY, string : String } ) [], Variant) }
457     @L0.assert L0.HasDataType ${ variants : ( ( | ResourceRVIPart { role : |CHILD|PROPERTY, resource : Long(unit="resource") } | StringRVIPart { role : |CHILD|PROPERTY, string : String } ) [] ) [], variants : Variant[] }
458
459 MOD.SCLCommandSession <T L0.Entity
460     >-- MOD.SCLCommandSession.hasValue --> L0.Value <R L0.HasProperty : SEL.GenericParameterType
461     
462 MOD.InitialCondition <T SIMU.State
463     >-- MOD.InitialCondition.sclState --> L0.ByteArray <R L0.HasProperty : L0.FunctionalRelation
464     >-- MOD.InitialCondition.HasSCLState --> MOD.SCLState <R L0.DependsOn
465
466 MOD.SCLState <T L0.Entity
467     >-- MOD.SCLState.identifier --> L0.String <R L0.HasProperty : L0.FunctionalRelation
468     >-- MOD.SCLState.blob --> L0.ByteArray <R L0.HasProperty : L0.FunctionalRelation
469
470 MOD.SCLQueryType <T STR.ComponentType
471
472 MOD.SCLQuery : MOD.SCLQueryType <T STR.Component
473     >-- MOD.SCLQuery.values --> MOD.SCLQuery.Value <R L0.HasProperty : L0.FunctionalRelation
474     @L0.assert L0.domainChildren
475         MOD.Functions.queryChildMap : L0.ExternalValue
476
477 MOD.SCLQuery.Value <T STR.SCLValue
478   @L0.assert L0.ConvertsToValueWith
479     MOD.Functions.queryValue : L0.ExternalValue
480     
481 MOD.SystemPropertyInfo : SEL.StandardPropertyInfo
482   SEL.StandardPropertyInfo.CategoryName "System Properties"
483   SEL.StandardPropertyInfo.CategorySortingName "System Properties"
484   SEL.StandardPropertyInfo.IsHidden false
485
486 MOD.UserDefinedPropertyInfo : SEL.StandardPropertyInfo
487   SEL.StandardPropertyInfo.CategoryName "User-defined Properties"
488   SEL.StandardPropertyInfo.CategorySortingName ""
489   SEL.StandardPropertyInfo.IsHidden false
490
491 MOD.LifeCycleProcess <T L0.Entity
492   >-- MOD.LifeCycleProcess.load ==> "LifeCycleContext -> <Proc> ()" <R L0.HasProperty : L0.FunctionalRelation
493   >-- MOD.LifeCycleProcess.unload ==> "LifeCycleContext -> <Proc> ()" <R L0.HasProperty : L0.FunctionalRelation
494   
495 MOD.DependencyTrackingProcess : MOD.LifeCycleProcess
496   @MOD.scl MOD.LifeCycleProcess.load
497     """\x -> trackDependencies"""
498     "LifeCycleContext -> <Proc> ()"
499   @MOD.scl MOD.LifeCycleProcess.unload
500     """\x -> untrackDependencies"""
501     "LifeCycleContext -> <Proc> ()"
502      
503
504 MOD.OntologicalRequirementTracker <T MOD.LifeCycleProcess
505   @MOD.sclAssertion MOD.LifeCycleProcess.load
506     """\x -> trackOntologicalRequirements"""
507     "LifeCycleContext -> <Proc> ()"
508   @MOD.sclAssertion MOD.LifeCycleProcess.unload
509     """\x -> untrackOntologicalRequirements"""
510     "LifeCycleContext -> <Proc> ()"
511
512 MOD.EditorContribution <T L0.Entity
513   --> MOD.EditorContribution.canHandle ==> "Resource -> <ReadGraph> Boolean" <R L0.HasProperty : L0.FunctionalRelation 
514   --> MOD.EditorContribution.editorId --> L0.String <R L0.HasProperty : L0.FunctionalRelation 
515   --> MOD.EditorContribution.priority --> L0.Integer <R L0.HasProperty : L0.FunctionalRelation 
516   --> MOD.EditorContribution.HasImage --> IMAGE.Image <R L0.DependsOn : L0.FunctionalRelation 
517
518 MOD.editorContribution : L0.Template
519     @template %subject %id %priority %image %canHandle
520         %subject : MOD.EditorContribution
521             MOD.EditorContribution.editorId %id
522             MOD.EditorContribution.priority %priority
523             MOD.EditorContribution.HasImage %image
524             MOD.EditorContribution.canHandle _ : MOD.SCLValue
525                 L0.SCLValue.expression %canHandle
526                 L0.HasValueType "Resource -> <ReadGraph> Boolean"
527                 
528 MOD.SVGTabContribution : SEL.SCLTabContribution
529   @MOD.scl SEL.SCLTabContribution.instantiate
530     "svgTabContribution"
531     "() -> <Proc> TabContribution"
532
533 MOD.SymbolCodeStyle : DIA.Style
534
535 MOD.IssueDecorationStyle : DIA.Style
536
537 MOD.PreferredDiagramEditorID <R L0.HasProperty : L0.FunctionalRelation
538     L0.HasDomain STR.Composite
539     L0.HasRange  L0.String
540     
541 MOD.contentDumpFunction ==> "Resource -> <ReadGraph> Vector Byte" <R L0.HasProperty : L0.FunctionalRelation
542
543 // We need to define the function inside this ontology to give it the right evaluation context
544 L0.SCLModule
545   MOD.contentDumpFunction
546     MOD.SCLModuleContentDumpFunction
547       @L0.sclValue "sclModuleContentDump" "Resource -> <ReadGraph> Vector Byte"
548
549 L0.PGraph
550   MOD.contentDumpFunction
551     MOD.PGraphContentDumpFunction
552       @L0.sclValue "pgraphContentDump" "Resource -> <ReadGraph> Vector Byte"
553
554 STR.Component
555   MOD.contentDumpFunction
556     MOD.StructuralComponentContentDumpFunction
557       @L0.sclValue "structuralComponentContentDump" "Resource -> <ReadGraph> Vector Byte"
558       
559 SEL.GenericParameterType
560   MOD.contentDumpFunction
561     MOD.GenericParameterTypeContentDumpFunction
562       @L0.sclValue "genericParameterTypeContentDump" "Resource -> <ReadGraph> Vector Byte"
563