]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.modeling.ontology/graph/Modeling.pgraph
Sync git svn branch with SVN repository r33349.
[simantics/platform.git] / bundles / org.simantics.modeling.ontology / graph / Modeling.pgraph
1 L0 = <http://www.simantics.org/Layer0-1.1>\r
2 L0X = <http://www.simantics.org/Layer0X-1.1>\r
3 STR = <http://www.simantics.org/Structural-1.2>\r
4 PROJ = <http://www.simantics.org/Project-1.2>\r
5 G2D = <http://www.simantics.org/G2D-1.1>\r
6 DIA = <http://www.simantics.org/Diagram-2.2>\r
7 SIMU = <http://www.simantics.org/Simulation-1.1>\r
8 DOC = <http://www.simantics.org/Document-1.2>\r
9 ISSUE = <http://www.simantics.org/Issue-1.2>\r
10 SG = <http://www.simantics.org/Scenegraph-1.1>\r
11 VIEW = <http://www.simantics.org/Views-1.2>\r
12 SEL = <http://www.simantics.org/SelectionView-1.2>\r
13 VP = <http://www.simantics.org/Viewpoint-1.2>\r
14 IMAGE = <http://www.simantics.org/Image2-1.2>\r
15 SHEET = <http://www.simantics.org/Spreadsheet-1.2>\r
16 \r
17 PRED = L0X.Predicate\r
18 \r
19 MOD = <http://www.simantics.org/Modeling-1.2> : L0.Ontology\r
20     @L0.new\r
21     L0.HasResourceClass "org.simantics.modeling.ModelingResources"\r
22 \r
23 MOD.SCLMain : L0.SCLModule\r
24     L0.SCLModule.definition _ : L0.String\r
25       @L0.loadString "scl/SCLMain.scl"\r
26 \r
27 MOD.Functions : L0.Library\r
28
29 //##########################################################################
30 //## Concepts
31 //##########################################################################
32 \r
33 MOD.StructuralModel <T SIMU.Model\r
34     >-- MOD.StructuralModel.HasComponentTypeSupertype --> STR.ComponentType <R L0.IsRelatedTo : L0.TotalFunction\r
35         L0.HasDescription """When a new component type is created, it inherits the type \r
36 specified by this relation. If unspecified, the new component type inherits STR.Component."""\r
37     >-- MOD.StructuralModel.HasDefaultComponentTypeName --> L0.String <R L0.HasProperty : L0.TotalFunction : SEL.GenericParameterType\r
38         L0.HasDescription """Specifies the name of a new component type. If the name is \r
39 already used, adds a large enough number after the name."""\r
40         L0.HasLabel "Default User Component Name"\r
41     >-- MOD.StructuralModel.HasComponentTypeSubstructureType --> STR.ComponentType <R L0.IsRelatedTo : L0.TotalFunction    \r
42         L0.HasDescription """Specifies the type of the substructure of a component type\r
43 created to the model."""    \r
44     >-- MOD.StructuralModel.HasDefaultComponentTypeSymbol --> L0.Template <R L0.IsRelatedTo : L0.FunctionalRelation\r
45         L0.HasDescription """Specifies a template for a symbol that is created \r
46 by default for the new component type under the model."""\r
47     >-- MOD.StructuralModel.HasSymbolDiagramType --> L0.Type <R L0.IsRelatedTo : L0.FunctionalRelation\r
48 \r
49     >-- MOD.StructuralModel.HasConfigurationType --> L0.Type <R L0.IsRelatedTo : L0.FunctionalRelation\r
50 \r
51     @L0.assert MOD.StructuralModel.HasComponentTypeSupertype STR.Component\r
52     @L0.assert MOD.StructuralModel.HasDefaultComponentTypeName "NewUserComponent"\r
53     @L0.assert MOD.StructuralModel.HasComponentTypeSubstructureType STR.Composite\r
54     @L0.assert MOD.StructuralModel.HasConfigurationType STR.Composite\r
55 \r
56 MOD.SharedOntology <T L0.SharedOntology\r
57     @L0.tag L0.Abstract\r
58     @L0.assert MOD.StructuralModel.HasComponentTypeSupertype STR.Component\r
59     @L0.assert MOD.StructuralModel.HasDefaultComponentTypeName "NewUserComponent"\r
60     @L0.assert MOD.StructuralModel.HasComponentTypeSubstructureType STR.Composite\r
61     @L0.assert MOD.StructuralModel.HasConfigurationType STR.Composite\r
62     \r
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\r
71     L0.InverseOf MOD.MappedFromConnector\r
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\r
87 MOD.ConnectorToComponent <R L0.IsWeaklyRelatedTo\r
88     L0.InverseOf MOD.ComponentToConnector\r
89 MOD.ComponentToConnector <R L0.IsWeaklyRelatedTo\r
90 MOD.ConnectionToConnector <R L0.IsWeaklyRelatedTo\r
91     L0.InverseOf MOD.ConnectorToConnection <R L0.IsWeaklyRelatedTo\r
92 MOD.MapsToConnection <R L0.IsWeaklyRelatedTo\r
93     L0.InverseOf MOD.ConnectionMapsTo\r
94 MOD.ConnectionMapsTo <R L0.IsWeaklyRelatedTo
95 MOD.DiagramConnectionToConnection <R MOD.MapsToConnection
96     L0.InverseOf MOD.ConnectionToDiagramConnection
97 MOD.ConnectionToDiagramConnection <R MOD.ConnectionMapsTo\r
98 MOD.DiagramConnectionToConnectionSpecial <R MOD.MapsToConnection\r
99     L0.InverseOf MOD.ConnectionToDiagramConnectionSpecial\r
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\r
108     L0.InverseOf MOD.ConnectionRelationToDiagramConnectionRelationB  <R L0.IsWeaklyRelatedTo
109 MOD.DiagramConnectionRelationToConnectionRelationC <R L0.IsWeaklyRelatedTo\r
110     L0.InverseOf MOD.ConnectionRelationToDiagramConnectionRelationC  <R L0.IsWeaklyRelatedTo
111 MOD.DiagramConnectionRelationToComponentType <R L0.IsWeaklyRelatedTo
112 \r
113 MOD.HasConnectionMappingSpecification <R L0.IsRelatedTo\r
114     L0.HasDomain DIA.Connector\r
115     L0.HasRange MOD.ConnectionMappingSpecification\r
116 MOD.ConnectionTypeToConnectionMappingSpecification <R L0.IsRelatedTo\r
117     L0.HasDomain STR.ConnectionType\r
118     L0.HasRange MOD.ConnectionMappingSpecification\r
119 MOD.ConnectionMappingSpecification <T L0.Entity\r
120     // MOD.DiagramConnectionRelationToConnectionRelationB\r
121     // MOD.DiagramConnectionRelationToConnectionRelationC\r
122     // MOD.DiagramConnectionRelationToComponentType\r
123 MOD.ConnectionRelationToConnectionMappingSpecification <R L0.IsRelatedTo\r
124     L0.HasDomain STR.ConnectionRelation\r
125     L0.HasRange MOD.ConnectionMappingSpecification\r
126 MOD.NeedsConnectionMappingSpecification <R L0.IsRelatedTo : L0.Tag : L0.FunctionalRelation\r
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."\r
128     L0.HasDomain STR.ConnectionRelation\r
129     L0.HasRange STR.ConnectionRelation\r
130 \r
131 MOD.ConnectionTypeToComponentType <R L0.IsWeaklyRelatedTo\r
132 MOD.ConnectionTypeToConnectionRelation <R L0.IsWeaklyRelatedTo\r
133 \r
134 MOD.ConnectionRelationToTerminal <R L0.IsWeaklyRelatedTo : L0.FunctionalRelation\r
135
136 MOD.DiagramToCompositeMapping <T L0X.Trigger\r
137 MOD.ComponentTypeUpdater <T L0X.Trigger\r
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."""\r
139 \r
140 MOD.ImpliesDiagramConnectionRelationType <R L0.IsRelatedTo\r
141     <-- STR.ConnectionRelation\r
142     --> L0.Type\r
143     L0.HasDescription """This relation indicates that a certain diagram connection relation type\r
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\r
151     L0.InverseOf MOD.HasParentComponent.Inverse <R L0.IsWeaklyRelatedTo
152 MOD.HasReferenceRelation <R L0.IsRelatedTo
153     L0.HasRange L0.Relation\r
154     L0.InverseOf MOD.HasReferenceRelation.Inverse <R L0.IsWeaklyRelatedTo\r
155     @L0.optionalProperty MOD.HasReferencedType
156 MOD.HasReferencedType <R L0.IsRelatedTo\r
157     --> L0.Type\r
158
159 MOD.TestTerminal <T DIA.DefinedElement <T DIA.Terminal\r
160     @L0.tag L0.Deprecated
161     STR.IsDefinedBy _ : DIA.Composite <R L0.IsRelatedTo\r
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 \r
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 \r
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 \r
181 MOD.Documents : L0.Library\r
182 \r
183 MOD.Documents.IssueBinding : DOC.DocumentTypeBinding\r
184   DOC.DocumentTypeBinding.HasType ISSUE.Issue\r
185   DOC.DocumentTypeBinding.HasDocumentType MOD.Documents.IssueTemplate\r
186 \r
187 MOD.Documents.IssueTemplate <T DOC.Scenegraph.Composite\r
188   >-- MOD.Documents.IssueTemplate.UserContent <R L0.HasProperty : SG.LiftedPropertyRelation\r
189       --> DOC.WikiDocument.WikiText\r
190   @L0.assert MOD.Documents.IssueTemplate.UserContent "Some user-defined text about this issue"\r
191   @L0.assert SG.Node.children\r
192     _ : L0.List\r
193       @L0.list\r
194         MOD.Documents.IssueTemplate.Header : DOC.Scenegraph.Wiki\r
195           DOC.Scenegraph.Wiki.text MOD.Functions.issueDocumentHeader : L0.Function \r
196         MOD.Documents.IssueTemplate.User : DOC.Scenegraph.Wiki\r
197           DOC.Scenegraph.Node.printInPDF true\r
198           DOC.Scenegraph.Wiki.text\r
199             @SG.lifted MOD.Documents.IssueTemplate.UserContent\r
200     \r
201 MOD.HiddenComposite <R L0.IsRelatedTo : L0.Tag : L0.FunctionalRelation\r
202     L0.HasDomain STR.Composite\r
203 \r
204 // @since 1.25.0, 1.22.2\r
205 MOD.GeneratesConnectionComponentInternally\r
206     @L0.defTag\r
207     L0.HasDomain STR.ConnectionRelation\r
208     L0.HasDescription "Indicates that a tagged connection relation will generate a component for the configuration connection internally."\r
209 \r
210 //##########################################################################
211 //## Templates
212 //##########################################################################
213
214 MOD.HasModelingTemplate <R L0X.HasTemplate
215
216 MOD.DiagramTemplate <T L0.Template\r
217     >-- MOD.DiagramTemplate.HasMappingType --> L0.Type <R L0.IsRelatedTo : L0.FunctionalRelation\r
218     @L0.assert MOD.DiagramTemplate.HasMappingType MOD.DiagramToCompositeMapping\r
219 \r
220 MOD.HasDiagramType <R L0.IsRelatedTo\r
221     L0.HasRange L0.Type\r
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 \r
233 //##########################################################################\r
234 //## Templates\r
235 //##########################################################################\r
236 \r
237 MOD.defSymbol : L0.Template
238     @template %subject %label %componentType
239         %subject <T DIA.Element
240             MOD.SymbolToComponentType %componentType
241             L0.HasLabel %label\r
242 \r
243 MOD.terminal : L0.Template\r
244     @template %subject %parent %relation\r
245         %subject\r
246             DIA.HasConnectionPoint %relation 
247                 <-- %parent\r
248 \r
249 MOD.terminalRelation : L0.Template\r
250     @template %subject %target\r
251         %subject <R STR.IsConnectedTo\r
252             MOD.DiagramConnectionRelationToConnectionRelation %target\r
253 \r
254 MOD.connection : L0.Template\r
255     @template %subject %relation\r
256         %subject \r
257             >-- %relation\r
258             MOD.DiagramConnectionRelationToConnectionRelation %relation\r
259 \r
260 MOD.contextualHelpId ==> "String" <R L0.HasProperty : L0.FunctionalRelation\r
261 \r
262 MOD.convertedValue <R L0.HasProperty : L0.FunctionalRelation\r
263   L0.RequiresValueType "a"\r
264 \r
265 MOD.OntologyDependencies : PROJ.NamespaceRequirement\r
266     L0.HasDescription "Specifies the ontologies required by a modelling project."\r
267     PROJ.RequiresNamespace\r
268         "http://www.simantics.org/Layer0-1.1" : L0.URI\r
269         "http://www.simantics.org/Diagram-2.2" : L0.URI\r
270         "http://www.simantics.org/Modeling-1.2" : L0.URI\r
271         "http://www.simantics.org/SelectionView-1.2" : L0.URI\r
272 \r
273 MOD.ModelBrowser <T VIEW.Explorer\r
274     @L0.assert VIEW.Control.layoutData\r
275         _ : VIEW.GridLayout.GridData\r
276             VIEW.GridLayout.GridData.horizontalGrab true\r
277             VIEW.GridLayout.GridData.verticalGrab true\r
278     @L0.assert VIEW.Control.style\r
279         _ : VIEW.Control.Style\r
280             VIEW.Control.Style.HasConstant VIEW.Control.Style.Constant.Multi\r
281             VIEW.Control.Style.HasConstant VIEW.Control.Style.Constant.FullSelection\r
282     @L0.assert VIEW.Explorer.columns\r
283         _ : VIEW.Explorer.ColumnList\r
284             @L0.list\r
285                 VIEW.SingleColumn\r
286     @L0.assert VIEW.Explorer.input MOD.Functions.projectSelection\r
287     @L0.assert VIEW.Explorer.columnsVisible false\r
288     @L0.assert VIEW.Explorer.displayFilter true\r
289     @L0.assert VIEW.Explorer.publishSelection true\r
290     @L0.assert VIEW.Explorer.persistor MOD.Functions.standardPersistor\r
291     @L0.assert VIEW.Explorer.browseContext\r
292         _ : VIEW.ResourceURI\r
293             VIEW.ResourceURI.HasResource PROJ.ProjectBrowseContext\r
294     @L0.assert VIEW.Explorer.contextMenuId "#ModelBrowserPopup"\r
295     @L0.assert VIEW.Explorer.uiContext "org.simantics.modeling.ui.modelBrowser"\r
296     @L0.assert VIEW.Explorer.useNodeBrowseContexts true\r
297     @L0.assert VIEW.Explorer.useNodeActionContexts true\r
298 \r
299 MOD.PlainModelBrowser : MOD.ModelBrowser\r
300 \r
301 MOD.Functions.sclValue : L0.ExternalValue\r
302 \r
303 MOD.MonitorValue <T STR.MonitorValue\r
304   @L0.assert L0.valueAccessor\r
305     MOD.Functions.monitorValueAccessor : L0.ExternalValue\r
306   @L0.assert L0.ConvertsToValueWith MOD.Functions.sclValue\r
307   @L0.assert L0.SCLValue.environment\r
308     _ : L0.SCLValue.Environment\r
309       L0.SCLValue.Environment.moduleName "Simantics/All"\r
310       L0.SCLValue.Environment.namespace ""\r
311   @L0.assert L0.readOnly\r
312     MOD.Functions.monitorReadOnly : L0.Function\r
313 \r
314 MOD.SCLValue <T L0.SCLValue\r
315   @L0.assert L0.ConvertsToValueWith MOD.Functions.sclValue\r
316   /*@L0.assert L0.SCLValue.environment\r
317     _ : L0.SCLValue.Environment\r
318       L0.SCLValue.Environment.moduleName "Simantics/All"\r
319       L0.SCLValue.Environment.namespace ""*/\r
320 \r
321 MOD.scl : L0.Template\r
322     @template %subject %property %expression %valueType\r
323         %subject\r
324             %property _ : MOD.SCLValue\r
325               L0.SCLValue.expression %expression\r
326               L0.HasValueType %valueType\r
327 \r
328 MOD.Functions.obtainedString : L0.Function\r
329   L0.HasValueType "String"\r
330 \r
331 MOD.Functions.obtainedDouble : L0.Function\r
332   L0.HasValueType "Double"\r
333 \r
334 MOD.Functions.obtainedBoolean : L0.Function\r
335   L0.HasValueType "Boolean"\r
336 \r
337 MOD.Functions.obtainedColor : L0.Function\r
338   L0.HasValueType "Color"\r
339     \r
340 MOD.Functions.obtainedFormatter : L0.Function\r
341   L0.HasValueType "Formatter"\r
342 \r
343 MOD.Functions.obtainedVec2d : L0.Function\r
344   L0.HasValueType "Formatter"\r
345 \r
346 MOD.self <R L0.HasProperty : L0.FunctionalRelation\r
347 \r
348 //##########################################################################\r
349 //## Source information modeling\r
350 //##########################################################################\r
351 \r
352 MOD.SourceInformation <T L0.Entity\r
353     >-- MOD.SourceInformation.copiedFrom ==> "String" <R L0.HasProperty : L0.FunctionalRelation\r
354     >-- MOD.SourceInformation.copiedAtRevision --> L0.RevisionId <R L0.HasProperty : L0.FunctionalRelation\r
355 MOD.HasSourceInformation --> MOD.SourceInformation <R L0.IsRelatedTo : L0.FunctionalRelation\r
356 \r
357 //##########################################################################\r
358 //## Change information modeling\r
359 //##########################################################################\r
360 \r
361 MOD.ChangeInformation <T L0.Literal\r
362     @L0.assert L0.HasDataType ${ createdBy : String, createdAt : Long, modifiedBy : String, modifiedAt : Long }\r
363 \r
364 MOD.Functions.modificationTimeTextLong : L0.Function\r
365     L0.HasValueType "String"\r
366 \r
367 MOD.ChangeInformation."n-createdBy" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
368     ==> "String"\r
369     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    \r
370     L0.HasLabel "Author"\r
371     SEL.SortingName "1"\r
372     L0.readOnly true\r
373 \r
374 MOD.ChangeInformation."n-createdAt" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType    \r
375     ==> "Long"\r
376     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    \r
377     L0.HasLabel "Created At"\r
378     SEL.HasDisplayValue MOD.Functions.modificationTimeTextLong\r
379     SEL.SortingName "2"\r
380     L0.readOnly true\r
381 \r
382 MOD.ChangeInformation."n-modifiedBy" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType    \r
383     ==> "String"\r
384     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    \r
385     L0.HasLabel "Last Modified By"\r
386     SEL.SortingName "3"\r
387     L0.readOnly true\r
388 \r
389 MOD.ChangeInformation."n-modifiedAt" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType    \r
390     ==> "Long"\r
391     L0.HasSubliteralPredicate.Inverse MOD.ChangeInformation    \r
392     L0.HasLabel "Last Modified At"\r
393     SEL.HasDisplayValue MOD.Functions.modificationTimeTextLong\r
394     SEL.SortingName "4"\r
395     L0.readOnly true\r
396 \r
397 MOD.changeInformation <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType\r
398     L0.HasLabel "Change Information"\r
399     --> MOD.ChangeInformation\r
400     SEL.HasDisplayValue ""\r
401     L0.readOnly true\r
402     SEL.canBeLifted false\r
403     SEL.HasStandardPropertyInfo MOD.SystemPropertyInfo\r
404 \r
405 MOD.TypeWithChangeInformation <T L0.Entity\r
406 \r
407 L0.HasName : SEL.GenericParameterType\r
408   SEL.HasDisplayValue _ : SEL.DisplayValue\r
409     L0.Literal.HasInputValidator MOD.Functions.nameInputValidator  : L0.Function\r
410 \r
411 L0.HasLabel : SEL.GenericParameterType\r
412 L0X.HasGeneratedNamePrefix : SEL.GenericParameterType\r
413 \r
414 //MOD.HasNameBrowseContextContribution : VP.BrowseContextContribution\r
415 //    VP.BrowseContextContribution.HasType L0.String\r
416 //    VP.BrowseContextContribution.HasBrowseContext\r
417 //      _ : VP.BrowseContext\r
418 \r
419 L0.SCLModule : MOD.TypeWithChangeInformation\r
420 L0.Library : MOD.TypeWithChangeInformation\r
421 SIMU.Model : MOD.TypeWithChangeInformation\r
422 MOD.Subscription : MOD.TypeWithChangeInformation\r
423 MOD.Subscription.Item : MOD.TypeWithChangeInformation\r
424 SIMU.State : MOD.TypeWithChangeInformation\r
425 ISSUE.Issue : MOD.TypeWithChangeInformation     \r
426 DOC.Document : MOD.TypeWithChangeInformation\r
427 SHEET.Book : MOD.TypeWithChangeInformation\r
428 SHEET.Spreadsheet : MOD.TypeWithChangeInformation\r
429 L0.Type  : MOD.TypeWithChangeInformation\r
430 L0.Relation : MOD.TypeWithChangeInformation\r
431 STR.ComponentType <T MOD.TypeWithChangeInformation\r
432 \r
433 L0.SCLModule : L0.TypeWithIdentifier\r
434 L0.Type  : L0.TypeWithIdentifier\r
435 L0.Relation : L0.TypeWithIdentifier\r
436 L0.Library : L0.TypeWithIdentifier\r
437 STR.ComponentType <T L0.TypeWithIdentifier\r
438 \r
439 MOD.PartialIC <T L0.Literal\r
440     //@L0.assert L0.HasDataType ${ values : Map( ( | ResourceRVIPart { role : |CHILD|PROPERTY, resource : Long(unit="resource") } | StringRVIPart { role : |CHILD|PROPERTY, string : String } ) [], Variant) }\r
441     @L0.assert L0.HasDataType ${ variants : ( ( | ResourceRVIPart { role : |CHILD|PROPERTY, resource : Long(unit="resource") } | StringRVIPart { role : |CHILD|PROPERTY, string : String } ) [] ) [], variants : Variant[] }\r
442 \r
443 MOD.SCLCommandSession <T L0.Entity\r
444     >-- MOD.SCLCommandSession.hasValue --> L0.Value <R L0.HasProperty : SEL.GenericParameterType\r
445     \r
446 MOD.InitialCondition <T SIMU.State\r
447     >-- MOD.InitialCondition.sclState --> L0.ByteArray <R L0.HasProperty : L0.FunctionalRelation\r
448     >-- MOD.InitialCondition.HasSCLState --> MOD.SCLState <R L0.DependsOn\r
449 \r
450 MOD.SCLState <T L0.Entity\r
451     >-- MOD.SCLState.identifier --> L0.String <R L0.HasProperty : L0.FunctionalRelation\r
452     >-- MOD.SCLState.blob --> L0.ByteArray <R L0.HasProperty : L0.FunctionalRelation\r
453 \r
454 MOD.SCLQueryType <T STR.ComponentType\r
455 \r
456 MOD.SCLQuery : MOD.SCLQueryType <T STR.Component\r
457     >-- MOD.SCLQuery.values --> MOD.SCLQuery.Value <R L0.HasProperty : L0.FunctionalRelation\r
458     @L0.assert L0.domainChildren\r
459         MOD.Functions.queryChildMap : L0.ExternalValue\r
460 \r
461 MOD.SCLQuery.Value <T STR.SCLValue\r
462   @L0.assert L0.ConvertsToValueWith\r
463     MOD.Functions.queryValue : L0.ExternalValue\r
464     \r
465 MOD.SystemPropertyInfo : SEL.StandardPropertyInfo\r
466   SEL.StandardPropertyInfo.CategoryName "System Properties"\r
467   SEL.StandardPropertyInfo.CategorySortingName "System Properties"\r
468   SEL.StandardPropertyInfo.IsHidden false\r
469 \r
470 MOD.UserDefinedPropertyInfo : SEL.StandardPropertyInfo\r
471   SEL.StandardPropertyInfo.CategoryName "User-defined Properties"\r
472   SEL.StandardPropertyInfo.CategorySortingName ""\r
473   SEL.StandardPropertyInfo.IsHidden false\r
474 \r
475 MOD.LifeCycleProcess <T L0.Entity\r
476   >-- MOD.LifeCycleProcess.load ==> "LifeCycleContext -> <Proc> ()" <R L0.HasProperty : L0.FunctionalRelation\r
477   >-- MOD.LifeCycleProcess.unload ==> "LifeCycleContext -> <Proc> ()" <R L0.HasProperty : L0.FunctionalRelation\r
478   \r
479 MOD.DependencyTrackingProcess : MOD.LifeCycleProcess\r
480   @MOD.scl MOD.LifeCycleProcess.load\r
481     """\x -> trackDependencies"""\r
482     "LifeCycleContext -> <Proc> ()"\r
483   @MOD.scl MOD.LifeCycleProcess.unload\r
484     """\x -> untrackDependencies"""\r
485     "LifeCycleContext -> <Proc> ()"\r
486      \r
487 \r
488 MOD.EditorContribution <T L0.Entity\r
489   --> MOD.EditorContribution.canHandle ==> "Resource -> <ReadGraph> Boolean" <R L0.HasProperty : L0.FunctionalRelation \r
490   --> MOD.EditorContribution.editorId --> L0.String <R L0.HasProperty : L0.FunctionalRelation \r
491   --> MOD.EditorContribution.priority --> L0.Integer <R L0.HasProperty : L0.FunctionalRelation \r
492   --> MOD.EditorContribution.HasImage --> IMAGE.Image <R L0.DependsOn : L0.FunctionalRelation \r
493 \r
494 MOD.editorContribution : L0.Template\r
495     @template %subject %id %priority %image %canHandle\r
496         %subject : MOD.EditorContribution\r
497             MOD.EditorContribution.editorId %id\r
498             MOD.EditorContribution.priority %priority\r
499             MOD.EditorContribution.HasImage %image\r
500             MOD.EditorContribution.canHandle _ : MOD.SCLValue\r
501                 L0.SCLValue.expression %canHandle\r
502                 L0.HasValueType "Resource -> <ReadGraph> Boolean"\r
503                 \r
504 \r
505