Inconcistent Attribute multiplicity in the metamodel and grammar
It is unclear if and how the Asset can handle Attributes with a multiplicity
the metamodel and the syntax allow it in the AssetType definition ex:
abstract AssetType ConceptA extends (Any) {
reference conceptBs : ConceptB [*]
attribute myAttribute : String
attribute attr2 : newEnumDataType [*] default [newEnumDataType::LIT1,newEnumDataType::LIT2]
attribute attr3 : Integer default 0
attribute attr4 : newEnumDataType default newEnumDataType::LIT1
attribute attr5 : Boolean
}
but there is no clear syntax for it in the Asset model should we simply allow multiple entries ?
such as
Asset B1 : ConceptB {
attribute myAttribute := "gggf"
attribute attr2 := newEnumDataType::LIT1
attribute attr2 := newEnumDataType::LIT2
attribute attr3 := 12
attribute attr4 := newEnumDataType::LIT1
attribute attr5 := true
attribute attr5 := false // incorrect only one allowed !
}
or introduce a notion of collection in the Asset diagram ?
such as
Asset B1 : ConceptB {
attribute myAttribute := "gggf"
attribute attr2 := [newEnumDataType::LIT1,newEnumDataType::LIT2]
attribute attr3 := 12
attribute attr4 := newEnumDataType::LIT1
attribute attr5 := true
attribute attr5 := false // incorrect only one allowed !
Additionally, a control should be done about the number of time we can add a given attribute in an Asset ...