
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: §wip/atl/IMSTransactionMessage/extracted
Source used for this grammar: Hugo Brunelière, IMSTransactionMessage 1.0, IMSTransactionMessage.ecore, 2005/08/11
Integer, String, Boolean, OIMAPrefixFormats, TwoByteField, VariableLengthField, IMSTransactionMessage, OIMAPrefix, ControlData, StateData, SecurityData, UserData, StandardFields, ApplicationData, Field, TDLangElement), 0 root (—), 3 top (Integer, String, IMSTransactionMessage), 0 bottom (—).[opp_one], [opp_two], [OIMAPrefixFormat], [standardFieldsFlag], [OIMAPrefixComponent], [standardFieldComponent], [messageComponent], [controlDataComponent], [stateDataComponent], [securityDataComponent], [userDataComponent], [length], [reservedField], [transactionCode], [languageElements], [fieldComponents], [fieldContainer].Integer ::= integer
String ::= string
Boolean ::= "true" "false"
OIMAPrefixFormats ::= [opp_one]::ε [opp_two]::ε
TwoByteField ::= ε
VariableLengthField ::= ε
IMSTransactionMessage ::= [OIMAPrefixFormat]::OIMAPrefixFormats [standardFieldsFlag]::Boolean [OIMAPrefixComponent]::OIMAPrefix [standardFieldComponent]::StandardFields [messageComponent]::ApplicationData
OIMAPrefix ::= [controlDataComponent]::ControlData [stateDataComponent]::StateData [securityDataComponent]::SecurityData [userDataComponent]::UserData
ControlData ::= ε
StateData ::= ε
SecurityData ::= ε
UserData ::= ε
StandardFields ::= [length]::TwoByteField [reservedField]::TwoByteField [transactionCode]::VariableLengthField
ApplicationData ::= [languageElements]::TDLangElement [fieldComponents]::Field
Field ::= [fieldContainer]::ApplicationData
TDLangElement ::= ε