aurora-langium 0.0.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.
Files changed (47) hide show
  1. package/bin/cli.js +4 -0
  2. package/out/cli/cli-util.d.ts +9 -0
  3. package/out/cli/cli-util.js +39 -0
  4. package/out/cli/cli-util.js.map +1 -0
  5. package/out/cli/generator.d.ts +2 -0
  6. package/out/cli/generator.js +19 -0
  7. package/out/cli/generator.js.map +1 -0
  8. package/out/cli/main.d.ts +5 -0
  9. package/out/cli/main.js +32 -0
  10. package/out/cli/main.js.map +1 -0
  11. package/out/extension/main.cjs +18109 -0
  12. package/out/extension/main.cjs.map +7 -0
  13. package/out/extension/main.d.ts +3 -0
  14. package/out/extension/main.js +37 -0
  15. package/out/extension/main.js.map +1 -0
  16. package/out/language/aurora-module.d.ts +41 -0
  17. package/out/language/aurora-module.js +42 -0
  18. package/out/language/aurora-module.js.map +1 -0
  19. package/out/language/aurora-validator.d.ts +13 -0
  20. package/out/language/aurora-validator.js +25 -0
  21. package/out/language/aurora-validator.js.map +1 -0
  22. package/out/language/generated/ast.d.ts +249 -0
  23. package/out/language/generated/ast.js +375 -0
  24. package/out/language/generated/ast.js.map +1 -0
  25. package/out/language/generated/grammar.d.ts +6 -0
  26. package/out/language/generated/grammar.js +2436 -0
  27. package/out/language/generated/grammar.js.map +1 -0
  28. package/out/language/generated/module.d.ts +12 -0
  29. package/out/language/generated/module.js +20 -0
  30. package/out/language/generated/module.js.map +1 -0
  31. package/out/language/main.cjs +33292 -0
  32. package/out/language/main.cjs.map +7 -0
  33. package/out/language/main.d.ts +1 -0
  34. package/out/language/main.js +11 -0
  35. package/out/language/main.js.map +1 -0
  36. package/package.json +81 -0
  37. package/src/cli/cli-util.ts +51 -0
  38. package/src/cli/generator.ts +22 -0
  39. package/src/cli/main.ts +42 -0
  40. package/src/extension/main.ts +51 -0
  41. package/src/language/aurora-module.ts +68 -0
  42. package/src/language/aurora-validator.ts +31 -0
  43. package/src/language/aurora.langium +130 -0
  44. package/src/language/generated/ast.ts +668 -0
  45. package/src/language/generated/grammar.ts +2438 -0
  46. package/src/language/generated/module.ts +24 -0
  47. package/src/language/main.ts +13 -0
@@ -0,0 +1,2438 @@
1
+ /******************************************************************************
2
+ * This file was generated by langium-cli 3.2.0.
3
+ * DO NOT EDIT MANUALLY!
4
+ ******************************************************************************/
5
+
6
+ import type { Grammar } from 'langium';
7
+ import { loadGrammarFromJson } from 'langium';
8
+
9
+ let loadedAuroraGrammar: Grammar | undefined;
10
+ export const AuroraGrammar = (): Grammar => loadedAuroraGrammar ?? (loadedAuroraGrammar = loadGrammarFromJson(`{
11
+ "$type": "Grammar",
12
+ "isDeclared": true,
13
+ "name": "Aurora",
14
+ "rules": [
15
+ {
16
+ "$type": "ParserRule",
17
+ "name": "PCM",
18
+ "entry": true,
19
+ "definition": {
20
+ "$type": "Group",
21
+ "elements": [
22
+ {
23
+ "$type": "Assignment",
24
+ "feature": "package",
25
+ "operator": "=",
26
+ "terminal": {
27
+ "$type": "RuleCall",
28
+ "rule": {
29
+ "$ref": "#/rules@1"
30
+ },
31
+ "arguments": []
32
+ },
33
+ "cardinality": "?"
34
+ },
35
+ {
36
+ "$type": "Assignment",
37
+ "feature": "imports",
38
+ "operator": "+=",
39
+ "terminal": {
40
+ "$type": "RuleCall",
41
+ "rule": {
42
+ "$ref": "#/rules@2"
43
+ },
44
+ "arguments": []
45
+ },
46
+ "cardinality": "*"
47
+ },
48
+ {
49
+ "$type": "Assignment",
50
+ "feature": "module",
51
+ "operator": "=",
52
+ "terminal": {
53
+ "$type": "RuleCall",
54
+ "rule": {
55
+ "$ref": "#/rules@23"
56
+ },
57
+ "arguments": []
58
+ },
59
+ "cardinality": "?"
60
+ },
61
+ {
62
+ "$type": "Assignment",
63
+ "feature": "template",
64
+ "operator": "=",
65
+ "terminal": {
66
+ "$type": "RuleCall",
67
+ "rule": {
68
+ "$ref": "#/rules@22"
69
+ },
70
+ "arguments": []
71
+ },
72
+ "cardinality": "?"
73
+ },
74
+ {
75
+ "$type": "Assignment",
76
+ "feature": "elements",
77
+ "operator": "+=",
78
+ "terminal": {
79
+ "$type": "Alternatives",
80
+ "elements": [
81
+ {
82
+ "$type": "RuleCall",
83
+ "rule": {
84
+ "$ref": "#/rules@15"
85
+ },
86
+ "arguments": []
87
+ },
88
+ {
89
+ "$type": "RuleCall",
90
+ "rule": {
91
+ "$ref": "#/rules@18"
92
+ },
93
+ "arguments": []
94
+ },
95
+ {
96
+ "$type": "RuleCall",
97
+ "rule": {
98
+ "$ref": "#/rules@6"
99
+ },
100
+ "arguments": []
101
+ }
102
+ ]
103
+ },
104
+ "cardinality": "*"
105
+ }
106
+ ]
107
+ },
108
+ "definesHiddenTokens": false,
109
+ "fragment": false,
110
+ "hiddenTokens": [],
111
+ "parameters": [],
112
+ "wildcard": false
113
+ },
114
+ {
115
+ "$type": "ParserRule",
116
+ "name": "PACKAGE",
117
+ "definition": {
118
+ "$type": "Group",
119
+ "elements": [
120
+ {
121
+ "$type": "Keyword",
122
+ "value": "package"
123
+ },
124
+ {
125
+ "$type": "Assignment",
126
+ "feature": "name",
127
+ "operator": "=",
128
+ "terminal": {
129
+ "$type": "RuleCall",
130
+ "rule": {
131
+ "$ref": "#/rules@4"
132
+ },
133
+ "arguments": []
134
+ }
135
+ },
136
+ {
137
+ "$type": "Keyword",
138
+ "value": ";"
139
+ }
140
+ ]
141
+ },
142
+ "definesHiddenTokens": false,
143
+ "entry": false,
144
+ "fragment": false,
145
+ "hiddenTokens": [],
146
+ "parameters": [],
147
+ "wildcard": false,
148
+ "$comment": "/* Package and Import */"
149
+ },
150
+ {
151
+ "$type": "ParserRule",
152
+ "name": "Import",
153
+ "definition": {
154
+ "$type": "Group",
155
+ "elements": [
156
+ {
157
+ "$type": "Keyword",
158
+ "value": "import"
159
+ },
160
+ {
161
+ "$type": "Assignment",
162
+ "feature": "importedNamespace",
163
+ "operator": "=",
164
+ "terminal": {
165
+ "$type": "RuleCall",
166
+ "rule": {
167
+ "$ref": "#/rules@3"
168
+ },
169
+ "arguments": []
170
+ }
171
+ },
172
+ {
173
+ "$type": "Keyword",
174
+ "value": ";"
175
+ }
176
+ ]
177
+ },
178
+ "definesHiddenTokens": false,
179
+ "entry": false,
180
+ "fragment": false,
181
+ "hiddenTokens": [],
182
+ "parameters": [],
183
+ "wildcard": false
184
+ },
185
+ {
186
+ "$type": "ParserRule",
187
+ "name": "QualifiedNameWithWildcard",
188
+ "dataType": "string",
189
+ "definition": {
190
+ "$type": "Group",
191
+ "elements": [
192
+ {
193
+ "$type": "RuleCall",
194
+ "rule": {
195
+ "$ref": "#/rules@4"
196
+ },
197
+ "arguments": []
198
+ },
199
+ {
200
+ "$type": "Keyword",
201
+ "value": ".*",
202
+ "cardinality": "?"
203
+ }
204
+ ]
205
+ },
206
+ "definesHiddenTokens": false,
207
+ "entry": false,
208
+ "fragment": false,
209
+ "hiddenTokens": [],
210
+ "parameters": [],
211
+ "wildcard": false
212
+ },
213
+ {
214
+ "$type": "ParserRule",
215
+ "name": "QualifiedName",
216
+ "dataType": "string",
217
+ "definition": {
218
+ "$type": "Group",
219
+ "elements": [
220
+ {
221
+ "$type": "RuleCall",
222
+ "rule": {
223
+ "$ref": "#/rules@32"
224
+ },
225
+ "arguments": []
226
+ },
227
+ {
228
+ "$type": "Group",
229
+ "elements": [
230
+ {
231
+ "$type": "Keyword",
232
+ "value": "."
233
+ },
234
+ {
235
+ "$type": "RuleCall",
236
+ "rule": {
237
+ "$ref": "#/rules@32"
238
+ },
239
+ "arguments": []
240
+ }
241
+ ],
242
+ "cardinality": "*"
243
+ }
244
+ ]
245
+ },
246
+ "definesHiddenTokens": false,
247
+ "entry": false,
248
+ "fragment": false,
249
+ "hiddenTokens": [],
250
+ "parameters": [],
251
+ "wildcard": false
252
+ },
253
+ {
254
+ "$type": "ParserRule",
255
+ "name": "NL_STATEMENT",
256
+ "definition": {
257
+ "$type": "Assignment",
258
+ "feature": "name",
259
+ "operator": "=",
260
+ "terminal": {
261
+ "$type": "Alternatives",
262
+ "elements": [
263
+ {
264
+ "$type": "RuleCall",
265
+ "rule": {
266
+ "$ref": "#/rules@30"
267
+ },
268
+ "arguments": []
269
+ },
270
+ {
271
+ "$type": "RuleCall",
272
+ "rule": {
273
+ "$ref": "#/rules@33"
274
+ },
275
+ "arguments": []
276
+ }
277
+ ]
278
+ }
279
+ },
280
+ "definesHiddenTokens": false,
281
+ "entry": false,
282
+ "fragment": false,
283
+ "hiddenTokens": [],
284
+ "parameters": [],
285
+ "wildcard": false
286
+ },
287
+ {
288
+ "$type": "ParserRule",
289
+ "name": "Clinical",
290
+ "definition": {
291
+ "$type": "Group",
292
+ "elements": [
293
+ {
294
+ "$type": "Keyword",
295
+ "value": "Clinical:"
296
+ },
297
+ {
298
+ "$type": "Assignment",
299
+ "feature": "narrative",
300
+ "operator": "+=",
301
+ "terminal": {
302
+ "$type": "RuleCall",
303
+ "rule": {
304
+ "$ref": "#/rules@5"
305
+ },
306
+ "arguments": []
307
+ },
308
+ "cardinality": "*"
309
+ },
310
+ {
311
+ "$type": "Assignment",
312
+ "feature": "namedGroups",
313
+ "operator": "+=",
314
+ "terminal": {
315
+ "$type": "RuleCall",
316
+ "rule": {
317
+ "$ref": "#/rules@7"
318
+ },
319
+ "arguments": []
320
+ },
321
+ "cardinality": "*"
322
+ }
323
+ ]
324
+ },
325
+ "definesHiddenTokens": false,
326
+ "entry": false,
327
+ "fragment": false,
328
+ "hiddenTokens": [],
329
+ "parameters": [],
330
+ "wildcard": false
331
+ },
332
+ {
333
+ "$type": "ParserRule",
334
+ "name": "NamedGroupClinical",
335
+ "definition": {
336
+ "$type": "Group",
337
+ "elements": [
338
+ {
339
+ "$type": "Assignment",
340
+ "feature": "name",
341
+ "operator": "=",
342
+ "terminal": {
343
+ "$type": "RuleCall",
344
+ "rule": {
345
+ "$ref": "#/rules@31"
346
+ },
347
+ "arguments": []
348
+ }
349
+ },
350
+ {
351
+ "$type": "Assignment",
352
+ "feature": "timestamp",
353
+ "operator": "=",
354
+ "terminal": {
355
+ "$type": "RuleCall",
356
+ "rule": {
357
+ "$ref": "#/rules@14"
358
+ },
359
+ "arguments": []
360
+ },
361
+ "cardinality": "?"
362
+ },
363
+ {
364
+ "$type": "Group",
365
+ "elements": [
366
+ {
367
+ "$type": "Keyword",
368
+ "value": "("
369
+ },
370
+ {
371
+ "$type": "Assignment",
372
+ "feature": "refs",
373
+ "operator": "+=",
374
+ "terminal": {
375
+ "$type": "CrossReference",
376
+ "type": {
377
+ "$ref": "#/rules@17"
378
+ },
379
+ "terminal": {
380
+ "$type": "RuleCall",
381
+ "rule": {
382
+ "$ref": "#/rules@32"
383
+ },
384
+ "arguments": []
385
+ },
386
+ "deprecatedSyntax": false
387
+ }
388
+ },
389
+ {
390
+ "$type": "Group",
391
+ "elements": [
392
+ {
393
+ "$type": "Keyword",
394
+ "value": ","
395
+ },
396
+ {
397
+ "$type": "Assignment",
398
+ "feature": "refs",
399
+ "operator": "+=",
400
+ "terminal": {
401
+ "$type": "CrossReference",
402
+ "type": {
403
+ "$ref": "#/rules@17"
404
+ },
405
+ "terminal": {
406
+ "$type": "RuleCall",
407
+ "rule": {
408
+ "$ref": "#/rules@32"
409
+ },
410
+ "arguments": []
411
+ },
412
+ "deprecatedSyntax": false
413
+ }
414
+ }
415
+ ],
416
+ "cardinality": "*"
417
+ },
418
+ {
419
+ "$type": "Keyword",
420
+ "value": ")"
421
+ }
422
+ ],
423
+ "cardinality": "?"
424
+ },
425
+ {
426
+ "$type": "Assignment",
427
+ "feature": "narrative",
428
+ "operator": "+=",
429
+ "terminal": {
430
+ "$type": "RuleCall",
431
+ "rule": {
432
+ "$ref": "#/rules@5"
433
+ },
434
+ "arguments": []
435
+ },
436
+ "cardinality": "*"
437
+ },
438
+ {
439
+ "$type": "Assignment",
440
+ "feature": "coord",
441
+ "operator": "+=",
442
+ "terminal": {
443
+ "$type": "Alternatives",
444
+ "elements": [
445
+ {
446
+ "$type": "RuleCall",
447
+ "rule": {
448
+ "$ref": "#/rules@8"
449
+ },
450
+ "arguments": []
451
+ },
452
+ {
453
+ "$type": "RuleCall",
454
+ "rule": {
455
+ "$ref": "#/rules@9"
456
+ },
457
+ "arguments": []
458
+ }
459
+ ]
460
+ },
461
+ "cardinality": "*"
462
+ }
463
+ ]
464
+ },
465
+ "definesHiddenTokens": false,
466
+ "entry": false,
467
+ "fragment": false,
468
+ "hiddenTokens": [],
469
+ "parameters": [],
470
+ "wildcard": false
471
+ },
472
+ {
473
+ "$type": "ParserRule",
474
+ "name": "ClinicalCoordinate",
475
+ "definition": {
476
+ "$type": "Group",
477
+ "elements": [
478
+ {
479
+ "$type": "Assignment",
480
+ "feature": "qu",
481
+ "operator": "+=",
482
+ "terminal": {
483
+ "$type": "RuleCall",
484
+ "rule": {
485
+ "$ref": "#/rules@26"
486
+ },
487
+ "arguments": []
488
+ },
489
+ "cardinality": "*"
490
+ },
491
+ {
492
+ "$type": "Assignment",
493
+ "feature": "timestamp",
494
+ "operator": "=",
495
+ "terminal": {
496
+ "$type": "RuleCall",
497
+ "rule": {
498
+ "$ref": "#/rules@14"
499
+ },
500
+ "arguments": []
501
+ },
502
+ "cardinality": "?"
503
+ },
504
+ {
505
+ "$type": "Assignment",
506
+ "feature": "name",
507
+ "operator": "=",
508
+ "terminal": {
509
+ "$type": "RuleCall",
510
+ "rule": {
511
+ "$ref": "#/rules@32"
512
+ },
513
+ "arguments": []
514
+ }
515
+ },
516
+ {
517
+ "$type": "Group",
518
+ "elements": [
519
+ {
520
+ "$type": "Keyword",
521
+ "value": "("
522
+ },
523
+ {
524
+ "$type": "Assignment",
525
+ "feature": "refs",
526
+ "operator": "+=",
527
+ "terminal": {
528
+ "$type": "CrossReference",
529
+ "type": {
530
+ "$ref": "#/rules@17"
531
+ },
532
+ "terminal": {
533
+ "$type": "RuleCall",
534
+ "rule": {
535
+ "$ref": "#/rules@32"
536
+ },
537
+ "arguments": []
538
+ },
539
+ "deprecatedSyntax": false
540
+ }
541
+ },
542
+ {
543
+ "$type": "Group",
544
+ "elements": [
545
+ {
546
+ "$type": "Keyword",
547
+ "value": ","
548
+ },
549
+ {
550
+ "$type": "Assignment",
551
+ "feature": "refs",
552
+ "operator": "+=",
553
+ "terminal": {
554
+ "$type": "CrossReference",
555
+ "type": {
556
+ "$ref": "#/rules@17"
557
+ },
558
+ "terminal": {
559
+ "$type": "RuleCall",
560
+ "rule": {
561
+ "$ref": "#/rules@32"
562
+ },
563
+ "arguments": []
564
+ },
565
+ "deprecatedSyntax": false
566
+ }
567
+ }
568
+ ],
569
+ "cardinality": "*"
570
+ },
571
+ {
572
+ "$type": "Keyword",
573
+ "value": ")"
574
+ }
575
+ ],
576
+ "cardinality": "?"
577
+ },
578
+ {
579
+ "$type": "Assignment",
580
+ "feature": "narrative",
581
+ "operator": "+=",
582
+ "terminal": {
583
+ "$type": "RuleCall",
584
+ "rule": {
585
+ "$ref": "#/rules@5"
586
+ },
587
+ "arguments": []
588
+ },
589
+ "cardinality": "*"
590
+ }
591
+ ]
592
+ },
593
+ "definesHiddenTokens": false,
594
+ "entry": false,
595
+ "fragment": false,
596
+ "hiddenTokens": [],
597
+ "parameters": [],
598
+ "wildcard": false
599
+ },
600
+ {
601
+ "$type": "ParserRule",
602
+ "name": "ClinicalValue",
603
+ "definition": {
604
+ "$type": "Group",
605
+ "elements": [
606
+ {
607
+ "$type": "Assignment",
608
+ "feature": "qu",
609
+ "operator": "+=",
610
+ "terminal": {
611
+ "$type": "RuleCall",
612
+ "rule": {
613
+ "$ref": "#/rules@26"
614
+ },
615
+ "arguments": []
616
+ },
617
+ "cardinality": "*"
618
+ },
619
+ {
620
+ "$type": "Assignment",
621
+ "feature": "timestamp",
622
+ "operator": "=",
623
+ "terminal": {
624
+ "$type": "RuleCall",
625
+ "rule": {
626
+ "$ref": "#/rules@14"
627
+ },
628
+ "arguments": []
629
+ },
630
+ "cardinality": "?"
631
+ },
632
+ {
633
+ "$type": "Assignment",
634
+ "feature": "name",
635
+ "operator": "=",
636
+ "terminal": {
637
+ "$type": "RuleCall",
638
+ "rule": {
639
+ "$ref": "#/rules@32"
640
+ },
641
+ "arguments": []
642
+ }
643
+ },
644
+ {
645
+ "$type": "Keyword",
646
+ "value": "["
647
+ },
648
+ {
649
+ "$type": "Assignment",
650
+ "feature": "values",
651
+ "operator": "+=",
652
+ "terminal": {
653
+ "$type": "RuleCall",
654
+ "rule": {
655
+ "$ref": "#/rules@10"
656
+ },
657
+ "arguments": []
658
+ }
659
+ },
660
+ {
661
+ "$type": "Group",
662
+ "elements": [
663
+ {
664
+ "$type": "Keyword",
665
+ "value": ","
666
+ },
667
+ {
668
+ "$type": "Assignment",
669
+ "feature": "values",
670
+ "operator": "+=",
671
+ "terminal": {
672
+ "$type": "RuleCall",
673
+ "rule": {
674
+ "$ref": "#/rules@10"
675
+ },
676
+ "arguments": []
677
+ }
678
+ }
679
+ ],
680
+ "cardinality": "*"
681
+ },
682
+ {
683
+ "$type": "Keyword",
684
+ "value": "]"
685
+ },
686
+ {
687
+ "$type": "Group",
688
+ "elements": [
689
+ {
690
+ "$type": "Keyword",
691
+ "value": "("
692
+ },
693
+ {
694
+ "$type": "Assignment",
695
+ "feature": "refs",
696
+ "operator": "+=",
697
+ "terminal": {
698
+ "$type": "CrossReference",
699
+ "type": {
700
+ "$ref": "#/rules@17"
701
+ },
702
+ "terminal": {
703
+ "$type": "RuleCall",
704
+ "rule": {
705
+ "$ref": "#/rules@32"
706
+ },
707
+ "arguments": []
708
+ },
709
+ "deprecatedSyntax": false
710
+ }
711
+ },
712
+ {
713
+ "$type": "Group",
714
+ "elements": [
715
+ {
716
+ "$type": "Keyword",
717
+ "value": ","
718
+ },
719
+ {
720
+ "$type": "Assignment",
721
+ "feature": "refs",
722
+ "operator": "+=",
723
+ "terminal": {
724
+ "$type": "CrossReference",
725
+ "type": {
726
+ "$ref": "#/rules@17"
727
+ },
728
+ "terminal": {
729
+ "$type": "RuleCall",
730
+ "rule": {
731
+ "$ref": "#/rules@32"
732
+ },
733
+ "arguments": []
734
+ },
735
+ "deprecatedSyntax": false
736
+ }
737
+ }
738
+ ],
739
+ "cardinality": "*"
740
+ },
741
+ {
742
+ "$type": "Keyword",
743
+ "value": ")"
744
+ }
745
+ ],
746
+ "cardinality": "?"
747
+ },
748
+ {
749
+ "$type": "Assignment",
750
+ "feature": "narrative",
751
+ "operator": "+=",
752
+ "terminal": {
753
+ "$type": "RuleCall",
754
+ "rule": {
755
+ "$ref": "#/rules@5"
756
+ },
757
+ "arguments": []
758
+ },
759
+ "cardinality": "*"
760
+ }
761
+ ]
762
+ },
763
+ "definesHiddenTokens": false,
764
+ "entry": false,
765
+ "fragment": false,
766
+ "hiddenTokens": [],
767
+ "parameters": [],
768
+ "wildcard": false
769
+ },
770
+ {
771
+ "$type": "ParserRule",
772
+ "name": "SingleValueUnit",
773
+ "definition": {
774
+ "$type": "Group",
775
+ "elements": [
776
+ {
777
+ "$type": "Assignment",
778
+ "feature": "negative",
779
+ "operator": "=",
780
+ "terminal": {
781
+ "$type": "Keyword",
782
+ "value": "(-)"
783
+ },
784
+ "cardinality": "?"
785
+ },
786
+ {
787
+ "$type": "Assignment",
788
+ "feature": "value",
789
+ "operator": "=",
790
+ "terminal": {
791
+ "$type": "Alternatives",
792
+ "elements": [
793
+ {
794
+ "$type": "RuleCall",
795
+ "rule": {
796
+ "$ref": "#/rules@32"
797
+ },
798
+ "arguments": []
799
+ },
800
+ {
801
+ "$type": "RuleCall",
802
+ "rule": {
803
+ "$ref": "#/rules@34"
804
+ },
805
+ "arguments": []
806
+ },
807
+ {
808
+ "$type": "RuleCall",
809
+ "rule": {
810
+ "$ref": "#/rules@13"
811
+ },
812
+ "arguments": []
813
+ },
814
+ {
815
+ "$type": "RuleCall",
816
+ "rule": {
817
+ "$ref": "#/rules@11"
818
+ },
819
+ "arguments": []
820
+ },
821
+ {
822
+ "$type": "RuleCall",
823
+ "rule": {
824
+ "$ref": "#/rules@12"
825
+ },
826
+ "arguments": []
827
+ }
828
+ ]
829
+ }
830
+ },
831
+ {
832
+ "$type": "Assignment",
833
+ "feature": "unit",
834
+ "operator": "=",
835
+ "terminal": {
836
+ "$type": "Alternatives",
837
+ "elements": [
838
+ {
839
+ "$type": "RuleCall",
840
+ "rule": {
841
+ "$ref": "#/rules@32"
842
+ },
843
+ "arguments": []
844
+ },
845
+ {
846
+ "$type": "RuleCall",
847
+ "rule": {
848
+ "$ref": "#/rules@34"
849
+ },
850
+ "arguments": []
851
+ },
852
+ {
853
+ "$type": "RuleCall",
854
+ "rule": {
855
+ "$ref": "#/rules@13"
856
+ },
857
+ "arguments": []
858
+ },
859
+ {
860
+ "$type": "RuleCall",
861
+ "rule": {
862
+ "$ref": "#/rules@11"
863
+ },
864
+ "arguments": []
865
+ },
866
+ {
867
+ "$type": "RuleCall",
868
+ "rule": {
869
+ "$ref": "#/rules@12"
870
+ },
871
+ "arguments": []
872
+ },
873
+ {
874
+ "$type": "Keyword",
875
+ "value": "_"
876
+ }
877
+ ]
878
+ }
879
+ }
880
+ ]
881
+ },
882
+ "definesHiddenTokens": false,
883
+ "entry": false,
884
+ "fragment": false,
885
+ "hiddenTokens": [],
886
+ "parameters": [],
887
+ "wildcard": false,
888
+ "$comment": "/* Value Unit */"
889
+ },
890
+ {
891
+ "$type": "ParserRule",
892
+ "name": "Fraction",
893
+ "dataType": "string",
894
+ "definition": {
895
+ "$type": "Group",
896
+ "elements": [
897
+ {
898
+ "$type": "RuleCall",
899
+ "rule": {
900
+ "$ref": "#/rules@34"
901
+ },
902
+ "arguments": []
903
+ },
904
+ {
905
+ "$type": "Keyword",
906
+ "value": "/"
907
+ },
908
+ {
909
+ "$type": "RuleCall",
910
+ "rule": {
911
+ "$ref": "#/rules@34"
912
+ },
913
+ "arguments": []
914
+ }
915
+ ]
916
+ },
917
+ "definesHiddenTokens": false,
918
+ "entry": false,
919
+ "fragment": false,
920
+ "hiddenTokens": [],
921
+ "parameters": [],
922
+ "wildcard": false
923
+ },
924
+ {
925
+ "$type": "ParserRule",
926
+ "name": "Boolean",
927
+ "dataType": "string",
928
+ "definition": {
929
+ "$type": "Alternatives",
930
+ "elements": [
931
+ {
932
+ "$type": "Keyword",
933
+ "value": "y"
934
+ },
935
+ {
936
+ "$type": "Keyword",
937
+ "value": "n"
938
+ }
939
+ ]
940
+ },
941
+ "definesHiddenTokens": false,
942
+ "entry": false,
943
+ "fragment": false,
944
+ "hiddenTokens": [],
945
+ "parameters": [],
946
+ "wildcard": false
947
+ },
948
+ {
949
+ "$type": "ParserRule",
950
+ "name": "Float",
951
+ "dataType": "string",
952
+ "definition": {
953
+ "$type": "Group",
954
+ "elements": [
955
+ {
956
+ "$type": "RuleCall",
957
+ "rule": {
958
+ "$ref": "#/rules@34"
959
+ },
960
+ "arguments": []
961
+ },
962
+ {
963
+ "$type": "Keyword",
964
+ "value": "."
965
+ },
966
+ {
967
+ "$type": "RuleCall",
968
+ "rule": {
969
+ "$ref": "#/rules@34"
970
+ },
971
+ "arguments": []
972
+ }
973
+ ]
974
+ },
975
+ "definesHiddenTokens": false,
976
+ "entry": false,
977
+ "fragment": false,
978
+ "hiddenTokens": [],
979
+ "parameters": [],
980
+ "wildcard": false
981
+ },
982
+ {
983
+ "$type": "ParserRule",
984
+ "name": "TimeStamp",
985
+ "definition": {
986
+ "$type": "Group",
987
+ "elements": [
988
+ {
989
+ "$type": "Keyword",
990
+ "value": "@"
991
+ },
992
+ {
993
+ "$type": "Alternatives",
994
+ "elements": [
995
+ {
996
+ "$type": "Assignment",
997
+ "feature": "empty",
998
+ "operator": "=",
999
+ "terminal": {
1000
+ "$type": "Keyword",
1001
+ "value": "time"
1002
+ }
1003
+ },
1004
+ {
1005
+ "$type": "Alternatives",
1006
+ "elements": [
1007
+ {
1008
+ "$type": "Assignment",
1009
+ "feature": "date",
1010
+ "operator": "=",
1011
+ "terminal": {
1012
+ "$type": "RuleCall",
1013
+ "rule": {
1014
+ "$ref": "#/rules@24"
1015
+ },
1016
+ "arguments": []
1017
+ }
1018
+ },
1019
+ {
1020
+ "$type": "Assignment",
1021
+ "feature": "time",
1022
+ "operator": "=",
1023
+ "terminal": {
1024
+ "$type": "RuleCall",
1025
+ "rule": {
1026
+ "$ref": "#/rules@25"
1027
+ },
1028
+ "arguments": []
1029
+ }
1030
+ }
1031
+ ]
1032
+ },
1033
+ {
1034
+ "$type": "Group",
1035
+ "elements": [
1036
+ {
1037
+ "$type": "Assignment",
1038
+ "feature": "date",
1039
+ "operator": "=",
1040
+ "terminal": {
1041
+ "$type": "RuleCall",
1042
+ "rule": {
1043
+ "$ref": "#/rules@24"
1044
+ },
1045
+ "arguments": []
1046
+ }
1047
+ },
1048
+ {
1049
+ "$type": "Assignment",
1050
+ "feature": "time",
1051
+ "operator": "=",
1052
+ "terminal": {
1053
+ "$type": "RuleCall",
1054
+ "rule": {
1055
+ "$ref": "#/rules@25"
1056
+ },
1057
+ "arguments": []
1058
+ }
1059
+ }
1060
+ ]
1061
+ }
1062
+ ]
1063
+ }
1064
+ ]
1065
+ },
1066
+ "definesHiddenTokens": false,
1067
+ "entry": false,
1068
+ "fragment": false,
1069
+ "hiddenTokens": [],
1070
+ "parameters": [],
1071
+ "wildcard": false
1072
+ },
1073
+ {
1074
+ "$type": "ParserRule",
1075
+ "name": "Issues",
1076
+ "definition": {
1077
+ "$type": "Group",
1078
+ "elements": [
1079
+ {
1080
+ "$type": "Keyword",
1081
+ "value": "Issues:"
1082
+ },
1083
+ {
1084
+ "$type": "Assignment",
1085
+ "feature": "narrative",
1086
+ "operator": "+=",
1087
+ "terminal": {
1088
+ "$type": "RuleCall",
1089
+ "rule": {
1090
+ "$ref": "#/rules@5"
1091
+ },
1092
+ "arguments": []
1093
+ },
1094
+ "cardinality": "*"
1095
+ },
1096
+ {
1097
+ "$type": "Assignment",
1098
+ "feature": "coord",
1099
+ "operator": "+=",
1100
+ "terminal": {
1101
+ "$type": "RuleCall",
1102
+ "rule": {
1103
+ "$ref": "#/rules@16"
1104
+ },
1105
+ "arguments": []
1106
+ },
1107
+ "cardinality": "*"
1108
+ }
1109
+ ]
1110
+ },
1111
+ "definesHiddenTokens": false,
1112
+ "entry": false,
1113
+ "fragment": false,
1114
+ "hiddenTokens": [],
1115
+ "parameters": [],
1116
+ "wildcard": false
1117
+ },
1118
+ {
1119
+ "$type": "ParserRule",
1120
+ "name": "IssueCoordinate",
1121
+ "definition": {
1122
+ "$type": "Group",
1123
+ "elements": [
1124
+ {
1125
+ "$type": "Assignment",
1126
+ "feature": "comment",
1127
+ "operator": "+=",
1128
+ "terminal": {
1129
+ "$type": "RuleCall",
1130
+ "rule": {
1131
+ "$ref": "#/rules@35"
1132
+ },
1133
+ "arguments": []
1134
+ },
1135
+ "cardinality": "*"
1136
+ },
1137
+ {
1138
+ "$type": "Assignment",
1139
+ "feature": "qu",
1140
+ "operator": "+=",
1141
+ "terminal": {
1142
+ "$type": "RuleCall",
1143
+ "rule": {
1144
+ "$ref": "#/rules@26"
1145
+ },
1146
+ "arguments": []
1147
+ },
1148
+ "cardinality": "*"
1149
+ },
1150
+ {
1151
+ "$type": "Assignment",
1152
+ "feature": "name",
1153
+ "operator": "=",
1154
+ "terminal": {
1155
+ "$type": "RuleCall",
1156
+ "rule": {
1157
+ "$ref": "#/rules@32"
1158
+ },
1159
+ "arguments": []
1160
+ }
1161
+ },
1162
+ {
1163
+ "$type": "Group",
1164
+ "elements": [
1165
+ {
1166
+ "$type": "Keyword",
1167
+ "value": "("
1168
+ },
1169
+ {
1170
+ "$type": "Assignment",
1171
+ "feature": "refs",
1172
+ "operator": "+=",
1173
+ "terminal": {
1174
+ "$type": "CrossReference",
1175
+ "type": {
1176
+ "$ref": "#/rules@17"
1177
+ },
1178
+ "terminal": {
1179
+ "$type": "RuleCall",
1180
+ "rule": {
1181
+ "$ref": "#/rules@32"
1182
+ },
1183
+ "arguments": []
1184
+ },
1185
+ "deprecatedSyntax": false
1186
+ }
1187
+ },
1188
+ {
1189
+ "$type": "Group",
1190
+ "elements": [
1191
+ {
1192
+ "$type": "Keyword",
1193
+ "value": ","
1194
+ },
1195
+ {
1196
+ "$type": "Assignment",
1197
+ "feature": "refs",
1198
+ "operator": "+=",
1199
+ "terminal": {
1200
+ "$type": "CrossReference",
1201
+ "type": {
1202
+ "$ref": "#/rules@17"
1203
+ },
1204
+ "terminal": {
1205
+ "$type": "RuleCall",
1206
+ "rule": {
1207
+ "$ref": "#/rules@32"
1208
+ },
1209
+ "arguments": []
1210
+ },
1211
+ "deprecatedSyntax": false
1212
+ }
1213
+ }
1214
+ ],
1215
+ "cardinality": "*"
1216
+ },
1217
+ {
1218
+ "$type": "Keyword",
1219
+ "value": ")"
1220
+ }
1221
+ ],
1222
+ "cardinality": "?"
1223
+ },
1224
+ {
1225
+ "$type": "Group",
1226
+ "elements": [
1227
+ {
1228
+ "$type": "Keyword",
1229
+ "value": ":"
1230
+ },
1231
+ {
1232
+ "$type": "Assignment",
1233
+ "feature": "snomed",
1234
+ "operator": "=",
1235
+ "terminal": {
1236
+ "$type": "RuleCall",
1237
+ "rule": {
1238
+ "$ref": "#/rules@27"
1239
+ },
1240
+ "arguments": []
1241
+ }
1242
+ }
1243
+ ],
1244
+ "cardinality": "?"
1245
+ },
1246
+ {
1247
+ "$type": "Group",
1248
+ "elements": [
1249
+ {
1250
+ "$type": "Keyword",
1251
+ "value": "from"
1252
+ },
1253
+ {
1254
+ "$type": "Assignment",
1255
+ "feature": "mods",
1256
+ "operator": "+=",
1257
+ "terminal": {
1258
+ "$type": "CrossReference",
1259
+ "type": {
1260
+ "$ref": "#/rules@23"
1261
+ },
1262
+ "terminal": {
1263
+ "$type": "RuleCall",
1264
+ "rule": {
1265
+ "$ref": "#/rules@32"
1266
+ },
1267
+ "arguments": []
1268
+ },
1269
+ "deprecatedSyntax": false
1270
+ }
1271
+ },
1272
+ {
1273
+ "$type": "Group",
1274
+ "elements": [
1275
+ {
1276
+ "$type": "Keyword",
1277
+ "value": ","
1278
+ },
1279
+ {
1280
+ "$type": "Assignment",
1281
+ "feature": "mods",
1282
+ "operator": "+=",
1283
+ "terminal": {
1284
+ "$type": "CrossReference",
1285
+ "type": {
1286
+ "$ref": "#/rules@23"
1287
+ },
1288
+ "terminal": {
1289
+ "$type": "RuleCall",
1290
+ "rule": {
1291
+ "$ref": "#/rules@32"
1292
+ },
1293
+ "arguments": []
1294
+ },
1295
+ "deprecatedSyntax": false
1296
+ }
1297
+ }
1298
+ ],
1299
+ "cardinality": "*"
1300
+ },
1301
+ {
1302
+ "$type": "Group",
1303
+ "elements": [
1304
+ {
1305
+ "$type": "Keyword",
1306
+ "value": "with"
1307
+ },
1308
+ {
1309
+ "$type": "Assignment",
1310
+ "feature": "temps",
1311
+ "operator": "+=",
1312
+ "terminal": {
1313
+ "$type": "CrossReference",
1314
+ "type": {
1315
+ "$ref": "#/rules@22"
1316
+ },
1317
+ "terminal": {
1318
+ "$type": "RuleCall",
1319
+ "rule": {
1320
+ "$ref": "#/rules@32"
1321
+ },
1322
+ "arguments": []
1323
+ },
1324
+ "deprecatedSyntax": false
1325
+ }
1326
+ },
1327
+ {
1328
+ "$type": "Group",
1329
+ "elements": [
1330
+ {
1331
+ "$type": "Keyword",
1332
+ "value": ","
1333
+ },
1334
+ {
1335
+ "$type": "Assignment",
1336
+ "feature": "temps",
1337
+ "operator": "+=",
1338
+ "terminal": {
1339
+ "$type": "CrossReference",
1340
+ "type": {
1341
+ "$ref": "#/rules@22"
1342
+ },
1343
+ "terminal": {
1344
+ "$type": "RuleCall",
1345
+ "rule": {
1346
+ "$ref": "#/rules@32"
1347
+ },
1348
+ "arguments": []
1349
+ },
1350
+ "deprecatedSyntax": false
1351
+ }
1352
+ }
1353
+ ],
1354
+ "cardinality": "*"
1355
+ }
1356
+ ],
1357
+ "cardinality": "?"
1358
+ }
1359
+ ],
1360
+ "cardinality": "?"
1361
+ },
1362
+ {
1363
+ "$type": "Assignment",
1364
+ "feature": "narrative",
1365
+ "operator": "+=",
1366
+ "terminal": {
1367
+ "$type": "RuleCall",
1368
+ "rule": {
1369
+ "$ref": "#/rules@5"
1370
+ },
1371
+ "arguments": []
1372
+ },
1373
+ "cardinality": "*"
1374
+ }
1375
+ ]
1376
+ },
1377
+ "definesHiddenTokens": false,
1378
+ "entry": false,
1379
+ "fragment": false,
1380
+ "hiddenTokens": [],
1381
+ "parameters": [],
1382
+ "wildcard": false
1383
+ },
1384
+ {
1385
+ "$type": "ParserRule",
1386
+ "name": "ReferenceCoordinate",
1387
+ "definition": {
1388
+ "$type": "Alternatives",
1389
+ "elements": [
1390
+ {
1391
+ "$type": "RuleCall",
1392
+ "rule": {
1393
+ "$ref": "#/rules@16"
1394
+ },
1395
+ "arguments": []
1396
+ },
1397
+ {
1398
+ "$type": "RuleCall",
1399
+ "rule": {
1400
+ "$ref": "#/rules@20"
1401
+ },
1402
+ "arguments": []
1403
+ },
1404
+ {
1405
+ "$type": "RuleCall",
1406
+ "rule": {
1407
+ "$ref": "#/rules@8"
1408
+ },
1409
+ "arguments": []
1410
+ }
1411
+ ]
1412
+ },
1413
+ "definesHiddenTokens": false,
1414
+ "entry": false,
1415
+ "fragment": false,
1416
+ "hiddenTokens": [],
1417
+ "parameters": [],
1418
+ "wildcard": false
1419
+ },
1420
+ {
1421
+ "$type": "ParserRule",
1422
+ "name": "Orders",
1423
+ "definition": {
1424
+ "$type": "Group",
1425
+ "elements": [
1426
+ {
1427
+ "$type": "Keyword",
1428
+ "value": "Orders:"
1429
+ },
1430
+ {
1431
+ "$type": "Assignment",
1432
+ "feature": "narrative",
1433
+ "operator": "+=",
1434
+ "terminal": {
1435
+ "$type": "RuleCall",
1436
+ "rule": {
1437
+ "$ref": "#/rules@5"
1438
+ },
1439
+ "arguments": []
1440
+ },
1441
+ "cardinality": "*"
1442
+ },
1443
+ {
1444
+ "$type": "Assignment",
1445
+ "feature": "namedGroups",
1446
+ "operator": "+=",
1447
+ "terminal": {
1448
+ "$type": "RuleCall",
1449
+ "rule": {
1450
+ "$ref": "#/rules@19"
1451
+ },
1452
+ "arguments": []
1453
+ },
1454
+ "cardinality": "*"
1455
+ }
1456
+ ]
1457
+ },
1458
+ "definesHiddenTokens": false,
1459
+ "entry": false,
1460
+ "fragment": false,
1461
+ "hiddenTokens": [],
1462
+ "parameters": [],
1463
+ "wildcard": false
1464
+ },
1465
+ {
1466
+ "$type": "ParserRule",
1467
+ "name": "NamedGroupOrder",
1468
+ "definition": {
1469
+ "$type": "Group",
1470
+ "elements": [
1471
+ {
1472
+ "$type": "Assignment",
1473
+ "feature": "comment",
1474
+ "operator": "+=",
1475
+ "terminal": {
1476
+ "$type": "RuleCall",
1477
+ "rule": {
1478
+ "$ref": "#/rules@35"
1479
+ },
1480
+ "arguments": []
1481
+ },
1482
+ "cardinality": "*"
1483
+ },
1484
+ {
1485
+ "$type": "Assignment",
1486
+ "feature": "qu",
1487
+ "operator": "+=",
1488
+ "terminal": {
1489
+ "$type": "RuleCall",
1490
+ "rule": {
1491
+ "$ref": "#/rules@26"
1492
+ },
1493
+ "arguments": []
1494
+ },
1495
+ "cardinality": "*"
1496
+ },
1497
+ {
1498
+ "$type": "Assignment",
1499
+ "feature": "name",
1500
+ "operator": "=",
1501
+ "terminal": {
1502
+ "$type": "RuleCall",
1503
+ "rule": {
1504
+ "$ref": "#/rules@31"
1505
+ },
1506
+ "arguments": []
1507
+ }
1508
+ },
1509
+ {
1510
+ "$type": "Group",
1511
+ "elements": [
1512
+ {
1513
+ "$type": "Keyword",
1514
+ "value": "("
1515
+ },
1516
+ {
1517
+ "$type": "Assignment",
1518
+ "feature": "refs",
1519
+ "operator": "+=",
1520
+ "terminal": {
1521
+ "$type": "CrossReference",
1522
+ "type": {
1523
+ "$ref": "#/rules@17"
1524
+ },
1525
+ "terminal": {
1526
+ "$type": "RuleCall",
1527
+ "rule": {
1528
+ "$ref": "#/rules@32"
1529
+ },
1530
+ "arguments": []
1531
+ },
1532
+ "deprecatedSyntax": false
1533
+ }
1534
+ },
1535
+ {
1536
+ "$type": "Group",
1537
+ "elements": [
1538
+ {
1539
+ "$type": "Keyword",
1540
+ "value": ","
1541
+ },
1542
+ {
1543
+ "$type": "Assignment",
1544
+ "feature": "refs",
1545
+ "operator": "+=",
1546
+ "terminal": {
1547
+ "$type": "CrossReference",
1548
+ "type": {
1549
+ "$ref": "#/rules@17"
1550
+ },
1551
+ "terminal": {
1552
+ "$type": "RuleCall",
1553
+ "rule": {
1554
+ "$ref": "#/rules@32"
1555
+ },
1556
+ "arguments": []
1557
+ },
1558
+ "deprecatedSyntax": false
1559
+ }
1560
+ }
1561
+ ],
1562
+ "cardinality": "*"
1563
+ },
1564
+ {
1565
+ "$type": "Keyword",
1566
+ "value": ")"
1567
+ }
1568
+ ],
1569
+ "cardinality": "?"
1570
+ },
1571
+ {
1572
+ "$type": "Assignment",
1573
+ "feature": "narrative",
1574
+ "operator": "+=",
1575
+ "terminal": {
1576
+ "$type": "RuleCall",
1577
+ "rule": {
1578
+ "$ref": "#/rules@5"
1579
+ },
1580
+ "arguments": []
1581
+ },
1582
+ "cardinality": "*"
1583
+ },
1584
+ {
1585
+ "$type": "Assignment",
1586
+ "feature": "orders",
1587
+ "operator": "+=",
1588
+ "terminal": {
1589
+ "$type": "Alternatives",
1590
+ "elements": [
1591
+ {
1592
+ "$type": "RuleCall",
1593
+ "rule": {
1594
+ "$ref": "#/rules@20"
1595
+ },
1596
+ "arguments": []
1597
+ },
1598
+ {
1599
+ "$type": "RuleCall",
1600
+ "rule": {
1601
+ "$ref": "#/rules@21"
1602
+ },
1603
+ "arguments": []
1604
+ }
1605
+ ]
1606
+ },
1607
+ "cardinality": "*"
1608
+ }
1609
+ ]
1610
+ },
1611
+ "definesHiddenTokens": false,
1612
+ "entry": false,
1613
+ "fragment": false,
1614
+ "hiddenTokens": [],
1615
+ "parameters": [],
1616
+ "wildcard": false
1617
+ },
1618
+ {
1619
+ "$type": "ParserRule",
1620
+ "name": "OrderCoordinate",
1621
+ "definition": {
1622
+ "$type": "Group",
1623
+ "elements": [
1624
+ {
1625
+ "$type": "Assignment",
1626
+ "feature": "comment",
1627
+ "operator": "+=",
1628
+ "terminal": {
1629
+ "$type": "RuleCall",
1630
+ "rule": {
1631
+ "$ref": "#/rules@35"
1632
+ },
1633
+ "arguments": []
1634
+ },
1635
+ "cardinality": "*"
1636
+ },
1637
+ {
1638
+ "$type": "Assignment",
1639
+ "feature": "qu",
1640
+ "operator": "+=",
1641
+ "terminal": {
1642
+ "$type": "RuleCall",
1643
+ "rule": {
1644
+ "$ref": "#/rules@26"
1645
+ },
1646
+ "arguments": []
1647
+ },
1648
+ "cardinality": "*"
1649
+ },
1650
+ {
1651
+ "$type": "Assignment",
1652
+ "feature": "name",
1653
+ "operator": "=",
1654
+ "terminal": {
1655
+ "$type": "RuleCall",
1656
+ "rule": {
1657
+ "$ref": "#/rules@32"
1658
+ },
1659
+ "arguments": []
1660
+ }
1661
+ },
1662
+ {
1663
+ "$type": "Group",
1664
+ "elements": [
1665
+ {
1666
+ "$type": "Keyword",
1667
+ "value": "("
1668
+ },
1669
+ {
1670
+ "$type": "Assignment",
1671
+ "feature": "refs",
1672
+ "operator": "+=",
1673
+ "terminal": {
1674
+ "$type": "CrossReference",
1675
+ "type": {
1676
+ "$ref": "#/rules@17"
1677
+ },
1678
+ "terminal": {
1679
+ "$type": "RuleCall",
1680
+ "rule": {
1681
+ "$ref": "#/rules@32"
1682
+ },
1683
+ "arguments": []
1684
+ },
1685
+ "deprecatedSyntax": false
1686
+ }
1687
+ },
1688
+ {
1689
+ "$type": "Group",
1690
+ "elements": [
1691
+ {
1692
+ "$type": "Keyword",
1693
+ "value": ","
1694
+ },
1695
+ {
1696
+ "$type": "Assignment",
1697
+ "feature": "refs",
1698
+ "operator": "+=",
1699
+ "terminal": {
1700
+ "$type": "CrossReference",
1701
+ "type": {
1702
+ "$ref": "#/rules@17"
1703
+ },
1704
+ "terminal": {
1705
+ "$type": "RuleCall",
1706
+ "rule": {
1707
+ "$ref": "#/rules@32"
1708
+ },
1709
+ "arguments": []
1710
+ },
1711
+ "deprecatedSyntax": false
1712
+ }
1713
+ }
1714
+ ],
1715
+ "cardinality": "*"
1716
+ },
1717
+ {
1718
+ "$type": "Keyword",
1719
+ "value": ")"
1720
+ }
1721
+ ],
1722
+ "cardinality": "?"
1723
+ },
1724
+ {
1725
+ "$type": "Assignment",
1726
+ "feature": "narrative",
1727
+ "operator": "+=",
1728
+ "terminal": {
1729
+ "$type": "RuleCall",
1730
+ "rule": {
1731
+ "$ref": "#/rules@5"
1732
+ },
1733
+ "arguments": []
1734
+ },
1735
+ "cardinality": "*"
1736
+ }
1737
+ ]
1738
+ },
1739
+ "definesHiddenTokens": false,
1740
+ "entry": false,
1741
+ "fragment": false,
1742
+ "hiddenTokens": [],
1743
+ "parameters": [],
1744
+ "wildcard": false
1745
+ },
1746
+ {
1747
+ "$type": "ParserRule",
1748
+ "name": "MutuallyExclusive",
1749
+ "definition": {
1750
+ "$type": "Group",
1751
+ "elements": [
1752
+ {
1753
+ "$type": "Assignment",
1754
+ "feature": "comment",
1755
+ "operator": "+=",
1756
+ "terminal": {
1757
+ "$type": "RuleCall",
1758
+ "rule": {
1759
+ "$ref": "#/rules@35"
1760
+ },
1761
+ "arguments": []
1762
+ },
1763
+ "cardinality": "*"
1764
+ },
1765
+ {
1766
+ "$type": "Assignment",
1767
+ "feature": "order1",
1768
+ "operator": "=",
1769
+ "terminal": {
1770
+ "$type": "RuleCall",
1771
+ "rule": {
1772
+ "$ref": "#/rules@20"
1773
+ },
1774
+ "arguments": []
1775
+ }
1776
+ },
1777
+ {
1778
+ "$type": "Keyword",
1779
+ "value": "or"
1780
+ },
1781
+ {
1782
+ "$type": "Assignment",
1783
+ "feature": "order2",
1784
+ "operator": "=",
1785
+ "terminal": {
1786
+ "$type": "RuleCall",
1787
+ "rule": {
1788
+ "$ref": "#/rules@20"
1789
+ },
1790
+ "arguments": []
1791
+ }
1792
+ }
1793
+ ]
1794
+ },
1795
+ "definesHiddenTokens": false,
1796
+ "entry": false,
1797
+ "fragment": false,
1798
+ "hiddenTokens": [],
1799
+ "parameters": [],
1800
+ "wildcard": false
1801
+ },
1802
+ {
1803
+ "$type": "ParserRule",
1804
+ "name": "TEMPLATE",
1805
+ "definition": {
1806
+ "$type": "Group",
1807
+ "elements": [
1808
+ {
1809
+ "$type": "Keyword",
1810
+ "value": "template"
1811
+ },
1812
+ {
1813
+ "$type": "Assignment",
1814
+ "feature": "name",
1815
+ "operator": "=",
1816
+ "terminal": {
1817
+ "$type": "RuleCall",
1818
+ "rule": {
1819
+ "$ref": "#/rules@32"
1820
+ },
1821
+ "arguments": []
1822
+ }
1823
+ },
1824
+ {
1825
+ "$type": "Assignment",
1826
+ "feature": "elements",
1827
+ "operator": "+=",
1828
+ "terminal": {
1829
+ "$type": "Alternatives",
1830
+ "elements": [
1831
+ {
1832
+ "$type": "RuleCall",
1833
+ "rule": {
1834
+ "$ref": "#/rules@6"
1835
+ },
1836
+ "arguments": []
1837
+ },
1838
+ {
1839
+ "$type": "RuleCall",
1840
+ "rule": {
1841
+ "$ref": "#/rules@18"
1842
+ },
1843
+ "arguments": []
1844
+ }
1845
+ ]
1846
+ },
1847
+ "cardinality": "*"
1848
+ }
1849
+ ]
1850
+ },
1851
+ "definesHiddenTokens": false,
1852
+ "entry": false,
1853
+ "fragment": false,
1854
+ "hiddenTokens": [],
1855
+ "parameters": [],
1856
+ "wildcard": false,
1857
+ "$comment": "/* Template and Module */"
1858
+ },
1859
+ {
1860
+ "$type": "ParserRule",
1861
+ "name": "MODULE",
1862
+ "definition": {
1863
+ "$type": "Group",
1864
+ "elements": [
1865
+ {
1866
+ "$type": "Keyword",
1867
+ "value": "module:"
1868
+ },
1869
+ {
1870
+ "$type": "Assignment",
1871
+ "feature": "name",
1872
+ "operator": "=",
1873
+ "terminal": {
1874
+ "$type": "RuleCall",
1875
+ "rule": {
1876
+ "$ref": "#/rules@32"
1877
+ },
1878
+ "arguments": []
1879
+ }
1880
+ },
1881
+ {
1882
+ "$type": "Assignment",
1883
+ "feature": "elements",
1884
+ "operator": "+=",
1885
+ "terminal": {
1886
+ "$type": "Alternatives",
1887
+ "elements": [
1888
+ {
1889
+ "$type": "RuleCall",
1890
+ "rule": {
1891
+ "$ref": "#/rules@15"
1892
+ },
1893
+ "arguments": []
1894
+ },
1895
+ {
1896
+ "$type": "RuleCall",
1897
+ "rule": {
1898
+ "$ref": "#/rules@18"
1899
+ },
1900
+ "arguments": []
1901
+ }
1902
+ ]
1903
+ },
1904
+ "cardinality": "*"
1905
+ }
1906
+ ]
1907
+ },
1908
+ "definesHiddenTokens": false,
1909
+ "entry": false,
1910
+ "fragment": false,
1911
+ "hiddenTokens": [],
1912
+ "parameters": [],
1913
+ "wildcard": false
1914
+ },
1915
+ {
1916
+ "$type": "ParserRule",
1917
+ "name": "AuroraDate",
1918
+ "dataType": "string",
1919
+ "definition": {
1920
+ "$type": "Alternatives",
1921
+ "elements": [
1922
+ {
1923
+ "$type": "Group",
1924
+ "elements": [
1925
+ {
1926
+ "$type": "RuleCall",
1927
+ "rule": {
1928
+ "$ref": "#/rules@34"
1929
+ },
1930
+ "arguments": []
1931
+ },
1932
+ {
1933
+ "$type": "Keyword",
1934
+ "value": "/"
1935
+ },
1936
+ {
1937
+ "$type": "RuleCall",
1938
+ "rule": {
1939
+ "$ref": "#/rules@34"
1940
+ },
1941
+ "arguments": []
1942
+ },
1943
+ {
1944
+ "$type": "Keyword",
1945
+ "value": "/"
1946
+ },
1947
+ {
1948
+ "$type": "RuleCall",
1949
+ "rule": {
1950
+ "$ref": "#/rules@34"
1951
+ },
1952
+ "arguments": []
1953
+ }
1954
+ ]
1955
+ },
1956
+ {
1957
+ "$type": "RuleCall",
1958
+ "rule": {
1959
+ "$ref": "#/rules@34"
1960
+ },
1961
+ "arguments": []
1962
+ },
1963
+ {
1964
+ "$type": "Group",
1965
+ "elements": [
1966
+ {
1967
+ "$type": "RuleCall",
1968
+ "rule": {
1969
+ "$ref": "#/rules@34"
1970
+ },
1971
+ "arguments": []
1972
+ },
1973
+ {
1974
+ "$type": "Keyword",
1975
+ "value": "/"
1976
+ },
1977
+ {
1978
+ "$type": "RuleCall",
1979
+ "rule": {
1980
+ "$ref": "#/rules@34"
1981
+ },
1982
+ "arguments": []
1983
+ }
1984
+ ]
1985
+ }
1986
+ ]
1987
+ },
1988
+ "definesHiddenTokens": false,
1989
+ "entry": false,
1990
+ "fragment": false,
1991
+ "hiddenTokens": [],
1992
+ "parameters": [],
1993
+ "wildcard": false
1994
+ },
1995
+ {
1996
+ "$type": "ParserRule",
1997
+ "name": "Time",
1998
+ "dataType": "string",
1999
+ "definition": {
2000
+ "$type": "Group",
2001
+ "elements": [
2002
+ {
2003
+ "$type": "RuleCall",
2004
+ "rule": {
2005
+ "$ref": "#/rules@34"
2006
+ },
2007
+ "arguments": []
2008
+ },
2009
+ {
2010
+ "$type": "Keyword",
2011
+ "value": ":"
2012
+ },
2013
+ {
2014
+ "$type": "RuleCall",
2015
+ "rule": {
2016
+ "$ref": "#/rules@34"
2017
+ },
2018
+ "arguments": []
2019
+ }
2020
+ ]
2021
+ },
2022
+ "definesHiddenTokens": false,
2023
+ "entry": false,
2024
+ "fragment": false,
2025
+ "hiddenTokens": [],
2026
+ "parameters": [],
2027
+ "wildcard": false
2028
+ },
2029
+ {
2030
+ "$type": "ParserRule",
2031
+ "name": "QU",
2032
+ "definition": {
2033
+ "$type": "Assignment",
2034
+ "feature": "query",
2035
+ "operator": "=",
2036
+ "terminal": {
2037
+ "$type": "RuleCall",
2038
+ "rule": {
2039
+ "$ref": "#/rules@38"
2040
+ },
2041
+ "arguments": []
2042
+ }
2043
+ },
2044
+ "definesHiddenTokens": false,
2045
+ "entry": false,
2046
+ "fragment": false,
2047
+ "hiddenTokens": [],
2048
+ "parameters": [],
2049
+ "wildcard": false
2050
+ },
2051
+ {
2052
+ "$type": "ParserRule",
2053
+ "name": "Snomed",
2054
+ "definition": {
2055
+ "$type": "Assignment",
2056
+ "feature": "name",
2057
+ "operator": "=",
2058
+ "terminal": {
2059
+ "$type": "RuleCall",
2060
+ "rule": {
2061
+ "$ref": "#/rules@32"
2062
+ },
2063
+ "arguments": []
2064
+ }
2065
+ },
2066
+ "definesHiddenTokens": false,
2067
+ "entry": false,
2068
+ "fragment": false,
2069
+ "hiddenTokens": [],
2070
+ "parameters": [],
2071
+ "wildcard": false
2072
+ },
2073
+ {
2074
+ "$type": "TerminalRule",
2075
+ "name": "PREFIXSINGLE",
2076
+ "definition": {
2077
+ "$type": "TerminalGroup",
2078
+ "elements": [
2079
+ {
2080
+ "$type": "CharacterRange",
2081
+ "left": {
2082
+ "$type": "Keyword",
2083
+ "value": "-"
2084
+ }
2085
+ },
2086
+ {
2087
+ "$type": "TerminalAlternatives",
2088
+ "elements": [
2089
+ {
2090
+ "$type": "TerminalAlternatives",
2091
+ "elements": [
2092
+ {
2093
+ "$type": "TerminalAlternatives",
2094
+ "elements": [
2095
+ {
2096
+ "$type": "CharacterRange",
2097
+ "left": {
2098
+ "$type": "Keyword",
2099
+ "value": "?"
2100
+ }
2101
+ },
2102
+ {
2103
+ "$type": "CharacterRange",
2104
+ "left": {
2105
+ "$type": "Keyword",
2106
+ "value": "!"
2107
+ }
2108
+ }
2109
+ ]
2110
+ },
2111
+ {
2112
+ "$type": "CharacterRange",
2113
+ "left": {
2114
+ "$type": "Keyword",
2115
+ "value": "."
2116
+ }
2117
+ }
2118
+ ]
2119
+ },
2120
+ {
2121
+ "$type": "CharacterRange",
2122
+ "left": {
2123
+ "$type": "Keyword",
2124
+ "value": "x"
2125
+ }
2126
+ }
2127
+ ],
2128
+ "cardinality": "?"
2129
+ }
2130
+ ]
2131
+ },
2132
+ "fragment": false,
2133
+ "hidden": false
2134
+ },
2135
+ {
2136
+ "$type": "TerminalRule",
2137
+ "name": "PREFIXMULTI",
2138
+ "definition": {
2139
+ "$type": "TerminalAlternatives",
2140
+ "elements": [
2141
+ {
2142
+ "$type": "TerminalAlternatives",
2143
+ "elements": [
2144
+ {
2145
+ "$type": "TerminalAlternatives",
2146
+ "elements": [
2147
+ {
2148
+ "$type": "TerminalAlternatives",
2149
+ "elements": [
2150
+ {
2151
+ "$type": "CharacterRange",
2152
+ "left": {
2153
+ "$type": "Keyword",
2154
+ "value": "--"
2155
+ }
2156
+ },
2157
+ {
2158
+ "$type": "CharacterRange",
2159
+ "left": {
2160
+ "$type": "Keyword",
2161
+ "value": "??"
2162
+ }
2163
+ }
2164
+ ]
2165
+ },
2166
+ {
2167
+ "$type": "CharacterRange",
2168
+ "left": {
2169
+ "$type": "Keyword",
2170
+ "value": "!!"
2171
+ }
2172
+ }
2173
+ ]
2174
+ },
2175
+ {
2176
+ "$type": "CharacterRange",
2177
+ "left": {
2178
+ "$type": "Keyword",
2179
+ "value": ".."
2180
+ }
2181
+ }
2182
+ ]
2183
+ },
2184
+ {
2185
+ "$type": "CharacterRange",
2186
+ "left": {
2187
+ "$type": "Keyword",
2188
+ "value": "xx"
2189
+ }
2190
+ }
2191
+ ]
2192
+ },
2193
+ "fragment": false,
2194
+ "hidden": false
2195
+ },
2196
+ {
2197
+ "$type": "TerminalRule",
2198
+ "name": "NL_STATEMENTMULTI",
2199
+ "type": {
2200
+ "$type": "ReturnType",
2201
+ "name": "string"
2202
+ },
2203
+ "definition": {
2204
+ "$type": "TerminalGroup",
2205
+ "elements": [
2206
+ {
2207
+ "$type": "TerminalRuleCall",
2208
+ "rule": {
2209
+ "$ref": "#/rules@29"
2210
+ }
2211
+ },
2212
+ {
2213
+ "$type": "UntilToken",
2214
+ "terminal": {
2215
+ "$type": "CharacterRange",
2216
+ "left": {
2217
+ "$type": "Keyword",
2218
+ "value": ";"
2219
+ }
2220
+ }
2221
+ }
2222
+ ]
2223
+ },
2224
+ "fragment": false,
2225
+ "hidden": false
2226
+ },
2227
+ {
2228
+ "$type": "TerminalRule",
2229
+ "name": "ID_WITH_COLON",
2230
+ "definition": {
2231
+ "$type": "RegexToken",
2232
+ "regex": "/[a-zA-Z0-9_]+:/"
2233
+ },
2234
+ "fragment": false,
2235
+ "hidden": false
2236
+ },
2237
+ {
2238
+ "$type": "TerminalRule",
2239
+ "name": "ID",
2240
+ "definition": {
2241
+ "$type": "RegexToken",
2242
+ "regex": "/[a-zA-Z0-9_]+/"
2243
+ },
2244
+ "fragment": false,
2245
+ "hidden": false
2246
+ },
2247
+ {
2248
+ "$type": "TerminalRule",
2249
+ "name": "SINGLENL",
2250
+ "type": {
2251
+ "$type": "ReturnType",
2252
+ "name": "string"
2253
+ },
2254
+ "definition": {
2255
+ "$type": "RegexToken",
2256
+ "regex": "/-(\\\\??|\\\\.\\\\?|!|x)?([^\\\\n]*)/"
2257
+ },
2258
+ "fragment": false,
2259
+ "hidden": false
2260
+ },
2261
+ {
2262
+ "$type": "TerminalRule",
2263
+ "name": "INT",
2264
+ "definition": {
2265
+ "$type": "RegexToken",
2266
+ "regex": "/[0-9]+/"
2267
+ },
2268
+ "fragment": false,
2269
+ "hidden": false
2270
+ },
2271
+ {
2272
+ "$type": "TerminalRule",
2273
+ "name": "ML_COMMENT",
2274
+ "type": {
2275
+ "$type": "ReturnType",
2276
+ "name": "string"
2277
+ },
2278
+ "definition": {
2279
+ "$type": "TerminalGroup",
2280
+ "elements": [
2281
+ {
2282
+ "$type": "CharacterRange",
2283
+ "left": {
2284
+ "$type": "Keyword",
2285
+ "value": "/*"
2286
+ }
2287
+ },
2288
+ {
2289
+ "$type": "UntilToken",
2290
+ "terminal": {
2291
+ "$type": "CharacterRange",
2292
+ "left": {
2293
+ "$type": "Keyword",
2294
+ "value": "*/"
2295
+ }
2296
+ }
2297
+ }
2298
+ ]
2299
+ },
2300
+ "fragment": false,
2301
+ "hidden": false
2302
+ },
2303
+ {
2304
+ "$type": "TerminalRule",
2305
+ "name": "SL_COMMENT",
2306
+ "type": {
2307
+ "$type": "ReturnType",
2308
+ "name": "string"
2309
+ },
2310
+ "definition": {
2311
+ "$type": "TerminalGroup",
2312
+ "elements": [
2313
+ {
2314
+ "$type": "CharacterRange",
2315
+ "left": {
2316
+ "$type": "Keyword",
2317
+ "value": "//"
2318
+ }
2319
+ },
2320
+ {
2321
+ "$type": "NegatedToken",
2322
+ "terminal": {
2323
+ "$type": "TerminalAlternatives",
2324
+ "elements": [
2325
+ {
2326
+ "$type": "CharacterRange",
2327
+ "left": {
2328
+ "$type": "Keyword",
2329
+ "value": "\\n"
2330
+ }
2331
+ },
2332
+ {
2333
+ "$type": "CharacterRange",
2334
+ "left": {
2335
+ "$type": "Keyword",
2336
+ "value": "\\r"
2337
+ }
2338
+ }
2339
+ ]
2340
+ }
2341
+ },
2342
+ {
2343
+ "$type": "TerminalGroup",
2344
+ "elements": [
2345
+ {
2346
+ "$type": "CharacterRange",
2347
+ "left": {
2348
+ "$type": "Keyword",
2349
+ "value": "\\r"
2350
+ },
2351
+ "cardinality": "?"
2352
+ },
2353
+ {
2354
+ "$type": "CharacterRange",
2355
+ "left": {
2356
+ "$type": "Keyword",
2357
+ "value": "\\n"
2358
+ }
2359
+ }
2360
+ ],
2361
+ "cardinality": "?"
2362
+ }
2363
+ ]
2364
+ },
2365
+ "fragment": false,
2366
+ "hidden": false
2367
+ },
2368
+ {
2369
+ "$type": "TerminalRule",
2370
+ "hidden": true,
2371
+ "name": "WS",
2372
+ "definition": {
2373
+ "$type": "RegexToken",
2374
+ "regex": "/\\\\s+/"
2375
+ },
2376
+ "fragment": false
2377
+ },
2378
+ {
2379
+ "$type": "TerminalRule",
2380
+ "name": "QUTERMINAL",
2381
+ "type": {
2382
+ "$type": "ReturnType",
2383
+ "name": "string"
2384
+ },
2385
+ "definition": {
2386
+ "$type": "TerminalAlternatives",
2387
+ "elements": [
2388
+ {
2389
+ "$type": "TerminalAlternatives",
2390
+ "elements": [
2391
+ {
2392
+ "$type": "TerminalAlternatives",
2393
+ "elements": [
2394
+ {
2395
+ "$type": "CharacterRange",
2396
+ "left": {
2397
+ "$type": "Keyword",
2398
+ "value": "?"
2399
+ }
2400
+ },
2401
+ {
2402
+ "$type": "CharacterRange",
2403
+ "left": {
2404
+ "$type": "Keyword",
2405
+ "value": "!"
2406
+ }
2407
+ }
2408
+ ]
2409
+ },
2410
+ {
2411
+ "$type": "CharacterRange",
2412
+ "left": {
2413
+ "$type": "Keyword",
2414
+ "value": "*"
2415
+ }
2416
+ }
2417
+ ]
2418
+ },
2419
+ {
2420
+ "$type": "CharacterRange",
2421
+ "left": {
2422
+ "$type": "Keyword",
2423
+ "value": "~"
2424
+ }
2425
+ }
2426
+ ]
2427
+ },
2428
+ "fragment": false,
2429
+ "hidden": false
2430
+ }
2431
+ ],
2432
+ "definesHiddenTokens": false,
2433
+ "hiddenTokens": [],
2434
+ "imports": [],
2435
+ "interfaces": [],
2436
+ "types": [],
2437
+ "usedGrammars": []
2438
+ }`));