expressir 0.2.16-x86-mingw32 → 0.2.17-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/exe/format +51 -13
  3. data/lib/expressir/express_exp/2.4/express_parser.so +0 -0
  4. data/lib/expressir/express_exp/2.5/express_parser.so +0 -0
  5. data/lib/expressir/express_exp/2.6/express_parser.so +0 -0
  6. data/lib/expressir/express_exp/2.7/express_parser.so +0 -0
  7. data/lib/expressir/express_exp/3.0/express_parser.so +0 -0
  8. data/lib/expressir/express_exp/formatter.rb +185 -135
  9. data/lib/expressir/express_exp/parser.rb +29 -29
  10. data/lib/expressir/express_exp/schema_head_formatter.rb +1 -4
  11. data/lib/expressir/express_exp/visitor.rb +11 -6
  12. data/lib/expressir/model/entity.rb +6 -6
  13. data/lib/expressir/model/expressions/query_expression.rb +3 -3
  14. data/lib/expressir/model/function.rb +15 -11
  15. data/lib/expressir/model/informal_proposition.rb +4 -1
  16. data/lib/expressir/model/interfaced_item.rb +4 -1
  17. data/lib/expressir/model/model_element.rb +20 -7
  18. data/lib/expressir/model/procedure.rb +15 -11
  19. data/lib/expressir/model/repository.rb +3 -3
  20. data/lib/expressir/model/rule.rb +16 -12
  21. data/lib/expressir/model/schema.rb +52 -45
  22. data/lib/expressir/model/statements/alias.rb +3 -3
  23. data/lib/expressir/model/statements/repeat.rb +3 -3
  24. data/lib/expressir/model/subtype_constraint.rb +1 -6
  25. data/lib/expressir/model/type.rb +9 -5
  26. data/lib/expressir/version.rb +1 -1
  27. data/original/examples/syntax/{hyperlink.exp → multiple.exp} +8 -8
  28. data/original/examples/syntax/multiple.yaml +180 -0
  29. data/original/examples/syntax/multiple_formatted.exp +71 -0
  30. data/original/examples/syntax/multiple_hyperlink_formatted.exp +71 -0
  31. data/original/examples/syntax/multiple_schema_head_hyperlink_formatted.exp +13 -0
  32. data/original/examples/syntax/remark.exp +41 -41
  33. data/original/examples/syntax/remark.yaml +445 -0
  34. data/original/examples/syntax/remark_formatted.exp +62 -50
  35. data/original/examples/syntax/{simple.exp → single.exp} +1 -1
  36. data/original/examples/syntax/single.yaml +8 -0
  37. data/original/examples/syntax/single_formatted.exp +6 -0
  38. data/original/examples/syntax/single_formatted.yaml +18 -0
  39. data/original/examples/syntax/syntax.exp +29 -19
  40. data/original/examples/syntax/syntax.yaml +3438 -0
  41. data/original/examples/syntax/syntax_formatted.exp +271 -131
  42. data/original/examples/syntax/syntax_schema_head_formatted.exp +18 -0
  43. data/spec/expressir/express_exp/formatter_spec.rb +110 -0
  44. data/spec/expressir/express_exp/parser_spec.rb +98 -0
  45. data/spec/expressir/model/{model_element/find_spec.rb → model_element_spec.rb} +93 -10
  46. metadata +17 -16
  47. data/original/examples/syntax/hyperlink_formatted.exp +0 -51
  48. data/original/examples/syntax/source.exp +0 -16
  49. data/spec/expressir/express_exp/formatter/remark_spec.rb +0 -28
  50. data/spec/expressir/express_exp/formatter/syntax_spec.rb +0 -28
  51. data/spec/expressir/express_exp/hyperlink_formatter_spec.rb +0 -28
  52. data/spec/expressir/express_exp/parser/multiple_spec.rb +0 -37
  53. data/spec/expressir/express_exp/parser/remark_spec.rb +0 -411
  54. data/spec/expressir/express_exp/parser/source_spec.rb +0 -29
  55. data/spec/expressir/express_exp/parser/syntax_spec.rb +0 -3086
  56. data/spec/expressir/express_exp/schema_head_formatter_spec.rb +0 -40
  57. data/spec/expressir/model/model_element/hash_spec.rb +0 -66
@@ -19,9 +19,9 @@ module Expressir
19
19
  end
20
20
 
21
21
  def children
22
- items = []
23
- items.push(self)
24
- items
22
+ [
23
+ self
24
+ ]
25
25
  end
26
26
  end
27
27
  end
@@ -27,9 +27,9 @@ module Expressir
27
27
  end
28
28
 
29
29
  def children
30
- items = []
31
- items.push(self)
32
- items
30
+ [
31
+ self
32
+ ]
33
33
  end
34
34
  end
35
35
  end
@@ -15,16 +15,11 @@ module Expressir
15
15
 
16
16
  @applies_to = options[:applies_to]
17
17
  @abstract = options[:abstract]
18
- @total_over = options[:total_over]
18
+ @total_over = options.fetch(:total_over, [])
19
19
  @supertype_expression = options[:supertype_expression]
20
20
 
21
21
  super
22
22
  end
23
-
24
- def children
25
- items = []
26
- items
27
- end
28
23
  end
29
24
  end
30
25
  end
@@ -19,12 +19,16 @@ module Expressir
19
19
  super
20
20
  end
21
21
 
22
+ def enumeration_items
23
+ type.is_a?(Types::Enumeration) ? type.items : []
24
+ end
25
+
22
26
  def children
23
- items = []
24
- items.push(*@type.is_a?(Types::Enumeration) ? @type.items : [])
25
- items.push(*@where)
26
- items.push(*@informal_propositions)
27
- items
27
+ [
28
+ *enumeration_items,
29
+ *where,
30
+ *informal_propositions
31
+ ]
28
32
  end
29
33
  end
30
34
  end
@@ -1,3 +1,3 @@
1
1
  module Expressir
2
- VERSION = "0.2.16".freeze
2
+ VERSION = "0.2.17".freeze
3
3
  end
@@ -1,7 +1,7 @@
1
- SCHEMA hyperlink_schema;
2
- REFERENCE FROM hyperlink_schema2;
3
- REFERENCE FROM hyperlink_schema3 (attribute_entity3);
4
- REFERENCE FROM hyperlink_schema4 (attribute_entity AS attribute_entity4);
1
+ SCHEMA multiple_schema1;
2
+ REFERENCE FROM multiple_schema2;
3
+ REFERENCE FROM multiple_schema3 (attribute_entity3);
4
+ REFERENCE FROM multiple_schema4 (attribute_entity AS attribute_entity4);
5
5
  ENTITY test; END_ENTITY;
6
6
  ENTITY empty_entity; END_ENTITY;
7
7
  ENTITY attribute_entity; test : BOOLEAN; END_ENTITY;
@@ -12,12 +12,12 @@ ENTITY subtype_attribute_entity3 SUBTYPE OF (attribute_entity3); SELF\attribute_
12
12
  ENTITY subtype_attribute_entity4 SUBTYPE OF (attribute_entity4); SELF\attribute_entity4.test : BOOLEAN; END_ENTITY;
13
13
  ENTITY subtype_missing_entity SUBTYPE OF (missing_entity); END_ENTITY;
14
14
  END_SCHEMA;
15
- SCHEMA hyperlink_schema2;
15
+ SCHEMA multiple_schema2;
16
16
  ENTITY attribute_entity2; test : BOOLEAN; END_ENTITY;
17
17
  END_SCHEMA;
18
- SCHEMA hyperlink_schema3;
18
+ SCHEMA multiple_schema3;
19
19
  ENTITY attribute_entity3; test : BOOLEAN; END_ENTITY;
20
20
  END_SCHEMA;
21
- SCHEMA hyperlink_schema4;
21
+ SCHEMA multiple_schema4;
22
22
  ENTITY attribute_entity; test : BOOLEAN; END_ENTITY;
23
- END_SCHEMA;
23
+ END_SCHEMA;
@@ -0,0 +1,180 @@
1
+ ---
2
+ _class: Expressir::Model::Repository
3
+ schemas:
4
+ - _class: Expressir::Model::Schema
5
+ id: multiple_schema1
6
+ interfaces:
7
+ - _class: Expressir::Model::Interface
8
+ kind: :REFERENCE
9
+ schema:
10
+ _class: Expressir::Model::Expressions::SimpleReference
11
+ id: multiple_schema2
12
+ - _class: Expressir::Model::Interface
13
+ kind: :REFERENCE
14
+ schema:
15
+ _class: Expressir::Model::Expressions::SimpleReference
16
+ id: multiple_schema3
17
+ items:
18
+ - _class: Expressir::Model::InterfaceItem
19
+ ref:
20
+ _class: Expressir::Model::Expressions::SimpleReference
21
+ id: attribute_entity3
22
+ - _class: Expressir::Model::Interface
23
+ kind: :REFERENCE
24
+ schema:
25
+ _class: Expressir::Model::Expressions::SimpleReference
26
+ id: multiple_schema4
27
+ items:
28
+ - _class: Expressir::Model::InterfaceItem
29
+ ref:
30
+ _class: Expressir::Model::Expressions::SimpleReference
31
+ id: attribute_entity
32
+ id: attribute_entity4
33
+ entities:
34
+ - _class: Expressir::Model::Entity
35
+ id: test
36
+ - _class: Expressir::Model::Entity
37
+ id: empty_entity
38
+ - _class: Expressir::Model::Entity
39
+ id: attribute_entity
40
+ attributes:
41
+ - _class: Expressir::Model::Attribute
42
+ id: test
43
+ kind: :EXPLICIT
44
+ type:
45
+ _class: Expressir::Model::Types::Boolean
46
+ - _class: Expressir::Model::Entity
47
+ id: subtype_empty_entity
48
+ subtype_of:
49
+ - _class: Expressir::Model::Expressions::SimpleReference
50
+ id: empty_entity
51
+ - _class: Expressir::Model::Entity
52
+ id: subtype_attribute_entity
53
+ subtype_of:
54
+ - _class: Expressir::Model::Expressions::SimpleReference
55
+ id: attribute_entity
56
+ attributes:
57
+ - _class: Expressir::Model::Attribute
58
+ kind: :EXPLICIT
59
+ supertype_attribute:
60
+ _class: Expressir::Model::Expressions::AttributeReference
61
+ ref:
62
+ _class: Expressir::Model::Expressions::GroupReference
63
+ ref:
64
+ _class: Expressir::Model::Expressions::SimpleReference
65
+ id: SELF
66
+ entity:
67
+ _class: Expressir::Model::Expressions::SimpleReference
68
+ id: attribute_entity
69
+ attribute:
70
+ _class: Expressir::Model::Expressions::SimpleReference
71
+ id: test
72
+ type:
73
+ _class: Expressir::Model::Types::Boolean
74
+ - _class: Expressir::Model::Entity
75
+ id: subtype_attribute_entity2
76
+ subtype_of:
77
+ - _class: Expressir::Model::Expressions::SimpleReference
78
+ id: attribute_entity2
79
+ attributes:
80
+ - _class: Expressir::Model::Attribute
81
+ kind: :EXPLICIT
82
+ supertype_attribute:
83
+ _class: Expressir::Model::Expressions::AttributeReference
84
+ ref:
85
+ _class: Expressir::Model::Expressions::GroupReference
86
+ ref:
87
+ _class: Expressir::Model::Expressions::SimpleReference
88
+ id: SELF
89
+ entity:
90
+ _class: Expressir::Model::Expressions::SimpleReference
91
+ id: attribute_entity2
92
+ attribute:
93
+ _class: Expressir::Model::Expressions::SimpleReference
94
+ id: test
95
+ type:
96
+ _class: Expressir::Model::Types::Boolean
97
+ - _class: Expressir::Model::Entity
98
+ id: subtype_attribute_entity3
99
+ subtype_of:
100
+ - _class: Expressir::Model::Expressions::SimpleReference
101
+ id: attribute_entity3
102
+ attributes:
103
+ - _class: Expressir::Model::Attribute
104
+ kind: :EXPLICIT
105
+ supertype_attribute:
106
+ _class: Expressir::Model::Expressions::AttributeReference
107
+ ref:
108
+ _class: Expressir::Model::Expressions::GroupReference
109
+ ref:
110
+ _class: Expressir::Model::Expressions::SimpleReference
111
+ id: SELF
112
+ entity:
113
+ _class: Expressir::Model::Expressions::SimpleReference
114
+ id: attribute_entity3
115
+ attribute:
116
+ _class: Expressir::Model::Expressions::SimpleReference
117
+ id: test
118
+ type:
119
+ _class: Expressir::Model::Types::Boolean
120
+ - _class: Expressir::Model::Entity
121
+ id: subtype_attribute_entity4
122
+ subtype_of:
123
+ - _class: Expressir::Model::Expressions::SimpleReference
124
+ id: attribute_entity4
125
+ attributes:
126
+ - _class: Expressir::Model::Attribute
127
+ kind: :EXPLICIT
128
+ supertype_attribute:
129
+ _class: Expressir::Model::Expressions::AttributeReference
130
+ ref:
131
+ _class: Expressir::Model::Expressions::GroupReference
132
+ ref:
133
+ _class: Expressir::Model::Expressions::SimpleReference
134
+ id: SELF
135
+ entity:
136
+ _class: Expressir::Model::Expressions::SimpleReference
137
+ id: attribute_entity4
138
+ attribute:
139
+ _class: Expressir::Model::Expressions::SimpleReference
140
+ id: test
141
+ type:
142
+ _class: Expressir::Model::Types::Boolean
143
+ - _class: Expressir::Model::Entity
144
+ id: subtype_missing_entity
145
+ subtype_of:
146
+ - _class: Expressir::Model::Expressions::SimpleReference
147
+ id: missing_entity
148
+ - _class: Expressir::Model::Schema
149
+ id: multiple_schema2
150
+ entities:
151
+ - _class: Expressir::Model::Entity
152
+ id: attribute_entity2
153
+ attributes:
154
+ - _class: Expressir::Model::Attribute
155
+ id: test
156
+ kind: :EXPLICIT
157
+ type:
158
+ _class: Expressir::Model::Types::Boolean
159
+ - _class: Expressir::Model::Schema
160
+ id: multiple_schema3
161
+ entities:
162
+ - _class: Expressir::Model::Entity
163
+ id: attribute_entity3
164
+ attributes:
165
+ - _class: Expressir::Model::Attribute
166
+ id: test
167
+ kind: :EXPLICIT
168
+ type:
169
+ _class: Expressir::Model::Types::Boolean
170
+ - _class: Expressir::Model::Schema
171
+ id: multiple_schema4
172
+ entities:
173
+ - _class: Expressir::Model::Entity
174
+ id: attribute_entity
175
+ attributes:
176
+ - _class: Expressir::Model::Attribute
177
+ id: test
178
+ kind: :EXPLICIT
179
+ type:
180
+ _class: Expressir::Model::Types::Boolean
@@ -0,0 +1,71 @@
1
+ SCHEMA multiple_schema1;
2
+
3
+ REFERENCE FROM multiple_schema2;
4
+ REFERENCE FROM multiple_schema3
5
+ (attribute_entity3);
6
+ REFERENCE FROM multiple_schema4
7
+ (attribute_entity AS attribute_entity4);
8
+
9
+ ENTITY test;
10
+ END_ENTITY;
11
+
12
+ ENTITY empty_entity;
13
+ END_ENTITY;
14
+
15
+ ENTITY attribute_entity;
16
+ test : BOOLEAN;
17
+ END_ENTITY;
18
+
19
+ ENTITY subtype_empty_entity
20
+ SUBTYPE OF (empty_entity);
21
+ END_ENTITY;
22
+
23
+ ENTITY subtype_attribute_entity
24
+ SUBTYPE OF (attribute_entity);
25
+ SELF\attribute_entity.test : BOOLEAN;
26
+ END_ENTITY;
27
+
28
+ ENTITY subtype_attribute_entity2
29
+ SUBTYPE OF (attribute_entity2);
30
+ SELF\attribute_entity2.test : BOOLEAN;
31
+ END_ENTITY;
32
+
33
+ ENTITY subtype_attribute_entity3
34
+ SUBTYPE OF (attribute_entity3);
35
+ SELF\attribute_entity3.test : BOOLEAN;
36
+ END_ENTITY;
37
+
38
+ ENTITY subtype_attribute_entity4
39
+ SUBTYPE OF (attribute_entity4);
40
+ SELF\attribute_entity4.test : BOOLEAN;
41
+ END_ENTITY;
42
+
43
+ ENTITY subtype_missing_entity
44
+ SUBTYPE OF (missing_entity);
45
+ END_ENTITY;
46
+
47
+ END_SCHEMA;
48
+
49
+ SCHEMA multiple_schema2;
50
+
51
+ ENTITY attribute_entity2;
52
+ test : BOOLEAN;
53
+ END_ENTITY;
54
+
55
+ END_SCHEMA;
56
+
57
+ SCHEMA multiple_schema3;
58
+
59
+ ENTITY attribute_entity3;
60
+ test : BOOLEAN;
61
+ END_ENTITY;
62
+
63
+ END_SCHEMA;
64
+
65
+ SCHEMA multiple_schema4;
66
+
67
+ ENTITY attribute_entity;
68
+ test : BOOLEAN;
69
+ END_ENTITY;
70
+
71
+ END_SCHEMA;
@@ -0,0 +1,71 @@
1
+ SCHEMA multiple_schema1;
2
+
3
+ REFERENCE FROM {{{<<express:multiple_schema2,multiple_schema2>>}}};
4
+ REFERENCE FROM {{{<<express:multiple_schema3,multiple_schema3>>}}}
5
+ ({{{<<express:multiple_schema3.attribute_entity3,attribute_entity3>>}}});
6
+ REFERENCE FROM {{{<<express:multiple_schema4,multiple_schema4>>}}}
7
+ ({{{<<express:multiple_schema4.attribute_entity,attribute_entity>>}}} AS attribute_entity4);
8
+
9
+ ENTITY test;
10
+ END_ENTITY;
11
+
12
+ ENTITY empty_entity;
13
+ END_ENTITY;
14
+
15
+ ENTITY attribute_entity;
16
+ test : BOOLEAN;
17
+ END_ENTITY;
18
+
19
+ ENTITY subtype_empty_entity
20
+ SUBTYPE OF ({{{<<express:multiple_schema1.empty_entity,empty_entity>>}}});
21
+ END_ENTITY;
22
+
23
+ ENTITY subtype_attribute_entity
24
+ SUBTYPE OF ({{{<<express:multiple_schema1.attribute_entity,attribute_entity>>}}});
25
+ SELF\{{{<<express:multiple_schema1.attribute_entity,attribute_entity>>}}}.test : BOOLEAN;
26
+ END_ENTITY;
27
+
28
+ ENTITY subtype_attribute_entity2
29
+ SUBTYPE OF ({{{<<express:multiple_schema2.attribute_entity2,attribute_entity2>>}}});
30
+ SELF\{{{<<express:multiple_schema2.attribute_entity2,attribute_entity2>>}}}.test : BOOLEAN;
31
+ END_ENTITY;
32
+
33
+ ENTITY subtype_attribute_entity3
34
+ SUBTYPE OF ({{{<<express:multiple_schema3.attribute_entity3,attribute_entity3>>}}});
35
+ SELF\{{{<<express:multiple_schema3.attribute_entity3,attribute_entity3>>}}}.test : BOOLEAN;
36
+ END_ENTITY;
37
+
38
+ ENTITY subtype_attribute_entity4
39
+ SUBTYPE OF ({{{<<express:multiple_schema4.attribute_entity,attribute_entity4>>}}});
40
+ SELF\{{{<<express:multiple_schema4.attribute_entity,attribute_entity4>>}}}.test : BOOLEAN;
41
+ END_ENTITY;
42
+
43
+ ENTITY subtype_missing_entity
44
+ SUBTYPE OF (missing_entity);
45
+ END_ENTITY;
46
+
47
+ END_SCHEMA;
48
+
49
+ SCHEMA multiple_schema2;
50
+
51
+ ENTITY attribute_entity2;
52
+ test : BOOLEAN;
53
+ END_ENTITY;
54
+
55
+ END_SCHEMA;
56
+
57
+ SCHEMA multiple_schema3;
58
+
59
+ ENTITY attribute_entity3;
60
+ test : BOOLEAN;
61
+ END_ENTITY;
62
+
63
+ END_SCHEMA;
64
+
65
+ SCHEMA multiple_schema4;
66
+
67
+ ENTITY attribute_entity;
68
+ test : BOOLEAN;
69
+ END_ENTITY;
70
+
71
+ END_SCHEMA;
@@ -0,0 +1,13 @@
1
+ SCHEMA multiple_schema1;
2
+
3
+ REFERENCE FROM {{{<<express:multiple_schema2,multiple_schema2>>}}};
4
+ REFERENCE FROM {{{<<express:multiple_schema3,multiple_schema3>>}}}
5
+ ({{{<<express:multiple_schema3.attribute_entity3,attribute_entity3>>}}});
6
+ REFERENCE FROM {{{<<express:multiple_schema4,multiple_schema4>>}}}
7
+ ({{{<<express:multiple_schema4.attribute_entity,attribute_entity>>}}} AS attribute_entity4);
8
+
9
+ SCHEMA multiple_schema2;
10
+
11
+ SCHEMA multiple_schema3;
12
+
13
+ SCHEMA multiple_schema4;
@@ -12,7 +12,7 @@ SCHEMA remark_schema;
12
12
 
13
13
  CONSTANT remark_constant : STRING := 'xxx'; END_CONSTANT;
14
14
  TYPE remark_type = ENUMERATION OF (remark_enumeration_item);
15
- WHERE WR1 : TRUE;
15
+ WHERE WR1: TRUE;
16
16
  --"WR1" type scope - type where
17
17
  --"IP1" type scope - type informal proposition
18
18
  --"wr:WR1" type scope - type where, with prefix
@@ -22,12 +22,12 @@ ENTITY remark_entity;
22
22
  remark_attribute : STRING;
23
23
  DERIVE remark_derived_attribute : STRING := 'xxx';
24
24
  INVERSE remark_inverse_attribute : remark_entity FOR remark_attribute;
25
- UNIQUE remark_unique : remark_attribute;
26
- WHERE WR1 : TRUE;
25
+ UNIQUE UR1: remark_attribute;
26
+ WHERE WR1: TRUE;
27
27
  --"remark_attribute" entity scope - entity attribute
28
28
  --"remark_derived_attribute" entity scope - entity derived attribute
29
29
  --"remark_inverse_attribute" entity scope - entity inverse attribute
30
- --"remark_unique" entity scope - entity unique
30
+ --"UR1" entity scope - entity unique
31
31
  --"WR1" entity scope - entity where
32
32
  --"IP1" entity scope - entity informal proposition
33
33
  --"wr:WR1" entity scope - entity where, with prefix
@@ -54,26 +54,6 @@ FUNCTION remark_function(remark_parameter : STRING) : BOOLEAN;
54
54
  --"remark_constant" function scope - function constant
55
55
  --"remark_variable" function scope - function variable
56
56
  END_FUNCTION;
57
- PROCEDURE remark_procedure(remark_parameter : STRING);
58
- TYPE remark_type = ENUMERATION OF (remark_enumeration_item); END_TYPE;
59
- CONSTANT remark_constant : STRING := 'xxx'; END_CONSTANT;
60
- LOCAL remark_variable : STRING; END_LOCAL;
61
- ALIAS remark_alias FOR remark_variable; ;
62
- --"remark_alias" procedure alias scope - procedure alias
63
- END_ALIAS;
64
- REPEAT remark_repeat := 1 TO 9; ;
65
- --"remark_repeat" procedure repeat scope - procedure repeat
66
- END_REPEAT;
67
- remark_variable := QUERY(remark_query <* remark_variable | TRUE
68
- --"remark_query" procedure query scope - procedure query
69
- );
70
- --"remark_parameter" procedure scope - procedure parameter
71
- --"remark_type" procedure scope - procedure type
72
- --"remark_type.remark_enumeration_item" procedure scope - procedure enumeration item
73
- --"remark_enumeration_item" procedure scope - procedure enumeration item, on the same level as the type
74
- --"remark_constant" procedure scope - procedure constant
75
- --"remark_variable" procedure scope - procedure variable
76
- END_PROCEDURE;
77
57
  RULE remark_rule FOR (remark_entity);
78
58
  TYPE remark_type = ENUMERATION OF (remark_enumeration_item); END_TYPE;
79
59
  CONSTANT remark_constant : STRING := 'xxx'; END_CONSTANT;
@@ -87,7 +67,7 @@ RULE remark_rule FOR (remark_entity);
87
67
  remark_variable := QUERY(remark_query <* remark_variable | TRUE
88
68
  --"remark_query" rule query scope - rule query
89
69
  );
90
- WHERE WR1 : TRUE;
70
+ WHERE WR1: TRUE;
91
71
  --"remark_type" rule scope - rule type
92
72
  --"remark_type.remark_enumeration_item" rule scope - rule enumeration item
93
73
  --"remark_enumeration_item" rule scope - rule enumeration item, on the same level as the type
@@ -98,6 +78,26 @@ RULE remark_rule FOR (remark_entity);
98
78
  --"wr:WR1" rule scope - rule where, with prefix
99
79
  --"ip:IP1" rule scope - rule informal proposition, with prefix
100
80
  END_RULE;
81
+ PROCEDURE remark_procedure(remark_parameter : STRING);
82
+ TYPE remark_type = ENUMERATION OF (remark_enumeration_item); END_TYPE;
83
+ CONSTANT remark_constant : STRING := 'xxx'; END_CONSTANT;
84
+ LOCAL remark_variable : STRING; END_LOCAL;
85
+ ALIAS remark_alias FOR remark_variable; ;
86
+ --"remark_alias" procedure alias scope - procedure alias
87
+ END_ALIAS;
88
+ REPEAT remark_repeat := 1 TO 9; ;
89
+ --"remark_repeat" procedure repeat scope - procedure repeat
90
+ END_REPEAT;
91
+ remark_variable := QUERY(remark_query <* remark_variable | TRUE
92
+ --"remark_query" procedure query scope - procedure query
93
+ );
94
+ --"remark_parameter" procedure scope - procedure parameter
95
+ --"remark_type" procedure scope - procedure type
96
+ --"remark_type.remark_enumeration_item" procedure scope - procedure enumeration item
97
+ --"remark_enumeration_item" procedure scope - procedure enumeration item, on the same level as the type
98
+ --"remark_constant" procedure scope - procedure constant
99
+ --"remark_variable" procedure scope - procedure variable
100
+ END_PROCEDURE;
101
101
 
102
102
  --"remark_constant" schema scope - constant
103
103
  --"remark_type" schema scope - type
@@ -111,7 +111,7 @@ END_RULE;
111
111
  --"remark_entity.remark_attribute" schema scope - entity attribute
112
112
  --"remark_entity.remark_derived_attribute" schema scope - entity derived attribute
113
113
  --"remark_entity.remark_inverse_attribute" schema scope - entity inverse attribute
114
- --"remark_entity.remark_unique" schema scope - entity unique
114
+ --"remark_entity.UR1" schema scope - entity unique
115
115
  --"remark_entity.WR1" schema scope - entity where
116
116
  --"remark_entity.IP1" schema scope - entity informal proposition
117
117
  --"remark_entity.wr:WR1" schema scope - entity where, with prefix
@@ -124,13 +124,6 @@ END_RULE;
124
124
  --"remark_function.remark_enumeration_item" schema scope - function enumeration item, on the same level as the type
125
125
  --"remark_function.remark_constant" schema scope - function constant
126
126
  --"remark_function.remark_variable" schema scope - function variable
127
- --"remark_procedure" schema scope - procedure
128
- --"remark_procedure.remark_parameter" schema scope - procedure parameter
129
- --"remark_procedure.remark_type" schema scope - procedure type
130
- --"remark_procedure.remark_type.remark_enumeration_item" schema scope - procedure enumeration item
131
- --"remark_procedure.remark_enumeration_item" schema scope - procedure enumeration item, on the same level as the type
132
- --"remark_procedure.remark_constant" schema scope - procedure constant
133
- --"remark_procedure.remark_variable" schema scope - procedure variable
134
127
  --"remark_rule" schema scope - rule
135
128
  --"remark_rule.remark_type" schema scope - rule type
136
129
  --"remark_rule.remark_type.remark_enumeration_item" schema scope - rule enumeration item
@@ -141,6 +134,13 @@ END_RULE;
141
134
  --"remark_rule.IP1" schema scope - rule informal proposition
142
135
  --"remark_rule.wr:WR1" schema scope - rule where, with prefix
143
136
  --"remark_rule.ip:IP1" schema scope - rule informal proposition, with prefix
137
+ --"remark_procedure" schema scope - procedure
138
+ --"remark_procedure.remark_parameter" schema scope - procedure parameter
139
+ --"remark_procedure.remark_type" schema scope - procedure type
140
+ --"remark_procedure.remark_type.remark_enumeration_item" schema scope - procedure enumeration item
141
+ --"remark_procedure.remark_enumeration_item" schema scope - procedure enumeration item, on the same level as the type
142
+ --"remark_procedure.remark_constant" schema scope - procedure constant
143
+ --"remark_procedure.remark_variable" schema scope - procedure variable
144
144
 
145
145
  END_SCHEMA;
146
146
 
@@ -157,7 +157,7 @@ END_SCHEMA;
157
157
  --"remark_schema.remark_entity.remark_attribute" universal scope - entity attribute
158
158
  --"remark_schema.remark_entity.remark_derived_attribute" universal scope - entity derived attribute
159
159
  --"remark_schema.remark_entity.remark_inverse_attribute" universal scope - entity inverse attribute
160
- --"remark_schema.remark_entity.remark_unique" universal scope - entity unique
160
+ --"remark_schema.remark_entity.UR1" universal scope - entity unique
161
161
  --"remark_schema.remark_entity.WR1" universal scope - entity where
162
162
  --"remark_schema.remark_entity.IP1" universal scope - entity informal proposition
163
163
  --"remark_schema.remark_entity.wr:WR1" universal scope - entity where, with prefix
@@ -170,13 +170,6 @@ END_SCHEMA;
170
170
  --"remark_schema.remark_function.remark_enumeration_item" universal scope - function enumeration item, on the same level as the type
171
171
  --"remark_schema.remark_function.remark_constant" universal scope - function constant
172
172
  --"remark_schema.remark_function.remark_variable" universal scope - function variable
173
- --"remark_schema.remark_procedure" universal scope - procedure
174
- --"remark_schema.remark_procedure.remark_parameter" universal scope - procedure parameter
175
- --"remark_schema.remark_procedure.remark_type" universal scope - procedure type
176
- --"remark_schema.remark_procedure.remark_type.remark_enumeration_item" universal scope - procedure enumeration item
177
- --"remark_schema.remark_procedure.remark_enumeration_item" universal scope - procedure enumeration item, on the same level as the type
178
- --"remark_schema.remark_procedure.remark_constant" universal scope - procedure constant
179
- --"remark_schema.remark_procedure.remark_variable" universal scope - procedure variable
180
173
  --"remark_schema.remark_rule" universal scope - rule
181
174
  --"remark_schema.remark_rule.remark_type" universal scope - rule type
182
175
  --"remark_schema.remark_rule.remark_type.remark_enumeration_item" universal scope - rule enumeration item
@@ -187,3 +180,10 @@ END_SCHEMA;
187
180
  --"remark_schema.remark_rule.IP1" universal scope - rule informal proposition
188
181
  --"remark_schema.remark_rule.wr:WR1" universal scope - rule where, with prefix
189
182
  --"remark_schema.remark_rule.ip:IP1" universal scope - rule informal proposition, with prefix
183
+ --"remark_schema.remark_procedure" universal scope - procedure
184
+ --"remark_schema.remark_procedure.remark_parameter" universal scope - procedure parameter
185
+ --"remark_schema.remark_procedure.remark_type" universal scope - procedure type
186
+ --"remark_schema.remark_procedure.remark_type.remark_enumeration_item" universal scope - procedure enumeration item
187
+ --"remark_schema.remark_procedure.remark_enumeration_item" universal scope - procedure enumeration item, on the same level as the type
188
+ --"remark_schema.remark_procedure.remark_constant" universal scope - procedure constant
189
+ --"remark_schema.remark_procedure.remark_variable" universal scope - procedure variable