The terminal String0 just returns the Xtext terminal ID. The first issue with this is, that you can just return ID instead of the unneeded String0.
However, the main issue is that String0 is derived from String attributes in the metamodel, but String0 is not capable of representing Strings. Examples are:
The attribute cardinality of Feature or FeatureGroup: One cannot specify 1 for the cardinality.
The attributes text and uri of FunctionClientServerInterface: One cannot specify texts with whitespaces or actual URIs.
The types of such attributes have to be set to EString in order to allow arbitrary Strings.
Summarizing, the ToDo's are:
Go through all attributes that have the type String0.
If the attribute should indeed represent an ID, change its type from String0 to ID.
If the attribute should allow arbitrary text (see examples above), change its type from String0 to EString.
The terminal
String0
just returns the Xtext terminalID
. The first issue with this is, that you can just returnID
instead of the unneededString0
.However, the main issue is that
String0
is derived fromString
attributes in the metamodel, butString0
is not capable of representing Strings. Examples are:cardinality
ofFeature
orFeatureGroup
: One cannot specify1
for thecardinality
.text
anduri
ofFunctionClientServerInterface
: One cannot specify texts with whitespaces or actual URIs.The types of such attributes have to be set to
EString
in order to allow arbitrary Strings.Summarizing, the ToDo's are:
String0
.ID
, change its type fromString0
toID
.String0
toEString
.