@zenstackhq/language 1.0.0-alpha.99 → 1.0.0-beta.1

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.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /******************************************************************************
3
- * This file was generated by langium-cli 1.1.0.
3
+ * This file was generated by langium-cli 1.2.0.
4
4
  * DO NOT EDIT MANUALLY!
5
5
  ******************************************************************************/
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -17,19 +17,73 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
17
17
  "name": "Model",
18
18
  "entry": true,
19
19
  "definition": {
20
- "$type": "Assignment",
21
- "feature": "declarations",
22
- "operator": "+=",
23
- "terminal": {
24
- "$type": "RuleCall",
25
- "rule": {
26
- "$ref": "#/rules@1"
20
+ "$type": "Group",
21
+ "elements": [
22
+ {
23
+ "$type": "Assignment",
24
+ "feature": "imports",
25
+ "operator": "+=",
26
+ "terminal": {
27
+ "$type": "RuleCall",
28
+ "rule": {
29
+ "$ref": "#/rules@1"
30
+ },
31
+ "arguments": []
32
+ },
33
+ "cardinality": "*"
27
34
  },
28
- "arguments": []
29
- },
30
- "cardinality": "*"
35
+ {
36
+ "$type": "Assignment",
37
+ "feature": "declarations",
38
+ "operator": "+=",
39
+ "terminal": {
40
+ "$type": "RuleCall",
41
+ "rule": {
42
+ "$ref": "#/rules@2"
43
+ },
44
+ "arguments": []
45
+ },
46
+ "cardinality": "*"
47
+ }
48
+ ]
49
+ },
50
+ "definesHiddenTokens": false,
51
+ "fragment": false,
52
+ "hiddenTokens": [],
53
+ "parameters": [],
54
+ "wildcard": false
55
+ },
56
+ {
57
+ "$type": "ParserRule",
58
+ "name": "ModelImport",
59
+ "definition": {
60
+ "$type": "Group",
61
+ "elements": [
62
+ {
63
+ "$type": "Keyword",
64
+ "value": "import"
65
+ },
66
+ {
67
+ "$type": "Assignment",
68
+ "feature": "path",
69
+ "operator": "=",
70
+ "terminal": {
71
+ "$type": "RuleCall",
72
+ "rule": {
73
+ "$ref": "#/rules@60"
74
+ },
75
+ "arguments": []
76
+ }
77
+ },
78
+ {
79
+ "$type": "Keyword",
80
+ "value": ";",
81
+ "cardinality": "?"
82
+ }
83
+ ]
31
84
  },
32
85
  "definesHiddenTokens": false,
86
+ "entry": false,
33
87
  "fragment": false,
34
88
  "hiddenTokens": [],
35
89
  "parameters": [],
@@ -44,49 +98,49 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
44
98
  {
45
99
  "$type": "RuleCall",
46
100
  "rule": {
47
- "$ref": "#/rules@2"
101
+ "$ref": "#/rules@3"
48
102
  },
49
103
  "arguments": []
50
104
  },
51
105
  {
52
106
  "$type": "RuleCall",
53
107
  "rule": {
54
- "$ref": "#/rules@4"
108
+ "$ref": "#/rules@5"
55
109
  },
56
110
  "arguments": []
57
111
  },
58
112
  {
59
113
  "$type": "RuleCall",
60
114
  "rule": {
61
- "$ref": "#/rules@6"
115
+ "$ref": "#/rules@7"
62
116
  },
63
117
  "arguments": []
64
118
  },
65
119
  {
66
120
  "$type": "RuleCall",
67
121
  "rule": {
68
- "$ref": "#/rules@29"
122
+ "$ref": "#/rules@30"
69
123
  },
70
124
  "arguments": []
71
125
  },
72
126
  {
73
127
  "$type": "RuleCall",
74
128
  "rule": {
75
- "$ref": "#/rules@32"
129
+ "$ref": "#/rules@34"
76
130
  },
77
131
  "arguments": []
78
132
  },
79
133
  {
80
134
  "$type": "RuleCall",
81
135
  "rule": {
82
- "$ref": "#/rules@34"
136
+ "$ref": "#/rules@36"
83
137
  },
84
138
  "arguments": []
85
139
  },
86
140
  {
87
141
  "$type": "RuleCall",
88
142
  "rule": {
89
- "$ref": "#/rules@43"
143
+ "$ref": "#/rules@45"
90
144
  },
91
145
  "arguments": []
92
146
  }
@@ -108,7 +162,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
108
162
  {
109
163
  "$type": "RuleCall",
110
164
  "rule": {
111
- "$ref": "#/rules@60"
165
+ "$ref": "#/rules@62"
112
166
  },
113
167
  "arguments": [],
114
168
  "cardinality": "*"
@@ -124,7 +178,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
124
178
  "terminal": {
125
179
  "$type": "RuleCall",
126
180
  "rule": {
127
- "$ref": "#/rules@38"
181
+ "$ref": "#/rules@40"
128
182
  },
129
183
  "arguments": []
130
184
  }
@@ -140,7 +194,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
140
194
  "terminal": {
141
195
  "$type": "RuleCall",
142
196
  "rule": {
143
- "$ref": "#/rules@3"
197
+ "$ref": "#/rules@4"
144
198
  },
145
199
  "arguments": []
146
200
  },
@@ -168,7 +222,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
168
222
  {
169
223
  "$type": "RuleCall",
170
224
  "rule": {
171
- "$ref": "#/rules@60"
225
+ "$ref": "#/rules@62"
172
226
  },
173
227
  "arguments": [],
174
228
  "cardinality": "*"
@@ -180,7 +234,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
180
234
  "terminal": {
181
235
  "$type": "RuleCall",
182
236
  "rule": {
183
- "$ref": "#/rules@38"
237
+ "$ref": "#/rules@40"
184
238
  },
185
239
  "arguments": []
186
240
  }
@@ -199,21 +253,21 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
199
253
  {
200
254
  "$type": "RuleCall",
201
255
  "rule": {
202
- "$ref": "#/rules@9"
256
+ "$ref": "#/rules@10"
203
257
  },
204
258
  "arguments": []
205
259
  },
206
260
  {
207
261
  "$type": "RuleCall",
208
262
  "rule": {
209
- "$ref": "#/rules@18"
263
+ "$ref": "#/rules@19"
210
264
  },
211
265
  "arguments": []
212
266
  },
213
267
  {
214
268
  "$type": "RuleCall",
215
269
  "rule": {
216
- "$ref": "#/rules@10"
270
+ "$ref": "#/rules@11"
217
271
  },
218
272
  "arguments": []
219
273
  }
@@ -238,7 +292,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
238
292
  {
239
293
  "$type": "RuleCall",
240
294
  "rule": {
241
- "$ref": "#/rules@60"
295
+ "$ref": "#/rules@62"
242
296
  },
243
297
  "arguments": [],
244
298
  "cardinality": "*"
@@ -254,7 +308,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
254
308
  "terminal": {
255
309
  "$type": "RuleCall",
256
310
  "rule": {
257
- "$ref": "#/rules@38"
311
+ "$ref": "#/rules@40"
258
312
  },
259
313
  "arguments": []
260
314
  }
@@ -270,7 +324,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
270
324
  "terminal": {
271
325
  "$type": "RuleCall",
272
326
  "rule": {
273
- "$ref": "#/rules@5"
327
+ "$ref": "#/rules@6"
274
328
  },
275
329
  "arguments": []
276
330
  },
@@ -298,7 +352,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
298
352
  {
299
353
  "$type": "RuleCall",
300
354
  "rule": {
301
- "$ref": "#/rules@60"
355
+ "$ref": "#/rules@62"
302
356
  },
303
357
  "arguments": [],
304
358
  "cardinality": "*"
@@ -310,7 +364,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
310
364
  "terminal": {
311
365
  "$type": "RuleCall",
312
366
  "rule": {
313
- "$ref": "#/rules@38"
367
+ "$ref": "#/rules@40"
314
368
  },
315
369
  "arguments": []
316
370
  }
@@ -329,14 +383,14 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
329
383
  {
330
384
  "$type": "RuleCall",
331
385
  "rule": {
332
- "$ref": "#/rules@9"
386
+ "$ref": "#/rules@10"
333
387
  },
334
388
  "arguments": []
335
389
  },
336
390
  {
337
391
  "$type": "RuleCall",
338
392
  "rule": {
339
- "$ref": "#/rules@10"
393
+ "$ref": "#/rules@11"
340
394
  },
341
395
  "arguments": []
342
396
  }
@@ -361,7 +415,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
361
415
  {
362
416
  "$type": "RuleCall",
363
417
  "rule": {
364
- "$ref": "#/rules@60"
418
+ "$ref": "#/rules@62"
365
419
  },
366
420
  "arguments": [],
367
421
  "cardinality": "*"
@@ -377,7 +431,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
377
431
  "terminal": {
378
432
  "$type": "RuleCall",
379
433
  "rule": {
380
- "$ref": "#/rules@38"
434
+ "$ref": "#/rules@40"
381
435
  },
382
436
  "arguments": []
383
437
  }
@@ -393,7 +447,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
393
447
  "terminal": {
394
448
  "$type": "RuleCall",
395
449
  "rule": {
396
- "$ref": "#/rules@7"
450
+ "$ref": "#/rules@8"
397
451
  },
398
452
  "arguments": []
399
453
  },
@@ -421,7 +475,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
421
475
  {
422
476
  "$type": "RuleCall",
423
477
  "rule": {
424
- "$ref": "#/rules@60"
478
+ "$ref": "#/rules@62"
425
479
  },
426
480
  "arguments": [],
427
481
  "cardinality": "*"
@@ -433,7 +487,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
433
487
  "terminal": {
434
488
  "$type": "RuleCall",
435
489
  "rule": {
436
- "$ref": "#/rules@38"
490
+ "$ref": "#/rules@40"
437
491
  },
438
492
  "arguments": []
439
493
  }
@@ -452,21 +506,21 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
452
506
  {
453
507
  "$type": "RuleCall",
454
508
  "rule": {
455
- "$ref": "#/rules@9"
509
+ "$ref": "#/rules@10"
456
510
  },
457
511
  "arguments": []
458
512
  },
459
513
  {
460
514
  "$type": "RuleCall",
461
515
  "rule": {
462
- "$ref": "#/rules@10"
516
+ "$ref": "#/rules@11"
463
517
  },
464
518
  "arguments": []
465
519
  },
466
520
  {
467
521
  "$type": "RuleCall",
468
522
  "rule": {
469
- "$ref": "#/rules@16"
523
+ "$ref": "#/rules@17"
470
524
  },
471
525
  "arguments": []
472
526
  }
@@ -488,7 +542,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
488
542
  "definition": {
489
543
  "$type": "RuleCall",
490
544
  "rule": {
491
- "$ref": "#/rules@25"
545
+ "$ref": "#/rules@26"
492
546
  },
493
547
  "arguments": []
494
548
  },
@@ -512,21 +566,21 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
512
566
  {
513
567
  "$type": "RuleCall",
514
568
  "rule": {
515
- "$ref": "#/rules@54"
569
+ "$ref": "#/rules@56"
516
570
  },
517
571
  "arguments": []
518
572
  },
519
573
  {
520
574
  "$type": "RuleCall",
521
575
  "rule": {
522
- "$ref": "#/rules@59"
576
+ "$ref": "#/rules@61"
523
577
  },
524
578
  "arguments": []
525
579
  },
526
580
  {
527
581
  "$type": "RuleCall",
528
582
  "rule": {
529
- "$ref": "#/rules@58"
583
+ "$ref": "#/rules@60"
530
584
  },
531
585
  "arguments": []
532
586
  }
@@ -560,7 +614,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
560
614
  "terminal": {
561
615
  "$type": "RuleCall",
562
616
  "rule": {
563
- "$ref": "#/rules@8"
617
+ "$ref": "#/rules@9"
564
618
  },
565
619
  "arguments": []
566
620
  }
@@ -579,7 +633,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
579
633
  "terminal": {
580
634
  "$type": "RuleCall",
581
635
  "rule": {
582
- "$ref": "#/rules@8"
636
+ "$ref": "#/rules@9"
583
637
  },
584
638
  "arguments": []
585
639
  }
@@ -613,7 +667,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
613
667
  "terminal": {
614
668
  "$type": "RuleCall",
615
669
  "rule": {
616
- "$ref": "#/rules@56"
670
+ "$ref": "#/rules@58"
617
671
  },
618
672
  "arguments": []
619
673
  }
@@ -635,7 +689,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
635
689
  "terminal": {
636
690
  "$type": "RuleCall",
637
691
  "rule": {
638
- "$ref": "#/rules@55"
692
+ "$ref": "#/rules@57"
639
693
  },
640
694
  "arguments": []
641
695
  }
@@ -665,7 +719,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
665
719
  "terminal": {
666
720
  "$type": "RuleCall",
667
721
  "rule": {
668
- "$ref": "#/rules@38"
722
+ "$ref": "#/rules@40"
669
723
  },
670
724
  "arguments": []
671
725
  },
@@ -682,7 +736,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
682
736
  {
683
737
  "$type": "RuleCall",
684
738
  "rule": {
685
- "$ref": "#/rules@14"
739
+ "$ref": "#/rules@15"
686
740
  },
687
741
  "arguments": []
688
742
  },
@@ -716,7 +770,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
716
770
  "terminal": {
717
771
  "$type": "RuleCall",
718
772
  "rule": {
719
- "$ref": "#/rules@15"
773
+ "$ref": "#/rules@16"
720
774
  },
721
775
  "arguments": []
722
776
  }
@@ -735,7 +789,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
735
789
  "terminal": {
736
790
  "$type": "RuleCall",
737
791
  "rule": {
738
- "$ref": "#/rules@15"
792
+ "$ref": "#/rules@16"
739
793
  },
740
794
  "arguments": []
741
795
  }
@@ -817,7 +871,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
817
871
  "terminal": {
818
872
  "$type": "RuleCall",
819
873
  "rule": {
820
- "$ref": "#/rules@17"
874
+ "$ref": "#/rules@18"
821
875
  },
822
876
  "arguments": []
823
877
  }
@@ -836,7 +890,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
836
890
  "terminal": {
837
891
  "$type": "RuleCall",
838
892
  "rule": {
839
- "$ref": "#/rules@17"
893
+ "$ref": "#/rules@18"
840
894
  },
841
895
  "arguments": []
842
896
  }
@@ -878,7 +932,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
878
932
  "terminal": {
879
933
  "$type": "RuleCall",
880
934
  "rule": {
881
- "$ref": "#/rules@38"
935
+ "$ref": "#/rules@40"
882
936
  },
883
937
  "arguments": []
884
938
  }
@@ -894,7 +948,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
894
948
  "terminal": {
895
949
  "$type": "RuleCall",
896
950
  "rule": {
897
- "$ref": "#/rules@8"
951
+ "$ref": "#/rules@9"
898
952
  },
899
953
  "arguments": []
900
954
  }
@@ -921,7 +975,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
921
975
  "terminal": {
922
976
  "$type": "CrossReference",
923
977
  "type": {
924
- "$ref": "#/rules@34"
978
+ "$ref": "#/rules@36"
925
979
  },
926
980
  "deprecatedSyntax": false
927
981
  }
@@ -933,7 +987,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
933
987
  {
934
988
  "$type": "RuleCall",
935
989
  "rule": {
936
- "$ref": "#/rules@27"
990
+ "$ref": "#/rules@28"
937
991
  },
938
992
  "arguments": [],
939
993
  "cardinality": "?"
@@ -973,7 +1027,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
973
1027
  "terminal": {
974
1028
  "$type": "RuleCall",
975
1029
  "rule": {
976
- "$ref": "#/rules@8"
1030
+ "$ref": "#/rules@9"
977
1031
  },
978
1032
  "arguments": []
979
1033
  }
@@ -1000,7 +1054,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1000
1054
  {
1001
1055
  "$type": "RuleCall",
1002
1056
  "rule": {
1003
- "$ref": "#/rules@26"
1057
+ "$ref": "#/rules@27"
1004
1058
  },
1005
1059
  "arguments": []
1006
1060
  },
@@ -1030,7 +1084,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1030
1084
  "terminal": {
1031
1085
  "$type": "CrossReference",
1032
1086
  "type": {
1033
- "$ref": "#/rules@30"
1087
+ "$ref": "#/rules@31"
1034
1088
  },
1035
1089
  "deprecatedSyntax": false
1036
1090
  }
@@ -1062,7 +1116,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1062
1116
  {
1063
1117
  "$type": "RuleCall",
1064
1118
  "rule": {
1065
- "$ref": "#/rules@20"
1119
+ "$ref": "#/rules@21"
1066
1120
  },
1067
1121
  "arguments": []
1068
1122
  },
@@ -1111,7 +1165,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1111
1165
  "terminal": {
1112
1166
  "$type": "RuleCall",
1113
1167
  "rule": {
1114
- "$ref": "#/rules@8"
1168
+ "$ref": "#/rules@9"
1115
1169
  },
1116
1170
  "arguments": []
1117
1171
  }
@@ -1145,7 +1199,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1145
1199
  {
1146
1200
  "$type": "RuleCall",
1147
1201
  "rule": {
1148
- "$ref": "#/rules@21"
1202
+ "$ref": "#/rules@22"
1149
1203
  },
1150
1204
  "arguments": []
1151
1205
  },
@@ -1177,7 +1231,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1177
1231
  "terminal": {
1178
1232
  "$type": "RuleCall",
1179
1233
  "rule": {
1180
- "$ref": "#/rules@21"
1234
+ "$ref": "#/rules@22"
1181
1235
  },
1182
1236
  "arguments": []
1183
1237
  }
@@ -1207,7 +1261,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1207
1261
  {
1208
1262
  "$type": "RuleCall",
1209
1263
  "rule": {
1210
- "$ref": "#/rules@22"
1264
+ "$ref": "#/rules@23"
1211
1265
  },
1212
1266
  "arguments": []
1213
1267
  },
@@ -1256,7 +1310,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1256
1310
  "terminal": {
1257
1311
  "$type": "RuleCall",
1258
1312
  "rule": {
1259
- "$ref": "#/rules@22"
1313
+ "$ref": "#/rules@23"
1260
1314
  },
1261
1315
  "arguments": []
1262
1316
  }
@@ -1286,7 +1340,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1286
1340
  {
1287
1341
  "$type": "RuleCall",
1288
1342
  "rule": {
1289
- "$ref": "#/rules@23"
1343
+ "$ref": "#/rules@24"
1290
1344
  },
1291
1345
  "arguments": []
1292
1346
  },
@@ -1327,7 +1381,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1327
1381
  "terminal": {
1328
1382
  "$type": "RuleCall",
1329
1383
  "rule": {
1330
- "$ref": "#/rules@23"
1384
+ "$ref": "#/rules@24"
1331
1385
  },
1332
1386
  "arguments": []
1333
1387
  }
@@ -1357,7 +1411,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1357
1411
  {
1358
1412
  "$type": "RuleCall",
1359
1413
  "rule": {
1360
- "$ref": "#/rules@24"
1414
+ "$ref": "#/rules@25"
1361
1415
  },
1362
1416
  "arguments": []
1363
1417
  },
@@ -1398,7 +1452,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1398
1452
  "terminal": {
1399
1453
  "$type": "RuleCall",
1400
1454
  "rule": {
1401
- "$ref": "#/rules@24"
1455
+ "$ref": "#/rules@25"
1402
1456
  },
1403
1457
  "arguments": []
1404
1458
  }
@@ -1435,7 +1489,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1435
1489
  {
1436
1490
  "$type": "RuleCall",
1437
1491
  "rule": {
1438
- "$ref": "#/rules@8"
1492
+ "$ref": "#/rules@9"
1439
1493
  },
1440
1494
  "arguments": []
1441
1495
  },
@@ -1448,56 +1502,56 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1448
1502
  {
1449
1503
  "$type": "RuleCall",
1450
1504
  "rule": {
1451
- "$ref": "#/rules@11"
1505
+ "$ref": "#/rules@12"
1452
1506
  },
1453
1507
  "arguments": []
1454
1508
  },
1455
1509
  {
1456
1510
  "$type": "RuleCall",
1457
1511
  "rule": {
1458
- "$ref": "#/rules@12"
1512
+ "$ref": "#/rules@13"
1459
1513
  },
1460
1514
  "arguments": []
1461
1515
  },
1462
1516
  {
1463
1517
  "$type": "RuleCall",
1464
1518
  "rule": {
1465
- "$ref": "#/rules@9"
1519
+ "$ref": "#/rules@10"
1466
1520
  },
1467
1521
  "arguments": []
1468
1522
  },
1469
1523
  {
1470
1524
  "$type": "RuleCall",
1471
1525
  "rule": {
1472
- "$ref": "#/rules@18"
1526
+ "$ref": "#/rules@19"
1473
1527
  },
1474
1528
  "arguments": []
1475
1529
  },
1476
1530
  {
1477
1531
  "$type": "RuleCall",
1478
1532
  "rule": {
1479
- "$ref": "#/rules@10"
1533
+ "$ref": "#/rules@11"
1480
1534
  },
1481
1535
  "arguments": []
1482
1536
  },
1483
1537
  {
1484
1538
  "$type": "RuleCall",
1485
1539
  "rule": {
1486
- "$ref": "#/rules@13"
1540
+ "$ref": "#/rules@14"
1487
1541
  },
1488
1542
  "arguments": []
1489
1543
  },
1490
1544
  {
1491
1545
  "$type": "RuleCall",
1492
1546
  "rule": {
1493
- "$ref": "#/rules@19"
1547
+ "$ref": "#/rules@20"
1494
1548
  },
1495
1549
  "arguments": []
1496
1550
  },
1497
1551
  {
1498
1552
  "$type": "RuleCall",
1499
1553
  "rule": {
1500
- "$ref": "#/rules@16"
1554
+ "$ref": "#/rules@17"
1501
1555
  },
1502
1556
  "arguments": []
1503
1557
  }
@@ -1524,7 +1578,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1524
1578
  "terminal": {
1525
1579
  "$type": "RuleCall",
1526
1580
  "rule": {
1527
- "$ref": "#/rules@28"
1581
+ "$ref": "#/rules@29"
1528
1582
  },
1529
1583
  "arguments": []
1530
1584
  }
@@ -1543,7 +1597,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1543
1597
  "terminal": {
1544
1598
  "$type": "RuleCall",
1545
1599
  "rule": {
1546
- "$ref": "#/rules@28"
1600
+ "$ref": "#/rules@29"
1547
1601
  },
1548
1602
  "arguments": []
1549
1603
  }
@@ -1575,7 +1629,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1575
1629
  "terminal": {
1576
1630
  "$type": "RuleCall",
1577
1631
  "rule": {
1578
- "$ref": "#/rules@38"
1632
+ "$ref": "#/rules@40"
1579
1633
  },
1580
1634
  "arguments": []
1581
1635
  }
@@ -1594,7 +1648,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1594
1648
  "terminal": {
1595
1649
  "$type": "RuleCall",
1596
1650
  "rule": {
1597
- "$ref": "#/rules@8"
1651
+ "$ref": "#/rules@9"
1598
1652
  },
1599
1653
  "arguments": []
1600
1654
  }
@@ -1621,12 +1675,22 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1621
1675
  "terminal": {
1622
1676
  "$type": "RuleCall",
1623
1677
  "rule": {
1624
- "$ref": "#/rules@60"
1678
+ "$ref": "#/rules@62"
1625
1679
  },
1626
1680
  "arguments": []
1627
1681
  },
1628
1682
  "cardinality": "*"
1629
1683
  },
1684
+ {
1685
+ "$type": "Assignment",
1686
+ "feature": "isAbstract",
1687
+ "operator": "?=",
1688
+ "terminal": {
1689
+ "$type": "Keyword",
1690
+ "value": "abstract"
1691
+ },
1692
+ "cardinality": "?"
1693
+ },
1630
1694
  {
1631
1695
  "$type": "Keyword",
1632
1696
  "value": "model"
@@ -1638,11 +1702,55 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1638
1702
  "terminal": {
1639
1703
  "$type": "RuleCall",
1640
1704
  "rule": {
1641
- "$ref": "#/rules@38"
1705
+ "$ref": "#/rules@40"
1642
1706
  },
1643
1707
  "arguments": []
1644
1708
  }
1645
1709
  },
1710
+ {
1711
+ "$type": "Group",
1712
+ "elements": [
1713
+ {
1714
+ "$type": "Keyword",
1715
+ "value": "extends"
1716
+ },
1717
+ {
1718
+ "$type": "Assignment",
1719
+ "feature": "superTypes",
1720
+ "operator": "+=",
1721
+ "terminal": {
1722
+ "$type": "CrossReference",
1723
+ "type": {
1724
+ "$ref": "#/rules@30"
1725
+ },
1726
+ "deprecatedSyntax": false
1727
+ }
1728
+ },
1729
+ {
1730
+ "$type": "Group",
1731
+ "elements": [
1732
+ {
1733
+ "$type": "Keyword",
1734
+ "value": ","
1735
+ },
1736
+ {
1737
+ "$type": "Assignment",
1738
+ "feature": "superTypes",
1739
+ "operator": "+=",
1740
+ "terminal": {
1741
+ "$type": "CrossReference",
1742
+ "type": {
1743
+ "$ref": "#/rules@30"
1744
+ },
1745
+ "deprecatedSyntax": false
1746
+ }
1747
+ }
1748
+ ],
1749
+ "cardinality": "*"
1750
+ }
1751
+ ],
1752
+ "cardinality": "?"
1753
+ },
1646
1754
  {
1647
1755
  "$type": "Keyword",
1648
1756
  "value": "{"
@@ -1657,7 +1765,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1657
1765
  "terminal": {
1658
1766
  "$type": "RuleCall",
1659
1767
  "rule": {
1660
- "$ref": "#/rules@30"
1768
+ "$ref": "#/rules@31"
1661
1769
  },
1662
1770
  "arguments": []
1663
1771
  }
@@ -1669,7 +1777,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1669
1777
  "terminal": {
1670
1778
  "$type": "RuleCall",
1671
1779
  "rule": {
1672
- "$ref": "#/rules@47"
1780
+ "$ref": "#/rules@49"
1673
1781
  },
1674
1782
  "arguments": []
1675
1783
  }
@@ -1703,7 +1811,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1703
1811
  "terminal": {
1704
1812
  "$type": "RuleCall",
1705
1813
  "rule": {
1706
- "$ref": "#/rules@60"
1814
+ "$ref": "#/rules@62"
1707
1815
  },
1708
1816
  "arguments": []
1709
1817
  },
@@ -1716,7 +1824,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1716
1824
  "terminal": {
1717
1825
  "$type": "RuleCall",
1718
1826
  "rule": {
1719
- "$ref": "#/rules@38"
1827
+ "$ref": "#/rules@40"
1720
1828
  },
1721
1829
  "arguments": []
1722
1830
  }
@@ -1728,7 +1836,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1728
1836
  "terminal": {
1729
1837
  "$type": "RuleCall",
1730
1838
  "rule": {
1731
- "$ref": "#/rules@31"
1839
+ "$ref": "#/rules@32"
1732
1840
  },
1733
1841
  "arguments": []
1734
1842
  }
@@ -1740,7 +1848,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1740
1848
  "terminal": {
1741
1849
  "$type": "RuleCall",
1742
1850
  "rule": {
1743
- "$ref": "#/rules@46"
1851
+ "$ref": "#/rules@48"
1744
1852
  },
1745
1853
  "arguments": []
1746
1854
  },
@@ -1771,7 +1879,19 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1771
1879
  "terminal": {
1772
1880
  "$type": "RuleCall",
1773
1881
  "rule": {
1774
- "$ref": "#/rules@52"
1882
+ "$ref": "#/rules@54"
1883
+ },
1884
+ "arguments": []
1885
+ }
1886
+ },
1887
+ {
1888
+ "$type": "Assignment",
1889
+ "feature": "unsupported",
1890
+ "operator": "=",
1891
+ "terminal": {
1892
+ "$type": "RuleCall",
1893
+ "rule": {
1894
+ "$ref": "#/rules@33"
1775
1895
  },
1776
1896
  "arguments": []
1777
1897
  }
@@ -1788,7 +1908,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1788
1908
  "terminal": {
1789
1909
  "$type": "RuleCall",
1790
1910
  "rule": {
1791
- "$ref": "#/rules@38"
1911
+ "$ref": "#/rules@40"
1792
1912
  },
1793
1913
  "arguments": []
1794
1914
  },
@@ -1835,6 +1955,45 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1835
1955
  "parameters": [],
1836
1956
  "wildcard": false
1837
1957
  },
1958
+ {
1959
+ "$type": "ParserRule",
1960
+ "name": "UnsupportedFieldType",
1961
+ "definition": {
1962
+ "$type": "Group",
1963
+ "elements": [
1964
+ {
1965
+ "$type": "Keyword",
1966
+ "value": "Unsupported"
1967
+ },
1968
+ {
1969
+ "$type": "Keyword",
1970
+ "value": "("
1971
+ },
1972
+ {
1973
+ "$type": "Assignment",
1974
+ "feature": "value",
1975
+ "operator": "=",
1976
+ "terminal": {
1977
+ "$type": "RuleCall",
1978
+ "rule": {
1979
+ "$ref": "#/rules@10"
1980
+ },
1981
+ "arguments": []
1982
+ }
1983
+ },
1984
+ {
1985
+ "$type": "Keyword",
1986
+ "value": ")"
1987
+ }
1988
+ ]
1989
+ },
1990
+ "definesHiddenTokens": false,
1991
+ "entry": false,
1992
+ "fragment": false,
1993
+ "hiddenTokens": [],
1994
+ "parameters": [],
1995
+ "wildcard": false
1996
+ },
1838
1997
  {
1839
1998
  "$type": "ParserRule",
1840
1999
  "name": "Enum",
@@ -1848,7 +2007,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1848
2007
  "terminal": {
1849
2008
  "$type": "RuleCall",
1850
2009
  "rule": {
1851
- "$ref": "#/rules@60"
2010
+ "$ref": "#/rules@62"
1852
2011
  },
1853
2012
  "arguments": []
1854
2013
  },
@@ -1865,7 +2024,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1865
2024
  "terminal": {
1866
2025
  "$type": "RuleCall",
1867
2026
  "rule": {
1868
- "$ref": "#/rules@38"
2027
+ "$ref": "#/rules@40"
1869
2028
  },
1870
2029
  "arguments": []
1871
2030
  }
@@ -1884,7 +2043,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1884
2043
  "terminal": {
1885
2044
  "$type": "RuleCall",
1886
2045
  "rule": {
1887
- "$ref": "#/rules@33"
2046
+ "$ref": "#/rules@35"
1888
2047
  },
1889
2048
  "arguments": []
1890
2049
  }
@@ -1896,7 +2055,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1896
2055
  "terminal": {
1897
2056
  "$type": "RuleCall",
1898
2057
  "rule": {
1899
- "$ref": "#/rules@47"
2058
+ "$ref": "#/rules@49"
1900
2059
  },
1901
2060
  "arguments": []
1902
2061
  }
@@ -1930,7 +2089,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1930
2089
  "terminal": {
1931
2090
  "$type": "RuleCall",
1932
2091
  "rule": {
1933
- "$ref": "#/rules@60"
2092
+ "$ref": "#/rules@62"
1934
2093
  },
1935
2094
  "arguments": []
1936
2095
  },
@@ -1943,7 +2102,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1943
2102
  "terminal": {
1944
2103
  "$type": "RuleCall",
1945
2104
  "rule": {
1946
- "$ref": "#/rules@38"
2105
+ "$ref": "#/rules@40"
1947
2106
  },
1948
2107
  "arguments": []
1949
2108
  }
@@ -1955,7 +2114,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1955
2114
  "terminal": {
1956
2115
  "$type": "RuleCall",
1957
2116
  "rule": {
1958
- "$ref": "#/rules@46"
2117
+ "$ref": "#/rules@48"
1959
2118
  },
1960
2119
  "arguments": []
1961
2120
  },
@@ -1979,7 +2138,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1979
2138
  {
1980
2139
  "$type": "RuleCall",
1981
2140
  "rule": {
1982
- "$ref": "#/rules@60"
2141
+ "$ref": "#/rules@62"
1983
2142
  },
1984
2143
  "arguments": [],
1985
2144
  "cardinality": "*"
@@ -1995,7 +2154,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
1995
2154
  "terminal": {
1996
2155
  "$type": "RuleCall",
1997
2156
  "rule": {
1998
- "$ref": "#/rules@38"
2157
+ "$ref": "#/rules@40"
1999
2158
  },
2000
2159
  "arguments": []
2001
2160
  }
@@ -2014,7 +2173,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2014
2173
  "terminal": {
2015
2174
  "$type": "RuleCall",
2016
2175
  "rule": {
2017
- "$ref": "#/rules@35"
2176
+ "$ref": "#/rules@37"
2018
2177
  },
2019
2178
  "arguments": []
2020
2179
  }
@@ -2033,7 +2192,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2033
2192
  "terminal": {
2034
2193
  "$type": "RuleCall",
2035
2194
  "rule": {
2036
- "$ref": "#/rules@35"
2195
+ "$ref": "#/rules@37"
2037
2196
  },
2038
2197
  "arguments": []
2039
2198
  }
@@ -2059,7 +2218,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2059
2218
  "terminal": {
2060
2219
  "$type": "RuleCall",
2061
2220
  "rule": {
2062
- "$ref": "#/rules@36"
2221
+ "$ref": "#/rules@38"
2063
2222
  },
2064
2223
  "arguments": []
2065
2224
  }
@@ -2075,7 +2234,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2075
2234
  "terminal": {
2076
2235
  "$type": "RuleCall",
2077
2236
  "rule": {
2078
- "$ref": "#/rules@8"
2237
+ "$ref": "#/rules@9"
2079
2238
  },
2080
2239
  "arguments": []
2081
2240
  },
@@ -2103,7 +2262,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2103
2262
  {
2104
2263
  "$type": "RuleCall",
2105
2264
  "rule": {
2106
- "$ref": "#/rules@60"
2265
+ "$ref": "#/rules@62"
2107
2266
  },
2108
2267
  "arguments": [],
2109
2268
  "cardinality": "*"
@@ -2115,7 +2274,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2115
2274
  "terminal": {
2116
2275
  "$type": "RuleCall",
2117
2276
  "rule": {
2118
- "$ref": "#/rules@38"
2277
+ "$ref": "#/rules@40"
2119
2278
  },
2120
2279
  "arguments": []
2121
2280
  }
@@ -2131,7 +2290,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2131
2290
  "terminal": {
2132
2291
  "$type": "RuleCall",
2133
2292
  "rule": {
2134
- "$ref": "#/rules@36"
2293
+ "$ref": "#/rules@38"
2135
2294
  },
2136
2295
  "arguments": []
2137
2296
  }
@@ -2171,7 +2330,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2171
2330
  "terminal": {
2172
2331
  "$type": "RuleCall",
2173
2332
  "rule": {
2174
- "$ref": "#/rules@51"
2333
+ "$ref": "#/rules@53"
2175
2334
  },
2176
2335
  "arguments": []
2177
2336
  }
@@ -2188,7 +2347,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2188
2347
  "terminal": {
2189
2348
  "$type": "RuleCall",
2190
2349
  "rule": {
2191
- "$ref": "#/rules@38"
2350
+ "$ref": "#/rules@40"
2192
2351
  },
2193
2352
  "arguments": []
2194
2353
  },
@@ -2235,7 +2394,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2235
2394
  {
2236
2395
  "$type": "RuleCall",
2237
2396
  "rule": {
2238
- "$ref": "#/rules@57"
2397
+ "$ref": "#/rules@59"
2239
2398
  },
2240
2399
  "arguments": []
2241
2400
  },
@@ -2252,14 +2411,14 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2252
2411
  {
2253
2412
  "$type": "RuleCall",
2254
2413
  "rule": {
2255
- "$ref": "#/rules@57"
2414
+ "$ref": "#/rules@59"
2256
2415
  },
2257
2416
  "arguments": []
2258
2417
  },
2259
2418
  {
2260
2419
  "$type": "RuleCall",
2261
2420
  "rule": {
2262
- "$ref": "#/rules@52"
2421
+ "$ref": "#/rules@54"
2263
2422
  },
2264
2423
  "arguments": []
2265
2424
  }
@@ -2287,13 +2446,41 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2287
2446
  {
2288
2447
  "$type": "RuleCall",
2289
2448
  "rule": {
2290
- "$ref": "#/rules@57"
2449
+ "$ref": "#/rules@59"
2291
2450
  },
2292
2451
  "arguments": []
2293
2452
  },
2453
+ {
2454
+ "$type": "Keyword",
2455
+ "value": "model"
2456
+ },
2457
+ {
2458
+ "$type": "Keyword",
2459
+ "value": "enum"
2460
+ },
2461
+ {
2462
+ "$type": "Keyword",
2463
+ "value": "attribute"
2464
+ },
2465
+ {
2466
+ "$type": "Keyword",
2467
+ "value": "datasource"
2468
+ },
2469
+ {
2470
+ "$type": "Keyword",
2471
+ "value": "plugin"
2472
+ },
2473
+ {
2474
+ "$type": "Keyword",
2475
+ "value": "abstract"
2476
+ },
2294
2477
  {
2295
2478
  "$type": "Keyword",
2296
2479
  "value": "in"
2480
+ },
2481
+ {
2482
+ "$type": "Keyword",
2483
+ "value": "sort"
2297
2484
  }
2298
2485
  ]
2299
2486
  },
@@ -2318,7 +2505,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2318
2505
  {
2319
2506
  "$type": "RuleCall",
2320
2507
  "rule": {
2321
- "$ref": "#/rules@37"
2508
+ "$ref": "#/rules@39"
2322
2509
  },
2323
2510
  "arguments": []
2324
2511
  }
@@ -2345,7 +2532,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2345
2532
  {
2346
2533
  "$type": "RuleCall",
2347
2534
  "rule": {
2348
- "$ref": "#/rules@37"
2535
+ "$ref": "#/rules@39"
2349
2536
  },
2350
2537
  "arguments": []
2351
2538
  }
@@ -2372,7 +2559,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2372
2559
  {
2373
2560
  "$type": "RuleCall",
2374
2561
  "rule": {
2375
- "$ref": "#/rules@37"
2562
+ "$ref": "#/rules@39"
2376
2563
  },
2377
2564
  "arguments": []
2378
2565
  }
@@ -2395,21 +2582,21 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2395
2582
  {
2396
2583
  "$type": "RuleCall",
2397
2584
  "rule": {
2398
- "$ref": "#/rules@40"
2585
+ "$ref": "#/rules@42"
2399
2586
  },
2400
2587
  "arguments": []
2401
2588
  },
2402
2589
  {
2403
2590
  "$type": "RuleCall",
2404
2591
  "rule": {
2405
- "$ref": "#/rules@41"
2592
+ "$ref": "#/rules@43"
2406
2593
  },
2407
2594
  "arguments": []
2408
2595
  },
2409
2596
  {
2410
2597
  "$type": "RuleCall",
2411
2598
  "rule": {
2412
- "$ref": "#/rules@39"
2599
+ "$ref": "#/rules@41"
2413
2600
  },
2414
2601
  "arguments": []
2415
2602
  }
@@ -2431,7 +2618,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2431
2618
  {
2432
2619
  "$type": "RuleCall",
2433
2620
  "rule": {
2434
- "$ref": "#/rules@60"
2621
+ "$ref": "#/rules@62"
2435
2622
  },
2436
2623
  "arguments": [],
2437
2624
  "cardinality": "*"
@@ -2447,7 +2634,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2447
2634
  "terminal": {
2448
2635
  "$type": "RuleCall",
2449
2636
  "rule": {
2450
- "$ref": "#/rules@42"
2637
+ "$ref": "#/rules@44"
2451
2638
  },
2452
2639
  "arguments": []
2453
2640
  }
@@ -2466,7 +2653,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2466
2653
  "terminal": {
2467
2654
  "$type": "RuleCall",
2468
2655
  "rule": {
2469
- "$ref": "#/rules@44"
2656
+ "$ref": "#/rules@46"
2470
2657
  },
2471
2658
  "arguments": []
2472
2659
  }
@@ -2485,7 +2672,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2485
2672
  "terminal": {
2486
2673
  "$type": "RuleCall",
2487
2674
  "rule": {
2488
- "$ref": "#/rules@44"
2675
+ "$ref": "#/rules@46"
2489
2676
  },
2490
2677
  "arguments": []
2491
2678
  }
@@ -2507,7 +2694,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2507
2694
  "terminal": {
2508
2695
  "$type": "RuleCall",
2509
2696
  "rule": {
2510
- "$ref": "#/rules@48"
2697
+ "$ref": "#/rules@50"
2511
2698
  },
2512
2699
  "arguments": []
2513
2700
  },
@@ -2531,7 +2718,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2531
2718
  {
2532
2719
  "$type": "RuleCall",
2533
2720
  "rule": {
2534
- "$ref": "#/rules@60"
2721
+ "$ref": "#/rules@62"
2535
2722
  },
2536
2723
  "arguments": [],
2537
2724
  "cardinality": "*"
@@ -2553,7 +2740,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2553
2740
  "terminal": {
2554
2741
  "$type": "RuleCall",
2555
2742
  "rule": {
2556
- "$ref": "#/rules@38"
2743
+ "$ref": "#/rules@40"
2557
2744
  },
2558
2745
  "arguments": []
2559
2746
  }
@@ -2569,7 +2756,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2569
2756
  "terminal": {
2570
2757
  "$type": "RuleCall",
2571
2758
  "rule": {
2572
- "$ref": "#/rules@45"
2759
+ "$ref": "#/rules@47"
2573
2760
  },
2574
2761
  "arguments": []
2575
2762
  }
@@ -2602,7 +2789,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2602
2789
  {
2603
2790
  "$type": "RuleCall",
2604
2791
  "rule": {
2605
- "$ref": "#/rules@51"
2792
+ "$ref": "#/rules@53"
2606
2793
  },
2607
2794
  "arguments": []
2608
2795
  },
@@ -2633,7 +2820,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2633
2820
  "terminal": {
2634
2821
  "$type": "RuleCall",
2635
2822
  "rule": {
2636
- "$ref": "#/rules@38"
2823
+ "$ref": "#/rules@40"
2637
2824
  },
2638
2825
  "arguments": []
2639
2826
  },
@@ -2693,12 +2880,12 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2693
2880
  "terminal": {
2694
2881
  "$type": "CrossReference",
2695
2882
  "type": {
2696
- "$ref": "#/rules@43"
2883
+ "$ref": "#/rules@45"
2697
2884
  },
2698
2885
  "terminal": {
2699
2886
  "$type": "RuleCall",
2700
2887
  "rule": {
2701
- "$ref": "#/rules@41"
2888
+ "$ref": "#/rules@43"
2702
2889
  },
2703
2890
  "arguments": []
2704
2891
  },
@@ -2715,7 +2902,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2715
2902
  {
2716
2903
  "$type": "RuleCall",
2717
2904
  "rule": {
2718
- "$ref": "#/rules@49"
2905
+ "$ref": "#/rules@51"
2719
2906
  },
2720
2907
  "arguments": [],
2721
2908
  "cardinality": "?"
@@ -2745,7 +2932,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2745
2932
  {
2746
2933
  "$type": "RuleCall",
2747
2934
  "rule": {
2748
- "$ref": "#/rules@60"
2935
+ "$ref": "#/rules@62"
2749
2936
  },
2750
2937
  "arguments": [],
2751
2938
  "cardinality": "*"
@@ -2757,12 +2944,12 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2757
2944
  "terminal": {
2758
2945
  "$type": "CrossReference",
2759
2946
  "type": {
2760
- "$ref": "#/rules@43"
2947
+ "$ref": "#/rules@45"
2761
2948
  },
2762
2949
  "terminal": {
2763
2950
  "$type": "RuleCall",
2764
2951
  "rule": {
2765
- "$ref": "#/rules@40"
2952
+ "$ref": "#/rules@42"
2766
2953
  },
2767
2954
  "arguments": []
2768
2955
  },
@@ -2779,7 +2966,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2779
2966
  {
2780
2967
  "$type": "RuleCall",
2781
2968
  "rule": {
2782
- "$ref": "#/rules@49"
2969
+ "$ref": "#/rules@51"
2783
2970
  },
2784
2971
  "arguments": [],
2785
2972
  "cardinality": "?"
@@ -2813,12 +3000,12 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2813
3000
  "terminal": {
2814
3001
  "$type": "CrossReference",
2815
3002
  "type": {
2816
- "$ref": "#/rules@43"
3003
+ "$ref": "#/rules@45"
2817
3004
  },
2818
3005
  "terminal": {
2819
3006
  "$type": "RuleCall",
2820
3007
  "rule": {
2821
- "$ref": "#/rules@39"
3008
+ "$ref": "#/rules@41"
2822
3009
  },
2823
3010
  "arguments": []
2824
3011
  },
@@ -2835,7 +3022,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2835
3022
  {
2836
3023
  "$type": "RuleCall",
2837
3024
  "rule": {
2838
- "$ref": "#/rules@49"
3025
+ "$ref": "#/rules@51"
2839
3026
  },
2840
3027
  "arguments": [],
2841
3028
  "cardinality": "?"
@@ -2870,7 +3057,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2870
3057
  "terminal": {
2871
3058
  "$type": "RuleCall",
2872
3059
  "rule": {
2873
- "$ref": "#/rules@50"
3060
+ "$ref": "#/rules@52"
2874
3061
  },
2875
3062
  "arguments": []
2876
3063
  }
@@ -2889,7 +3076,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2889
3076
  "terminal": {
2890
3077
  "$type": "RuleCall",
2891
3078
  "rule": {
2892
- "$ref": "#/rules@50"
3079
+ "$ref": "#/rules@52"
2893
3080
  },
2894
3081
  "arguments": []
2895
3082
  }
@@ -2921,7 +3108,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2921
3108
  "terminal": {
2922
3109
  "$type": "RuleCall",
2923
3110
  "rule": {
2924
- "$ref": "#/rules@38"
3111
+ "$ref": "#/rules@40"
2925
3112
  },
2926
3113
  "arguments": []
2927
3114
  }
@@ -2940,7 +3127,7 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2940
3127
  "terminal": {
2941
3128
  "$type": "RuleCall",
2942
3129
  "rule": {
2943
- "$ref": "#/rules@8"
3130
+ "$ref": "#/rules@9"
2944
3131
  },
2945
3132
  "arguments": []
2946
3133
  }
@@ -2992,6 +3179,10 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
2992
3179
  {
2993
3180
  "$type": "Keyword",
2994
3181
  "value": "Any"
3182
+ },
3183
+ {
3184
+ "$type": "Keyword",
3185
+ "value": "Unsupported"
2995
3186
  }
2996
3187
  ]
2997
3188
  },
@@ -3179,19 +3370,19 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3179
3370
  {
3180
3371
  "$type": "SimpleType",
3181
3372
  "typeRef": {
3182
- "$ref": "#/rules@35"
3373
+ "$ref": "#/rules@37"
3183
3374
  }
3184
3375
  },
3185
3376
  {
3186
3377
  "$type": "SimpleType",
3187
3378
  "typeRef": {
3188
- "$ref": "#/rules@30"
3379
+ "$ref": "#/rules@31"
3189
3380
  }
3190
3381
  },
3191
3382
  {
3192
3383
  "$type": "SimpleType",
3193
3384
  "typeRef": {
3194
- "$ref": "#/rules@33"
3385
+ "$ref": "#/rules@35"
3195
3386
  }
3196
3387
  }
3197
3388
  ]
@@ -3206,13 +3397,13 @@ const ZModelGrammar = () => loadedZModelGrammar !== null && loadedZModelGrammar
3206
3397
  {
3207
3398
  "$type": "SimpleType",
3208
3399
  "typeRef": {
3209
- "$ref": "#/rules@29"
3400
+ "$ref": "#/rules@30"
3210
3401
  }
3211
3402
  },
3212
3403
  {
3213
3404
  "$type": "SimpleType",
3214
3405
  "typeRef": {
3215
- "$ref": "#/rules@32"
3406
+ "$ref": "#/rules@34"
3216
3407
  }
3217
3408
  }
3218
3409
  ]