Summary
When creating a business event service, MESSAGE attribute names that happen to be MDL reserved keywords are rejected by the parser, even though they are valid domain concepts.
Reproduction
CREATE BUSINESS EVENT SERVICE MyModule.Events
(ServiceName: 'Svc', EventNamePrefix: 'com.test')
{
MESSAGE OrderCreated (Date: DateTime, Amount: Decimal) PUBLISH ENTITY MyModule.Order;
};
Error: Parse error: mismatched input 'Date' expecting IDENTIFIER
Affected keywords (tested)
Date, Created, Amount, Timestamp — all common attribute names rejected as reserved.
Expected behavior
The parser should allow identifierOrKeyword (not just IDENTIFIER) in MESSAGE attribute name position, or business event attribute names should use a separate lexer mode.
Workaround
Use non-keyword names: EventDate, TotalAmount, CreatedAt.
Version
mxcli v0.7.0-368-g5a109a0e
Summary
When creating a business event service, MESSAGE attribute names that happen to be MDL reserved keywords are rejected by the parser, even though they are valid domain concepts.
Reproduction
Error:
Parse error: mismatched input 'Date' expecting IDENTIFIERAffected keywords (tested)
Date,Created,Amount,Timestamp— all common attribute names rejected as reserved.Expected behavior
The parser should allow
identifierOrKeyword(not justIDENTIFIER) in MESSAGE attribute name position, or business event attribute names should use a separate lexer mode.Workaround
Use non-keyword names:
EventDate,TotalAmount,CreatedAt.Version
mxcli v0.7.0-368-g5a109a0e