@@ -73,24 +73,41 @@ abstract concept Declaration {
7373 o Range location optional
7474}
7575
76+ abstract concept MapKeyType {
77+ o Decorator[] decorators optional
78+ o Range location optional
79+ }
80+
81+ abstract concept MapValueType {
82+ o Decorator[] decorators optional
83+ o Range location optional
84+ }
85+
7686concept MapDeclaration extends Declaration {
7787 o MapKeyType key
78- o AggregateValueType value
88+ o MapValueType value
7989}
8090
81- concept MapKeyType {
91+ concept StringMapKeyType extends MapKeyType {}
92+ concept DateTimeMapKeyType extends MapKeyType {}
93+
94+ concept ObjectMapKeyType extends MapKeyType {
8295 o TypeIdentifier type
83- o Decorator[] decorators optional
84- o Range location optional
8596}
8697
87- concept AggregateValueType {
98+ concept BooleanMapValueType extends MapValueType {}
99+ concept DateTimeMapValueType extends MapValueType {}
100+ concept StringMapValueType extends MapValueType {}
101+ concept IntegerMapValueType extends MapValueType {}
102+ concept LongMapValueType extends MapValueType {}
103+ concept DoubleMapValueType extends MapValueType {}
104+
105+ concept ObjectMapValueType extends MapValueType {
88106 o TypeIdentifier type
89- o Decorator[] decorators optional
90- o Range location optional
91107}
92108
93- concept AggregateRelationshipValueType extends AggregateValueType {
109+ concept RelationshipMapValueType extends MapValueType {
110+ o TypeIdentifier type
94111}
95112
96113concept EnumDeclaration extends Declaration {
@@ -192,6 +209,10 @@ concept LongDomainValidator {
192209 o Long upper optional
193210}
194211
212+ concept AliasedType{
213+ o String name
214+ o String aliasedName
215+ }
195216abstract concept Import {
196217 o String namespace
197218 o String uri optional
@@ -206,6 +227,7 @@ concept ImportType extends Import {
206227
207228concept ImportTypes extends Import {
208229 o String[] types
230+ o AliasedType[] aliasedTypes optional
209231}
210232
211233concept Model {
@@ -225,7 +247,7 @@ abstract concept ScalarDeclaration extends Declaration {
225247}
226248
227249concept BooleanScalar extends ScalarDeclaration {
228- o Boolean defaultValue
250+ o Boolean defaultValue optional
229251}
230252
231253concept IntegerScalar extends ScalarDeclaration {
0 commit comments