@oml/language 0.18.1 → 0.19.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.
@@ -19,10 +19,10 @@ export declare const OmlTerminals: {
19
19
  ID: RegExp;
20
20
  };
21
21
  export type OmlTerminalNames = keyof typeof OmlTerminals;
22
- export type OmlKeywordNames = "$" | "&" | "(" | ")" | "," | "->" | ":" | "<" | "=" | "@" | "[" | "]" | "^^" | "all" | "annotation" | "as" | "aspect" | "asymmetric" | "builtIn" | "builtin" | "bundle" | "concept" | "description" | "differentFrom" | "domain" | "entity" | "exactly" | "extends" | "forward" | "from" | "functional" | "includes" | "instance" | "inverse" | "irreflexive" | "key" | "language" | "length" | "max" | "maxExclusive" | "maxInclusive" | "maxLength" | "min" | "minExclusive" | "minInclusive" | "minLength" | "oneOf" | "pattern" | "property" | "range" | "ref" | "reflexive" | "relation" | "restricts" | "reverse" | "rule" | "sameAs" | "scalar" | "self" | "some" | "symmetric" | "to" | "transitive" | "uses" | "vocabulary" | "{" | "}";
22
+ export type OmlKeywordNames = "$" | "&" | "(" | ")" | "," | "->" | ":" | "<" | "=" | "@" | "[" | "]" | "^^" | "all" | "annotation" | "as" | "aspect" | "asymmetric" | "builtIn" | "builtin" | "bundle" | "concept" | "description" | "differentFrom" | "dimension" | "domain" | "entity" | "exactly" | "extends" | "forward" | "from" | "functional" | "includes" | "instance" | "inverse" | "irreflexive" | "key" | "language" | "length" | "max" | "maxExclusive" | "maxInclusive" | "maxLength" | "measures" | "min" | "minExclusive" | "minInclusive" | "minLength" | "multiplier" | "oneOf" | "pattern" | "property" | "quantity" | "range" | "ref" | "reflexive" | "relation" | "restricts" | "reverse" | "rule" | "sameAs" | "scalar" | "self" | "some" | "symbol" | "symmetric" | "to" | "transitive" | "unit" | "uses" | "vocabulary" | "{" | "}";
23
23
  export type OmlTokenNames = OmlTerminalNames | OmlKeywordNames;
24
24
  export interface Annotation extends langium.AstNode {
25
- readonly $container: AnnotationProperty | Aspect | BuiltIn | Concept | ConceptInstance | Description | DescriptionBundle | ForwardRelation | RelationEntity | RelationInstance | ReverseRelation | Rule | Scalar | ScalarProperty | UnreifiedRelation | Vocabulary | VocabularyBundle;
25
+ readonly $container: AnnotationProperty | Aspect | BuiltIn | Concept | ConceptInstance | Description | DescriptionBundle | ForwardRelation | Quantity | QuantityProperty | RelationEntity | RelationInstance | ReverseRelation | Rule | Scalar | ScalarProperty | Unit | UnreifiedRelation | Vocabulary | VocabularyBundle;
26
26
  readonly $type: 'Annotation';
27
27
  literalValues: Array<Literal>;
28
28
  property: langium.Reference<AnnotationProperty>;
@@ -222,10 +222,12 @@ export declare function isDecimal(item: unknown): item is Decimal;
222
222
  export interface DecimalLiteral extends langium.AstNode {
223
223
  readonly $container: Annotation | Argument | LiteralEnumerationAxiom | PropertyValueAssertion | PropertyValueRestrictionAxiom | ScalarEquivalenceAxiom;
224
224
  readonly $type: 'DecimalLiteral';
225
+ unit?: langium.Reference<Unit>;
225
226
  value: Decimal;
226
227
  }
227
228
  export declare const DecimalLiteral: {
228
229
  readonly $type: "DecimalLiteral";
230
+ readonly unit: "unit";
229
231
  readonly value: "value";
230
232
  };
231
233
  export declare function isDecimalLiteral(item: unknown): item is DecimalLiteral;
@@ -293,10 +295,12 @@ export declare function isDouble(item: unknown): item is Double;
293
295
  export interface DoubleLiteral extends langium.AstNode {
294
296
  readonly $container: Annotation | Argument | LiteralEnumerationAxiom | PropertyValueAssertion | PropertyValueRestrictionAxiom | ScalarEquivalenceAxiom;
295
297
  readonly $type: 'DoubleLiteral';
298
+ unit?: langium.Reference<Unit>;
296
299
  value: Double;
297
300
  }
298
301
  export declare const DoubleLiteral: {
299
302
  readonly $type: "DoubleLiteral";
303
+ readonly unit: "unit";
300
304
  readonly value: "value";
301
305
  };
302
306
  export declare function isDoubleLiteral(item: unknown): item is DoubleLiteral;
@@ -380,10 +384,12 @@ export declare function isInteger(item: unknown): item is Integer;
380
384
  export interface IntegerLiteral extends langium.AstNode {
381
385
  readonly $container: Annotation | Argument | LiteralEnumerationAxiom | PropertyValueAssertion | PropertyValueRestrictionAxiom | ScalarEquivalenceAxiom;
382
386
  readonly $type: 'IntegerLiteral';
387
+ unit?: langium.Reference<Unit>;
383
388
  value: Integer;
384
389
  }
385
390
  export declare const IntegerLiteral: {
386
391
  readonly $type: "IntegerLiteral";
392
+ readonly unit: "unit";
387
393
  readonly value: "value";
388
394
  };
389
395
  export declare function isIntegerLiteral(item: unknown): item is IntegerLiteral;
@@ -454,7 +460,7 @@ export declare const PropertyCardinalityRestrictionAxiom: {
454
460
  };
455
461
  export declare function isPropertyCardinalityRestrictionAxiom(item: unknown): item is PropertyCardinalityRestrictionAxiom;
456
462
  export interface PropertyEquivalenceAxiom extends langium.AstNode {
457
- readonly $container: AnnotationProperty | ScalarProperty | UnreifiedRelation;
463
+ readonly $container: AnnotationProperty | QuantityProperty | ScalarProperty | UnreifiedRelation;
458
464
  readonly $type: 'PropertyEquivalenceAxiom';
459
465
  superTerms: Array<langium.Reference<Property>>;
460
466
  }
@@ -538,6 +544,46 @@ export declare const PropertyValueRestrictionAxiom: {
538
544
  readonly referencedValue: "referencedValue";
539
545
  };
540
546
  export declare function isPropertyValueRestrictionAxiom(item: unknown): item is PropertyValueRestrictionAxiom;
547
+ export interface Quantity extends langium.AstNode {
548
+ readonly $container: Vocabulary;
549
+ readonly $type: 'Quantity';
550
+ dimension?: string;
551
+ name?: string;
552
+ ownedAnnotations: Array<Annotation>;
553
+ ref?: langium.Reference<Quantity>;
554
+ }
555
+ export declare const Quantity: {
556
+ readonly $type: "Quantity";
557
+ readonly dimension: "dimension";
558
+ readonly name: "name";
559
+ readonly ownedAnnotations: "ownedAnnotations";
560
+ readonly ref: "ref";
561
+ };
562
+ export declare function isQuantity(item: unknown): item is Quantity;
563
+ export interface QuantityProperty extends langium.AstNode {
564
+ readonly $container: Vocabulary;
565
+ readonly $type: 'QuantityProperty';
566
+ domains: Array<langium.Reference<Entity>>;
567
+ functional: boolean;
568
+ kind: Array<langium.Reference<Quantity>>;
569
+ name?: string;
570
+ ownedAnnotations: Array<Annotation>;
571
+ ownedEquivalences: Array<PropertyEquivalenceAxiom>;
572
+ ownedSpecializations: Array<SpecializationAxiom>;
573
+ ref?: langium.Reference<QuantityProperty>;
574
+ }
575
+ export declare const QuantityProperty: {
576
+ readonly $type: "QuantityProperty";
577
+ readonly domains: "domains";
578
+ readonly functional: "functional";
579
+ readonly kind: "kind";
580
+ readonly name: "name";
581
+ readonly ownedAnnotations: "ownedAnnotations";
582
+ readonly ownedEquivalences: "ownedEquivalences";
583
+ readonly ownedSpecializations: "ownedSpecializations";
584
+ readonly ref: "ref";
585
+ };
586
+ export declare function isQuantityProperty(item: unknown): item is QuantityProperty;
541
587
  export interface QuotedLiteral extends langium.AstNode {
542
588
  readonly $container: Annotation | Argument | LiteralEnumerationAxiom | PropertyValueAssertion | PropertyValueRestrictionAxiom | ScalarEquivalenceAxiom;
543
589
  readonly $type: 'QuotedLiteral';
@@ -762,12 +808,12 @@ export declare const ScalarProperty: {
762
808
  readonly ref: "ref";
763
809
  };
764
810
  export declare function isScalarProperty(item: unknown): item is ScalarProperty;
765
- export type SemanticProperty = Relation | ScalarProperty;
811
+ export type SemanticProperty = QuantityProperty | Relation | ScalarProperty;
766
812
  export declare const SemanticProperty: {
767
813
  readonly $type: "SemanticProperty";
768
814
  };
769
815
  export declare function isSemanticProperty(item: unknown): item is SemanticProperty;
770
- export type SpecializableProperty = AnnotationProperty | ScalarProperty | UnreifiedRelation;
816
+ export type SpecializableProperty = AnnotationProperty | QuantityProperty | ScalarProperty | UnreifiedRelation;
771
817
  export declare const SpecializableProperty: {
772
818
  readonly $type: "SpecializableProperty";
773
819
  };
@@ -778,7 +824,7 @@ export declare const SpecializableTerm: {
778
824
  };
779
825
  export declare function isSpecializableTerm(item: unknown): item is SpecializableTerm;
780
826
  export interface SpecializationAxiom extends langium.AstNode {
781
- readonly $container: AnnotationProperty | Aspect | Concept | RelationEntity | Scalar | ScalarProperty | UnreifiedRelation;
827
+ readonly $container: AnnotationProperty | Aspect | Concept | QuantityProperty | RelationEntity | Scalar | ScalarProperty | UnreifiedRelation;
782
828
  readonly $type: 'SpecializationAxiom';
783
829
  superTerm: langium.Reference<Term>;
784
830
  }
@@ -792,7 +838,7 @@ export declare const Statement: {
792
838
  readonly $type: "Statement";
793
839
  };
794
840
  export declare function isStatement(item: unknown): item is Statement;
795
- export type Term = Property | RelationBase | SpecializableTerm;
841
+ export type Term = Property | Quantity | RelationBase | SpecializableTerm | Unit;
796
842
  export declare const Term: {
797
843
  readonly $type: "Term";
798
844
  };
@@ -829,6 +875,26 @@ export declare const UnaryPredicate: {
829
875
  readonly $type: "UnaryPredicate";
830
876
  };
831
877
  export declare function isUnaryPredicate(item: unknown): item is UnaryPredicate;
878
+ export interface Unit extends langium.AstNode {
879
+ readonly $container: Vocabulary;
880
+ readonly $type: 'Unit';
881
+ kinds: Array<langium.Reference<Quantity>>;
882
+ multiplier: Array<Decimal>;
883
+ name?: string;
884
+ ownedAnnotations: Array<Annotation>;
885
+ ref?: langium.Reference<Unit>;
886
+ symbol: Array<string>;
887
+ }
888
+ export declare const Unit: {
889
+ readonly $type: "Unit";
890
+ readonly kinds: "kinds";
891
+ readonly multiplier: "multiplier";
892
+ readonly name: "name";
893
+ readonly ownedAnnotations: "ownedAnnotations";
894
+ readonly ref: "ref";
895
+ readonly symbol: "symbol";
896
+ };
897
+ export declare function isUnit(item: unknown): item is Unit;
832
898
  export interface UnreifiedRelation extends langium.AstNode {
833
899
  readonly $container: Vocabulary;
834
900
  readonly $type: 'UnreifiedRelation';
@@ -911,7 +977,7 @@ export declare const VocabularyMember: {
911
977
  readonly $type: "VocabularyMember";
912
978
  };
913
979
  export declare function isVocabularyMember(item: unknown): item is VocabularyMember;
914
- export type VocabularyStatement = BuiltIn | Rule | SpecializableTerm;
980
+ export type VocabularyStatement = BuiltIn | Quantity | Rule | SpecializableTerm | Unit;
915
981
  export declare const VocabularyStatement: {
916
982
  readonly $type: "VocabularyStatement";
917
983
  };
@@ -966,6 +1032,8 @@ export type OmlAstType = {
966
1032
  PropertySelfRestrictionAxiom: PropertySelfRestrictionAxiom;
967
1033
  PropertyValueAssertion: PropertyValueAssertion;
968
1034
  PropertyValueRestrictionAxiom: PropertyValueRestrictionAxiom;
1035
+ Quantity: Quantity;
1036
+ QuantityProperty: QuantityProperty;
969
1037
  QuotedLiteral: QuotedLiteral;
970
1038
  Relation: Relation;
971
1039
  RelationBase: RelationBase;
@@ -988,6 +1056,7 @@ export type OmlAstType = {
988
1056
  TypeAssertion: TypeAssertion;
989
1057
  TypePredicate: TypePredicate;
990
1058
  UnaryPredicate: UnaryPredicate;
1059
+ Unit: Unit;
991
1060
  UnreifiedRelation: UnreifiedRelation;
992
1061
  Vocabulary: Vocabulary;
993
1062
  VocabularyBox: VocabularyBox;
@@ -1242,6 +1311,10 @@ export declare class OmlAstReflection extends langium.AbstractAstReflection {
1242
1311
  readonly DecimalLiteral: {
1243
1312
  readonly name: "DecimalLiteral";
1244
1313
  readonly properties: {
1314
+ readonly unit: {
1315
+ readonly name: "unit";
1316
+ readonly referenceType: "Unit";
1317
+ };
1245
1318
  readonly value: {
1246
1319
  readonly name: "value";
1247
1320
  };
@@ -1322,6 +1395,10 @@ export declare class OmlAstReflection extends langium.AbstractAstReflection {
1322
1395
  readonly DoubleLiteral: {
1323
1396
  readonly name: "DoubleLiteral";
1324
1397
  readonly properties: {
1398
+ readonly unit: {
1399
+ readonly name: "unit";
1400
+ readonly referenceType: "Unit";
1401
+ };
1325
1402
  readonly value: {
1326
1403
  readonly name: "value";
1327
1404
  };
@@ -1411,6 +1488,10 @@ export declare class OmlAstReflection extends langium.AbstractAstReflection {
1411
1488
  readonly IntegerLiteral: {
1412
1489
  readonly name: "IntegerLiteral";
1413
1490
  readonly properties: {
1491
+ readonly unit: {
1492
+ readonly name: "unit";
1493
+ readonly referenceType: "Unit";
1494
+ };
1414
1495
  readonly value: {
1415
1496
  readonly name: "value";
1416
1497
  };
@@ -1590,6 +1671,65 @@ export declare class OmlAstReflection extends langium.AbstractAstReflection {
1590
1671
  };
1591
1672
  readonly superTypes: ["PropertyRestrictionAxiom"];
1592
1673
  };
1674
+ readonly Quantity: {
1675
+ readonly name: "Quantity";
1676
+ readonly properties: {
1677
+ readonly dimension: {
1678
+ readonly name: "dimension";
1679
+ };
1680
+ readonly name: {
1681
+ readonly name: "name";
1682
+ };
1683
+ readonly ownedAnnotations: {
1684
+ readonly name: "ownedAnnotations";
1685
+ readonly defaultValue: [];
1686
+ };
1687
+ readonly ref: {
1688
+ readonly name: "ref";
1689
+ readonly referenceType: "Quantity";
1690
+ };
1691
+ };
1692
+ readonly superTypes: ["Term", "VocabularyStatement"];
1693
+ };
1694
+ readonly QuantityProperty: {
1695
+ readonly name: "QuantityProperty";
1696
+ readonly properties: {
1697
+ readonly domains: {
1698
+ readonly name: "domains";
1699
+ readonly defaultValue: [];
1700
+ readonly referenceType: "Entity";
1701
+ };
1702
+ readonly functional: {
1703
+ readonly name: "functional";
1704
+ readonly defaultValue: false;
1705
+ };
1706
+ readonly kind: {
1707
+ readonly name: "kind";
1708
+ readonly defaultValue: [];
1709
+ readonly referenceType: "Quantity";
1710
+ };
1711
+ readonly name: {
1712
+ readonly name: "name";
1713
+ };
1714
+ readonly ownedAnnotations: {
1715
+ readonly name: "ownedAnnotations";
1716
+ readonly defaultValue: [];
1717
+ };
1718
+ readonly ownedEquivalences: {
1719
+ readonly name: "ownedEquivalences";
1720
+ readonly defaultValue: [];
1721
+ };
1722
+ readonly ownedSpecializations: {
1723
+ readonly name: "ownedSpecializations";
1724
+ readonly defaultValue: [];
1725
+ };
1726
+ readonly ref: {
1727
+ readonly name: "ref";
1728
+ readonly referenceType: "QuantityProperty";
1729
+ };
1730
+ };
1731
+ readonly superTypes: ["SemanticProperty", "SpecializableProperty"];
1732
+ };
1593
1733
  readonly QuotedLiteral: {
1594
1734
  readonly name: "QuotedLiteral";
1595
1735
  readonly properties: {
@@ -1979,6 +2119,36 @@ export declare class OmlAstReflection extends langium.AbstractAstReflection {
1979
2119
  readonly properties: {};
1980
2120
  readonly superTypes: ["Predicate"];
1981
2121
  };
2122
+ readonly Unit: {
2123
+ readonly name: "Unit";
2124
+ readonly properties: {
2125
+ readonly kinds: {
2126
+ readonly name: "kinds";
2127
+ readonly defaultValue: [];
2128
+ readonly referenceType: "Quantity";
2129
+ };
2130
+ readonly multiplier: {
2131
+ readonly name: "multiplier";
2132
+ readonly defaultValue: [];
2133
+ };
2134
+ readonly name: {
2135
+ readonly name: "name";
2136
+ };
2137
+ readonly ownedAnnotations: {
2138
+ readonly name: "ownedAnnotations";
2139
+ readonly defaultValue: [];
2140
+ };
2141
+ readonly ref: {
2142
+ readonly name: "ref";
2143
+ readonly referenceType: "Unit";
2144
+ };
2145
+ readonly symbol: {
2146
+ readonly name: "symbol";
2147
+ readonly defaultValue: [];
2148
+ };
2149
+ };
2150
+ readonly superTypes: ["Term", "VocabularyStatement"];
2151
+ };
1982
2152
  readonly UnreifiedRelation: {
1983
2153
  readonly name: "UnreifiedRelation";
1984
2154
  readonly properties: {
@@ -164,6 +164,7 @@ export function isDecimal(item) {
164
164
  }
165
165
  export const DecimalLiteral = {
166
166
  $type: 'DecimalLiteral',
167
+ unit: 'unit',
167
168
  value: 'value'
168
169
  };
169
170
  export function isDecimalLiteral(item) {
@@ -221,6 +222,7 @@ export function isDouble(item) {
221
222
  }
222
223
  export const DoubleLiteral = {
223
224
  $type: 'DoubleLiteral',
225
+ unit: 'unit',
224
226
  value: 'value'
225
227
  };
226
228
  export function isDoubleLiteral(item) {
@@ -296,6 +298,7 @@ export function isInteger(item) {
296
298
  }
297
299
  export const IntegerLiteral = {
298
300
  $type: 'IntegerLiteral',
301
+ unit: 'unit',
299
302
  value: 'value'
300
303
  };
301
304
  export function isIntegerLiteral(item) {
@@ -419,6 +422,30 @@ export const PropertyValueRestrictionAxiom = {
419
422
  export function isPropertyValueRestrictionAxiom(item) {
420
423
  return reflection.isInstance(item, PropertyValueRestrictionAxiom.$type);
421
424
  }
425
+ export const Quantity = {
426
+ $type: 'Quantity',
427
+ dimension: 'dimension',
428
+ name: 'name',
429
+ ownedAnnotations: 'ownedAnnotations',
430
+ ref: 'ref'
431
+ };
432
+ export function isQuantity(item) {
433
+ return reflection.isInstance(item, Quantity.$type);
434
+ }
435
+ export const QuantityProperty = {
436
+ $type: 'QuantityProperty',
437
+ domains: 'domains',
438
+ functional: 'functional',
439
+ kind: 'kind',
440
+ name: 'name',
441
+ ownedAnnotations: 'ownedAnnotations',
442
+ ownedEquivalences: 'ownedEquivalences',
443
+ ownedSpecializations: 'ownedSpecializations',
444
+ ref: 'ref'
445
+ };
446
+ export function isQuantityProperty(item) {
447
+ return reflection.isInstance(item, QuantityProperty.$type);
448
+ }
422
449
  export const QuotedLiteral = {
423
450
  $type: 'QuotedLiteral',
424
451
  langTag: 'langTag',
@@ -626,6 +653,18 @@ export const UnaryPredicate = {
626
653
  export function isUnaryPredicate(item) {
627
654
  return reflection.isInstance(item, UnaryPredicate.$type);
628
655
  }
656
+ export const Unit = {
657
+ $type: 'Unit',
658
+ kinds: 'kinds',
659
+ multiplier: 'multiplier',
660
+ name: 'name',
661
+ ownedAnnotations: 'ownedAnnotations',
662
+ ref: 'ref',
663
+ symbol: 'symbol'
664
+ };
665
+ export function isUnit(item) {
666
+ return reflection.isInstance(item, Unit.$type);
667
+ }
629
668
  export const UnreifiedRelation = {
630
669
  $type: 'UnreifiedRelation',
631
670
  asymmetric: 'asymmetric',
@@ -938,6 +977,10 @@ export class OmlAstReflection extends langium.AbstractAstReflection {
938
977
  DecimalLiteral: {
939
978
  name: DecimalLiteral.$type,
940
979
  properties: {
980
+ unit: {
981
+ name: DecimalLiteral.unit,
982
+ referenceType: Unit.$type
983
+ },
941
984
  value: {
942
985
  name: DecimalLiteral.value
943
986
  }
@@ -1018,6 +1061,10 @@ export class OmlAstReflection extends langium.AbstractAstReflection {
1018
1061
  DoubleLiteral: {
1019
1062
  name: DoubleLiteral.$type,
1020
1063
  properties: {
1064
+ unit: {
1065
+ name: DoubleLiteral.unit,
1066
+ referenceType: Unit.$type
1067
+ },
1021
1068
  value: {
1022
1069
  name: DoubleLiteral.value
1023
1070
  }
@@ -1107,6 +1154,10 @@ export class OmlAstReflection extends langium.AbstractAstReflection {
1107
1154
  IntegerLiteral: {
1108
1155
  name: IntegerLiteral.$type,
1109
1156
  properties: {
1157
+ unit: {
1158
+ name: IntegerLiteral.unit,
1159
+ referenceType: Unit.$type
1160
+ },
1110
1161
  value: {
1111
1162
  name: IntegerLiteral.value
1112
1163
  }
@@ -1286,6 +1337,65 @@ export class OmlAstReflection extends langium.AbstractAstReflection {
1286
1337
  },
1287
1338
  superTypes: [PropertyRestrictionAxiom.$type]
1288
1339
  },
1340
+ Quantity: {
1341
+ name: Quantity.$type,
1342
+ properties: {
1343
+ dimension: {
1344
+ name: Quantity.dimension
1345
+ },
1346
+ name: {
1347
+ name: Quantity.name
1348
+ },
1349
+ ownedAnnotations: {
1350
+ name: Quantity.ownedAnnotations,
1351
+ defaultValue: []
1352
+ },
1353
+ ref: {
1354
+ name: Quantity.ref,
1355
+ referenceType: Quantity.$type
1356
+ }
1357
+ },
1358
+ superTypes: [Term.$type, VocabularyStatement.$type]
1359
+ },
1360
+ QuantityProperty: {
1361
+ name: QuantityProperty.$type,
1362
+ properties: {
1363
+ domains: {
1364
+ name: QuantityProperty.domains,
1365
+ defaultValue: [],
1366
+ referenceType: Entity.$type
1367
+ },
1368
+ functional: {
1369
+ name: QuantityProperty.functional,
1370
+ defaultValue: false
1371
+ },
1372
+ kind: {
1373
+ name: QuantityProperty.kind,
1374
+ defaultValue: [],
1375
+ referenceType: Quantity.$type
1376
+ },
1377
+ name: {
1378
+ name: QuantityProperty.name
1379
+ },
1380
+ ownedAnnotations: {
1381
+ name: QuantityProperty.ownedAnnotations,
1382
+ defaultValue: []
1383
+ },
1384
+ ownedEquivalences: {
1385
+ name: QuantityProperty.ownedEquivalences,
1386
+ defaultValue: []
1387
+ },
1388
+ ownedSpecializations: {
1389
+ name: QuantityProperty.ownedSpecializations,
1390
+ defaultValue: []
1391
+ },
1392
+ ref: {
1393
+ name: QuantityProperty.ref,
1394
+ referenceType: QuantityProperty.$type
1395
+ }
1396
+ },
1397
+ superTypes: [SemanticProperty.$type, SpecializableProperty.$type]
1398
+ },
1289
1399
  QuotedLiteral: {
1290
1400
  name: QuotedLiteral.$type,
1291
1401
  properties: {
@@ -1675,6 +1785,36 @@ export class OmlAstReflection extends langium.AbstractAstReflection {
1675
1785
  properties: {},
1676
1786
  superTypes: [Predicate.$type]
1677
1787
  },
1788
+ Unit: {
1789
+ name: Unit.$type,
1790
+ properties: {
1791
+ kinds: {
1792
+ name: Unit.kinds,
1793
+ defaultValue: [],
1794
+ referenceType: Quantity.$type
1795
+ },
1796
+ multiplier: {
1797
+ name: Unit.multiplier,
1798
+ defaultValue: []
1799
+ },
1800
+ name: {
1801
+ name: Unit.name
1802
+ },
1803
+ ownedAnnotations: {
1804
+ name: Unit.ownedAnnotations,
1805
+ defaultValue: []
1806
+ },
1807
+ ref: {
1808
+ name: Unit.ref,
1809
+ referenceType: Unit.$type
1810
+ },
1811
+ symbol: {
1812
+ name: Unit.symbol,
1813
+ defaultValue: []
1814
+ }
1815
+ },
1816
+ superTypes: [Term.$type, VocabularyStatement.$type]
1817
+ },
1678
1818
  UnreifiedRelation: {
1679
1819
  name: UnreifiedRelation.$type,
1680
1820
  properties: {