fixed optionality by metamodel