diff --git a/infra/axiom/src/main/antlr4/com/evolveum/axiom/lang/antlr/Axiom.g4 b/infra/axiom/src/main/antlr4/com/evolveum/axiom/lang/antlr/Axiom.g4 index b50fe944778..e51d226a48d 100644 --- a/infra/axiom/src/main/antlr4/com/evolveum/axiom/lang/antlr/Axiom.g4 +++ b/infra/axiom/src/main/antlr4/com/evolveum/axiom/lang/antlr/Axiom.g4 @@ -25,8 +25,9 @@ itemName: infraName | dataName; dataName: prefixedName; infraName: '@' prefixedName; -item: SEP* itemName SEP* itemValue; -itemValue: (argument)? SEP* (SEMICOLON | LEFT_BRACE SEP* (item)* SEP* RIGHT_BRACE SEP*) SEP*; +file: SEP* item SEP* EOF; +item: itemName itemValue; +itemValue: (SEP+ argument)? SEP* (SEMICOLON | LEFT_BRACE SEP* (item SEP*)* RIGHT_BRACE); prefixedName : (prefix COLON)? localName; diff --git a/infra/axiom/src/main/java/com/evolveum/axiom/lang/antlr/AxiomAntlrStatementSource.java b/infra/axiom/src/main/java/com/evolveum/axiom/lang/antlr/AxiomAntlrStatementSource.java index b46c717a57e..f79465ddad8 100644 --- a/infra/axiom/src/main/java/com/evolveum/axiom/lang/antlr/AxiomAntlrStatementSource.java +++ b/infra/axiom/src/main/java/com/evolveum/axiom/lang/antlr/AxiomAntlrStatementSource.java @@ -36,7 +36,7 @@ public static ItemContext contextFrom(String sourceName, CharStream stream) { parser.removeErrorListeners(); AxiomErrorListener errorListener = new AxiomErrorListener(sourceName); parser.addErrorListener(errorListener); - ItemContext statement = parser.item(); + ItemContext statement = parser.file().item(); errorListener.validate(); return statement; }