]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.issues.ontology/graph/Issue.pgraph
Allow overriding issue hidden-ness/hiding logic in inheriting ontologies
[simantics/platform.git] / bundles / org.simantics.issues.ontology / graph / Issue.pgraph
1 // Converted from version 16895
2 L0 = <http://www.simantics.org/Layer0-1.1>
3 L0X = <http://www.simantics.org/Layer0X-1.1>
4
5 // Standard database structure
6
7 ISSUE = <http://www.simantics.org/Issue-1.2> : L0.Ontology
8     @L0.new
9     L0.HasResourceClass "org.simantics.issues.ontology.IssueResource"
10
11 ISSUE.Functions : L0.Library
12
13 ISSUE.IssueSourceType <T L0.Type
14
15 ISSUE.IssueSource <T L0.Entity : ISSUE.IssueSourceType
16     @L0.tag ISSUE.IssueSource.Selected
17     >-- ISSUE.IssueSource.HasConstraint --> L0.Constraint <R L0.DependsOn
18     >-- ISSUE.IssueSource.Manages --> ISSUE.Issue <R L0.IsRelatedTo
19       L0.InverseOf ISSUE.IssueSource.Manages.Inverse <R L0.IsRelatedTo
20     >-- ISSUE.IssueSource.Selected --> ISSUE.IssueSource <R L0.IsRelatedTo
21     >-- ISSUE.IssueSource.active ==> "Boolean" <R L0.HasProperty : L0.FunctionalRelation
22     @L0.assert  ISSUE.IssueSource.active true
23         
24 ISSUE.ContinuousIssueSource <T ISSUE.IssueSource
25     >-- ISSUE.ContinuousIssueSource.lastUpdateRevision --> L0.Long <R L0.HasProperty : L0.FunctionalRelation
26
27 ISSUE.DynamicIssueSource <T ISSUE.IssueSource
28     L0.HasDescription "A dynamic issue source is a source that is browsed purely through the Variable interface to produce a single subtree to represent issues. The issues do not have to have a database resource representation backing them."
29
30 ISSUE.Issue.ContextList <T L0.List
31     @L0.assert L0.List.ElementPredicate
32       ISSUE.Issue.ContextList.Element <R L0.List.ElementWithInverse
33
34 ISSUE.Issue <T L0.Entity
35     L0.HasDescription "A notification of specified severity about an issue in the model."
36     >-- ISSUE.Issue.HasContext <R L0.IsRelatedTo
37       L0.InverseOf ISSUE.Issue.HasContext.Inverse <R L0.IsRelatedTo
38     >-- ISSUE.Issue.HasSeverity --> ISSUE.Severity <R L0.DependsOn : L0.FunctionalRelation
39     >-- ISSUE.Issue.HasContexts --> ISSUE.Issue.ContextList <R L0.DependsOn
40     >-- ISSUE.Issue.contexts ==> "[Resource]" <R L0.HasProperty : L0.FunctionalRelation
41     >-- ISSUE.Issue.severity ==> "String" <R L0.HasProperty : L0.FunctionalRelation
42     >-- ISSUE.Issue.resource ==> "String" <R L0.HasProperty : L0.FunctionalRelation
43     >-- ISSUE.Issue.path ==> "String" <R L0.HasProperty : L0.FunctionalRelation
44     >-- ISSUE.Issue.creationTime --> L0.String <R L0.HasProperty : L0.FunctionalRelation
45     >-- ISSUE.Issue.hider ==> "Maybe (Boolean -> <WriteGraph> Boolean)" <R L0.HasProperty : L0.FunctionalRelation
46     >-- ISSUE.Issue.hidden ==> "Boolean" <R L0.HasProperty : L0.FunctionalRelation
47     @L0.assert L0.HasDescription 
48       ISSUE.Functions.defaultDescription : L0.Function
49         L0.HasValueType "String"
50     @L0.assert ISSUE.Issue.severity
51       ISSUE.Functions.standardIssueSeverity : L0.Function
52         L0.HasValueType "String"
53     @L0.assert ISSUE.Issue.resource 
54       ISSUE.Functions.standardIssueResource : L0.Function
55         L0.HasValueType "String"
56     @L0.assert ISSUE.Issue.path 
57       ISSUE.Functions.standardIssuePath : L0.Function
58         L0.HasValueType "String"
59     @L0.assert ISSUE.Issue.contexts
60       ISSUE.Functions.standardIssueContexts : L0.Function
61         L0.HasValueType "[Resource]"
62     @L0.assert ISSUE.Issue.hider
63       ISSUE.Functions.standardIssueHider : L0.Function
64         L0.HasValueType "Maybe (Boolean -> <WriteGraph> Boolean)"
65     @L0.assert ISSUE.Issue.hidden
66       ISSUE.Functions.standardIssueHidden : L0.Function
67         L0.HasValueType "Boolean"
68
69 ISSUE.UserIssue
70     L0.HasDescription "A tag for marking issues as manually added, i.e. so called user issues."
71     @L0.defTag
72     @L0.symmetric
73
74 ISSUE.Hidden
75     L0.HasDescription "A tag for marking issues hidden. This can be used as a hint for user interfaces."
76     @L0.defTag
77     @L0.symmetric
78
79 ISSUE.Resolved
80     L0.HasDescription "A tag for marking issues as resolved."
81     @L0.defTag
82     @L0.symmetric
83
84 ISSUE.Severity <T L0.Value
85     L0.HasDescription "The severity level of an issue"
86     @L0.tag L0.Enumeration
87     @L0.assert L0.ConvertsToValueWith
88         L0.Functions.resourceAsValue
89     
90 ISSUE.Severity.Note : ISSUE.Severity
91     L0.HasDescription "These issues are markers for documentation purposes"
92 ISSUE.Severity.Info : ISSUE.Severity
93     L0.HasDescription "These issues are good to know information"
94 ISSUE.Severity.Warning : ISSUE.Severity
95     L0.HasDescription "These issues point out a possible error"
96 ISSUE.Severity.Error : ISSUE.Severity
97     L0.HasDescription "These issues indicate a severe issue which blocks calculation"
98 ISSUE.Severity.Fatal : ISSUE.Severity
99     L0.HasDescription "These issues indicate situations which should not occur in normal operation"
100
101 ISSUE.Sources : L0.Library
102
103 ISSUE.Sources.DependencyTracker <T ISSUE.ContinuousIssueSource
104   >-- ISSUE.Sources.DependencyTracker.HasType --> L0.Entity <R L0.DependsOn  : L0.FunctionalRelation
105   >-- ISSUE.Sources.DependencyTracker.HasSearchType --> L0.Entity <R L0.DependsOn
106   >-- ISSUE.Sources.DependencyTracker.HasExtension --> L0.Function <R L0.DependsOn : L0.Function
107   >-- ISSUE.Sources.DependencyTracker.HasBaseFunction --> L0.Function <R L0.DependsOn : L0.FunctionalRelation
108   >-- ISSUE.Sources.DependencyTracker.HasConstraint --> L0.Constraint <R ISSUE.IssueSource.HasConstraint : L0.FunctionalRelation
109   @L0.assert ISSUE.Sources.DependencyTracker.HasBaseFunction
110     ISSUE.Functions.dependencyBaseRealizationFunction : L0.Function
111   
112 ISSUE.Sources.ListeningDependencyTracker <T ISSUE.Sources.DependencyTracker
113   
114 ISSUE.Sources.DependencyTracker.Issue <T ISSUE.Issue
115   @L0.assert ISSUE.Issue.resource
116     ISSUE.Functions.standardIssueResource
117   @L0.assert ISSUE.Issue.path
118     ISSUE.Functions.standardIssuePath
119
120 ISSUE.Sources.DependencyTracker.AnonymousIssue <T ISSUE.Sources.DependencyTracker.Issue
121
122 // IssueSource template
123 ISSUE.constraint : L0.Template
124     @template %type %constraint %source %validator %baseFunction
125         %type
126             L0.HasConstraint %constraint : L0.Constraint
127                 L0.Constraint.Validator %validator
128         %source <T ISSUE.Sources.DependencyTracker
129             L0.Asserts _ : L0.Assertion
130                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasType
131                 L0.HasObject %type
132             L0.Asserts _ : L0.Assertion
133                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasConstraint
134                 L0.HasObject %constraint     
135             L0.Asserts _ : L0.Assertion
136                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasBaseFunction
137                 L0.HasObject %baseFunction                          
138             
139
140 ISSUE.listeningConstraint3 : L0.Template
141     @template %type %constraint %source %validator
142         %type
143             L0.HasConstraint %constraint : L0.Constraint
144                 L0.Constraint.Validator %validator
145         %source <T ISSUE.Sources.ListeningDependencyTracker
146             L0.Asserts _ : L0.Assertion
147                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasType
148                 L0.HasObject %type
149             L0.Asserts _ : L0.Assertion
150                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasConstraint
151                 L0.HasObject %constraint
152
153 ISSUE.listeningConstraint : L0.Template
154     @template %type %constraint %source %validator %baseFunction
155         %type
156             L0.HasConstraint %constraint : L0.Constraint
157                 L0.Constraint.Validator %validator
158         %source <T ISSUE.Sources.ListeningDependencyTracker
159             L0.Asserts _ : L0.Assertion
160                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasType
161                 L0.HasObject %type
162             L0.Asserts _ : L0.Assertion
163                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasConstraint
164                 L0.HasObject %constraint
165             L0.Asserts _ : L0.Assertion
166                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasBaseFunction
167                 L0.HasObject %baseFunction                
168
169 // Issue template
170 ISSUE.issue : L0.Template
171     @template %issue %severity %description
172         %issue <T ISSUE.Sources.DependencyTracker.Issue
173             L0.Asserts _ : L0.Assertion
174                 L0.HasPredicate ISSUE.Issue.HasSeverity
175                 L0.HasObject %severity
176             L0.Asserts _ : L0.Assertion
177                 L0.HasPredicate L0.HasDescription
178                 L0.HasObject %description
179
180 ISSUE.anonymousIssue : L0.Template
181     @template %issue %severity %description
182         %issue <T ISSUE.Sources.DependencyTracker.AnonymousIssue
183             L0.Asserts _ : L0.Assertion
184                 L0.HasPredicate ISSUE.Issue.HasSeverity
185                 L0.HasObject %severity
186             L0.Asserts _ : L0.Assertion
187                 L0.HasPredicate L0.HasDescription
188                 L0.HasObject %description
189
190 ISSUE.assignConstraint : L0.Template
191     @template %type %constraint %constraintType %source %sourceType
192         %type
193             L0.HasConstraint %constraint : %constraintType
194         %source <T %sourceType
195             L0.Asserts _ : L0.Assertion
196                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasType
197                 L0.HasObject %type
198             L0.Asserts _ : L0.Assertion
199                 L0.HasPredicate ISSUE.Sources.DependencyTracker.HasConstraint
200                 L0.HasObject %constraint
201                 
202