SITE gammar rules of SDL'92/ASN.1 parser

/************************************************************
*   *** Copyright (c) Humboldt University of Berlin, Germany,
*   *** Department of Computer Science.
*   *** All rights reserved.
*
*  Official syntax rules of the SITE component 'sdl-parser'
*  without error stabilization and semantical actions
*
************************************************************/

Jump to startsymbol (sdl_specification)
typereference : TYPEREFERENCE ; left_typereference : LEFTTYPEREFERENCE ; valident : VALIDENT ; ASN1ModuleDefinition : typereference ObjectIdentifierValue DEFINITIONS TagDefault ASSIGN MODBEGIN Exports Imports opt_AssignmentList END | typereference DEFINITIONS TagDefault ASSIGN MODBEGIN Exports Imports opt_AssignmentList END ; TagDefault : /* empty */ | EXPLICIT TAGS | IMPLICIT TAGS ; AssignedIdentifier : /* empty */ | ObjectIdentifierValue ; Exports : /* empty */ | EXPORTS SymbolList ';' | EXPORTS ';' ; Imports : /* empty */ | IMPORTS SymbolsImported ';' ; SymbolsImported : /* empty */ | SymbolsImported SymbolsFromModule ; SymbolsFromModule : SymbolList FROM typereference AssignedIdentifier ; SymbolList : Symbol | SymbolList ',' Symbol ; Symbol : typereference | valident | OPERATION ; AssignmentList : Assignment | AssignmentList Assignment ; opt_AssignmentList : /* empty */ | AssignmentList ; Assignment : Typeassignment _Opt_Colon | Valueassignment _Opt_Colon | MacroDefinition _Opt_Colon ; _Opt_Colon : /* empty */ | ';' ; Typeassignment : left_typereference ASSIGN Type | typereference ASSIGN Type ; Type : ASNType | MacroType ; MacroType : OperationType | ErrorType ; ASNType : BuiltinType | BuiltinType SubtypeSpecList | _Type ; _Type : SequenceOfType | SetOfType | DefinedType | DefinedType SubtypeSpecList | SelectionType | TaggedType ; BuiltinType : BooleanType | IntegerType | BitStringType | OctetStringType | NullType | SequenceType | SetType | ChoiceType | AnyType | ObjectIdentifierType | ExternalType | EnumeratedType | RealType ; NamedType : valident Type | Type ; ModuleReference : MODULEREFERENCE '.' ; DefinedType : typereference | ModuleReference typereference ; BooleanType : BOOLEAN ; IntegerType : INTEGER | INTEGER '{' NamedNumberList '}' ; EnumeratedType : ENUMERATED '{' NamedNumberList '}' ; RealType : REAL ; BitStringType : BIT STRING | BIT STRING '{' NamedNumberList '}' ; OctetStringType : OCTET STRING ; NullType : NUL ; SequenceType : SEQUENCE '{' ExtendedElementeTypeList '}' | SEQUENCE '{' '}' ; SequenceOfType : SEQUENCE OF ASNType | SEQUENCE SizeConstraint OF ASNType | SEQUENCE ; SetType : SET '{' ExtendedElementeTypeList '}' | SET '{' '}' ; SetOfType : SET OF ASNType | SET SizeConstraint OF ASNType | SET ; ChoiceType : CHOICE '{' AlternativeTypeList '}' ; SelectionType : valident LT ASNType ; TaggedType : Tag ASNType | Tag IMPLICIT ASNType | Tag EXPLICIT ASNType ; AnyType : ANY | ANY DEFINED BY valident ; ObjectIdentifierType : OBJECT IDENTIFIER ; ExternalType : EXTERNAL ; NamedNumberList : NamedNumber | NamedNumberList ',' NamedNumber ; NamedNumber : valident '(' ASN1Value ')' ; ExtendedElementeTypeList : ElementeTypeList | ElementeTypeList ',' DotDotDot | DotDotDot ; ElementeTypeList : ElementeType | ElementeTypeList ',' ElementeType ; ElementeType : NamedType | NamedType OPTIONAL | NamedType DEFAULT ASN1Value | COMPONENTS OF Type ; AlternativeTypeList : NamedType | AlternativeTypeList ',' NamedType ; Tag : '[' UNIVERSAL ClassNumber ']' | '[' APPLICATION ClassNumber ']' | '[' PRIVATE ClassNumber ']' | '[' ClassNumber ']' ; ClassNumber : NUMBER | valident | ModuleReference valident ; Valueassignment : valident Type ASSIGN ASN1Value | valident LeftTypeReference ASSIGN ASN1Value ; LeftTypeReference : left_typereference ; ASN1Value : NamedValue | AnyValue ; _Value : BooleanValue | IntegerValue | StringValue | NullValue | RealValue | StructuredValue | ObjectIdentifierValue | DefinedValue ; NamedValue : _Value | valident _Value ; DefinedValue : ModuleReference valident | valident ; BooleanValue : TRUE | FALSE ; RealValue : NumericRealValue | SpecialRealValue ; NullValue : NUL ; ObjectIdentifierValue : '{' FirstObjIdComponent ObjIdComponentList '}' ; FirstObjIdComponent : valident | NUMBER | valident '(' IntegerComponent ')' ; StructuredValue : '{' '}' | '{' _Value ',' NamedValueList '}' | '{' BooleanValue '}' | '{' StringValue '}' | '{' NullValue '}' | '{' RealValue '}' | '{' StructuredValue '}' | '{' ObjectIdentifierValue '}' ; ObjIdComponentList : /* empty */ | ObjIdComponentList ObjIdComponent ; IntegerComponent : DefinedValue | NUMBER ; ObjIdComponent : valident | valident '(' IntegerComponent ')' | NUMBER ; IntegerValue : NUMBER | '-' NUMBER ; StringValue : BSTRING | CSTRING | HSTRING ; AnyValue : Type ':' ASN1Value ; NumericRealValue : SDLREAL ; SpecialRealValue : PLUSINFINITY | MINUSINFINITY ; NamedValueList : NamedValue | NamedValueList ',' NamedValue ; SubtypeSpecList : SubtypeSpecList SubtypeSpec | SubtypeSpec ; SubtypeSpec : '(' SubtypeValueSetList ')' | '(' ')' ; SubtypeValueSetList : SubtypeValueSetList '|' SubtypeValueSet | SubtypeValueSet ; SubtypeValueSet : SingleValue | ContainedSubtype | ValueRange | PermittedAlphabet | SizeConstraint | InnerTypeConstraint ; SingleValue : ASN1Value ; ContainedSubtype : INCLUDES Type ; ValueRange : LowerEndPoint DotDot UpperEndPoint ; LowerEndPoint : MIN | MIN '<' | ASN1Value | ASN1Value '<' ; UpperEndPoint : MAX | LT MAX | ASN1Value | LT ASN1Value ; SizeConstraint : SIZE SubtypeSpec ; PermittedAlphabet : FROM SubtypeSpec ; InnerTypeConstraint : WITH COMPONENT SubtypeSpec | WITH COMPONENTS '{' TypeConstraints '}' | WITH COMPONENTS '{' DotDotDot ',' TypeConstraints '}' ; TypeConstraints : NamedConstraint | TypeConstraints ',' NamedConstraint ; NamedConstraint : valident ValueConstraint PresenceConstraint | ValueConstraint PresenceConstraint ; ValueConstraint : SubtypeSpec | /* empty */ ; PresenceConstraint : PRESENT | ABSENT | OPTIONAL | /* empty */ ; OperationType : OPERATION Argument Result Errors LinkedOperations ; Argument : /* empty */ | ARGUMENT ASNType | ARGUMENT valident ASNType | ARGUMENT '{' AlternativeTypeList '}' ; Result : /* empty */ | RESULT ASNType | RESULT valident ASNType ; Errors : /* empty */ | ERRORS '{' TypeValueNames '}' | ERRORS '{' '}' ; TypeValueNames : TypeValueItem | TypeValueNames ',' TypeValueItem ; TypeValueItem : ASNType | MacroValueItem ; MacroValueItem : BooleanValue | IntegerValue | StringValue | RealValue | StructuredValue | ObjectIdentifierValue | DefinedValue ; LinkedOperations : /* empty */ | LINKED '{' TypeValueNames '}' | LINKED '{' '}' ; ErrorType : ; MacroDefinition : typereference MACRO ASSIGN MacroSubstance ; MacroSubstance : MODBEGIN MacroBody END | typereference | ModuleReference typereference ; MacroBody : MacroTypeProduction MacroValueProduction SupportingProductions ; MacroTypeProduction : TYPE NOTATION ASSIGN MacroAlternativeList ; MacroValueProduction : VALUE NOTATION ASSIGN MacroAlternativeList ; SupportingProductions : /* empty */ | SupportingProductions Production ; Production : left_typereference ASSIGN MacroAlternativeList ; MacroAlternativeList : MacroAlternative | MacroAlternativeList '|' MacroAlternative ; MacroAlternative : SymbolElement | MacroAlternative SymbolElement ; SymbolElement : CSTRING | typereference | '"' STRING '"' | '"' IDENTIFIER '"' | '"' NUMBER '"' | '"' EMPTY '"' | MACROTYPE | MACROTYPE '(' typereference ')' | MACROVALUE '(' Type ')' | MACROVALUE '(' valident Type ')' | MACROVALUE '(' VALUE Type ')' | LT EmbeddedDefinitionList GT ; EmbeddedDefinitionList : EmbeddedDefinition | EmbeddedDefinitionList EmbeddedDefinition ; EmbeddedDefinition : LocalTypeAssignment | LocalValueAssignment ; LocalTypeAssignment : typereference ASSIGN Type | left_typereference ASSIGN Type ; LocalValueAssignment : valident Type ASSIGN ASN1Value | VALUE Type ASSIGN ASN1Value ; data_definition : partial_type_definition end | generator_definition end | synonym_definition end ; partial_type_definition : NEWTYPE name _opt_formal_context_parameters extended_properties ADDING properties_expression opt_range ENDNEWTYPE _opt_name | NEWTYPE name _opt_formal_context_parameters extended_properties ENDNEWTYPE _opt_name | NEWTYPE name _opt_formal_context_parameters properties_expression opt_range ENDNEWTYPE _opt_name | SYNTYPE name '=' identifier _opt_default_assignment opt_range ENDSYNTYPE _opt_name | ASNTYPE ASN1_text ENDASNTYPE ; opt_range : /* empty */ | CONSTANTS range_condition ; ASN1_text : AssignmentList | ASN1ModuleDefinition ; properties_expression : _opt_literal_list _opt_operator_list _opt_operator_definitions _opt_axioms _opt_literal_mapping _opt_default_assignment | _opt_literal_list _opt_operator_list ALTERNATIVE external_properties _opt_end _opt_default_assignment ; external_properties : ASN ';' Type ENDALTERNATIVE | ASN ';' AssignmentList ENDALTERNATIVE | ASN ';' ASN1ModuleDefinition ENDALTERNATIVE | name end ENDALTERNATIVE | name ',' name ENDALTERNATIVE | name end ENDALTERNATIVE ENDALTERNATIVE | name ',' name end ENDALTERNATIVE ENDALTERNATIVE ; _opt_literal_list : LITERALS literal_signature_list _opt_end | /* empty */ ; literal_signature_list : literal_signature | literal_signature_list ',' literal_signature ; literal_signature : name | CHARSTRING | NAMECLASS regular_expression ; _opt_operator_list : /* empty */ | OPERATORS operator_signature_list _opt_end ; operator_signature_list : operator_signature | operator_signature_list end operator_signature ; operator_signature : operator_name ':' identifier_list_ ARROW identifier | ORDERING | NOEQUALITY ; operator_name : name | name '!' | quoted_operator ; _opt_axioms : /* empty */ | AXIOMS axioms ; axioms : _axioms _opt_end ; _axioms : equation | _axioms end equation ; equation : unquantified_equation | quantified_equation | conditional_equation ; quantified_equation : FOR ALL name_list_ IN identifier '(' axioms ')' ; unquantified_equation : term EQ term | term ; term : composite_term | spelling_term ; string_name : CHARSTRING ; charstring : string_name ; composite_term : identifier | charstring | qualifier charstring | operator_identifier '(' composite_term_list ')' | identifier '(' composite_term_list ')' | identifier '!' '(' composite_term_list ')' | identifier '!' | '(' composite_term ')' | '-' term %prec UN_OP | NOT term %prec UN_OP | conditional_composite_term | term IMPL term | term OR term | term XOR term | term AND term | term IN term | term NE term | term '=' term | term '>' term | term '<' term | term LE term | term GE term | term '+' term | term '-' term | term '/' term | term '*' term | term CONCAT term | term MOD term | term REM term ; composite_term_list : term | composite_term_list ',' term ; conditional_equation : restrictions IMPLICATION unquantified_equation ; restrictions : unquantified_equation | restrictions ',' unquantified_equation ; extended_properties : inheritance_rule | generator_transformations | structure_definition ; quoted_operator : '"' predefined_operator '"' ; predefined_operator : IMPL | OR | XOR | AND | IN | NE | '=' | '>' | '<' | LE | GE | '+' | '/' | '*' | CONCAT | MOD | REM | '-' | NOT ; conditional_composite_term : IF term THEN term ELSE term FI ; range_condition : range | range_condition ',' range ; range : lower_value ':' upper_value | expression | rel_op expression ; upper_value : expression ; lower_value : expression ; rel_op : '=' | NE | '<' | '>' | LE | GE ; structure_definition : STRUCT field_list _opt_end ; field_list : fields | field_list end fields ; fields : name_list_ identifier ; inheritance_rule : INHERITS identifier _opt_actual_context_parameters literal_renaming operator_inheritance ; operator_inheritance : /* empty */ | OPERATORS ALL _opt_end | ALL _opt_end | OPERATORS '(' inheritance_list ')' _opt_end | OPERATORS '(' inheritance_list ',' NOEQUALITY ')' _opt_end | '(' inheritance_list ')' _opt_end | '(' inheritance_list ',' NOEQUALITY ')' _opt_end ; inheritance_list : inherited_operator | inheritance_list ',' inherited_operator ; inherited_operator : operator_name '=' operator_name | operator_name ; literal_renaming : /* empty */ | LITERALS literal_rename_list end ; literal_rename_list : literal_rename_pair | literal_rename_list ',' literal_rename_pair ; literal_rename_pair : name '=' name | string_name '=' string_name | name '=' string_name | string_name '=' name ; generator_definition : GENERATOR name '(' generator_parameter_list ')' generator_text ENDGENERATOR _opt_name ; generator_text : generator_transformations ADDING properties_expression | properties_expression | generator_transformations ; generator_parameter_list : generator_last_parameter | generator_parameter generator_parameter_list ; generator_parameter : TYPE parameter_list ',' | LITERAL parameter_list ',' | OPERATOR parameter_list ',' | CONSTANT parameter_list ',' ; generator_last_parameter : TYPE parameter_list | LITERAL parameter_list | OPERATOR parameter_list | CONSTANT parameter_list ; parameter_list : name | parameter_list ',' name ; generator_transformations : generator_transformation _opt_end | generator_transformations generator_transformation _opt_end ; generator_transformation : identifier_without_first_operator '(' generator_actual_list ')' ; generator_actual_list : generator_actual | generator_actual_list ',' generator_actual ; generator_actual : NAMECLASS regular_expression | quoted_operator | term ; synonym_definition : SYNONYM internal_synonym_definition | SYNONYM external_synonym_definition ; internal_synonym_definition : synonym_definition_item | internal_synonym_definition ',' synonym_definition_item ; synonym_definition_item : name '=' expression | name sort '=' expression ; external_synonym_definition : external_synonym_definition_item | external_synonym_definition ',' external_synonym_definition_item ; external_synonym_definition_item : name sort '=' EXTERNAL ; regular_expression : regular_expression_list | regular_expression regular_expression_list ; regular_expression_list : partial_regular_expression | regular_expression_list OR partial_regular_expression ; partial_regular_expression : regular_element | regular_element name | regular_element '+' | regular_element '*' ; regular_element : '(' regular_expression ')' | CHARSTRING | CHARSTRING ':' CHARSTRING ; _opt_literal_mapping : /* empty */ | MAP literal_equations _opt_end ; literal_equations : literal_equation | literal_equations end literal_equation ; literal_equation : FOR ALL name_list_ IN identifier LITERALS '(' literal_axiom_list _opt_end ')' ; literal_axiom_list : literal_axioms | literal_axiom_list end literal_axioms ; literal_axioms : equation | literal_equation ; spelling_term : SPELLING '(' identifier ')' ; _opt_operator_definitions : /* empty */ | _opt_operator_definitions operator_definition ; operator_definition : OPERATOR extended_operator_identifier formal_parameters operator_result operator_body start ENDOPERATOR end | OPERATOR extended_operator_identifier formal_parameters operator_result operator_body start ENDOPERATOR extended_operator_identifier end | OPERATOR extended_operator_identifier REFERENCED end | OPERATOR extended_operator_identifier formal_parameters operator_result REFERENCED end ; extended_operator_identifier : qualifier name '!' | name | name '!' | quoted_operator | qualifier quoted_operator | qualifier name ; entity_in_operator : data_definition | variable_definition ; operator_body : /* empty */ | operator_body entity_in_operator ; operator_result : RETURNS identifier | RETURNS name identifier ; expression : value_returning_procedure_call | subexpression ; subexpression : primary | subexpression IMPL subexpression | subexpression OR subexpression | subexpression XOR subexpression | subexpression AND subexpression | subexpression IN subexpression | subexpression NE subexpression | subexpression '=' subexpression | subexpression '>' subexpression | subexpression '<' subexpression | subexpression LE subexpression | subexpression GE subexpression | subexpression '+' subexpression | subexpression '-' subexpression | subexpression '/' subexpression | subexpression '*' subexpression | subexpression CONCAT subexpression | subexpression MOD subexpression | subexpression REM subexpression | '-' subexpression %prec UN_OP | NOT subexpression %prec UN_OP ; operator_identifier : qualifier quoted_operator | quoted_operator ; primary : identifier | string_name | qualifier CHARSTRING | '(' expression ')' | IF expression THEN expression ELSE expression FI | primary '(' expression_list ')' | operator_identifier '(' expression_list ')' | imperative_operator | structure_primary | primary '!' name ; _struct_component : LSTRUC _opt_expression_list__ RSTRUC ; structure_primary : _struct_component | qualifier _struct_component ; expression_list : expression | expression_list ',' expression ; assignment_statement : variable ASSIGN expression ; variable : identifier | variable '(' expression_list ')' | variable '!' name ; _opt_variable : /* empty */ | variable ; _opt_default_assignment : /* empty */ | DEFAULT expression _opt_end ; imperative_operator : NOW | IMPORT '(' identifier opt_destination ')' | Pid_expression | VIEW '(' identifier ')' | VIEW '(' identifier ',' expression ')' | timer_active_expression | ANY '(' identifier ')' ; opt_destination : /* empty */ | ',' destination ; Pid_expression : SELF | PARENT | OFFSPRING | SENDER ; timer_active_expression : ACTIVE '(' identifier ')' | ACTIVE '(' identifier '(' expression_list ')' ')' ; value_returning_procedure_call : _procedure_call ; _opt_end : /* empty */ | end ; sort : identifier ; synonym_context_parameter : SYNONYM _name_and_sort_list ; _name_and_sort : name identifier ; _name_and_sort_list : _name_and_sort | _name_and_sort_list ',' _name_and_sort ; sort_context_parameter : NEWTYPE name | NEWTYPE name ATLEAST identifier | NEWTYPE name _opt_literal_list _opt_operator_list ENDNEWTYPE _opt_name ; qualifier : path_item_list__ | LQUAL path_item_list__ RQUAL ; path_item_list__ : path_item | path_item_list__ '/' path_item ; path_item : PACKAGE name | SYSTEMTYPE name | SYSTEM name | BLOCK name | BLOCKTYPE name | SUBSTRUCTURE name | PROCESS name | PROCESSTYPE name | SERVICE name | SERVICETYPE name | PROCEDURE name | SIGNAL name | OPERATOR name | OPERATOR quoted_operator | TYPE name ; path_item_list_without_first_operator : path_item_without_operator | path_item_list_without_first_operator '/' path_item ; path_item_without_operator : PACKAGE name | SYSTEMTYPE name | SYSTEM name | BLOCK name | BLOCKTYPE name | SUBSTRUCTURE name | PROCESS name | PROCESSTYPE name | SERVICE name | SERVICETYPE name | PROCEDURE name | SIGNAL name | TYPE name ; identifier_without_first_operator : name | path_item_list_without_first_operator name | LQUAL path_item_list__ RQUAL name ; name : IDENT ; _opt_name : /* empty */ | name ; name_list_ : name | name_list_ ',' name ; identifier : name | qualifier name ; _opt_context_identifier : /* empty */ | identifier ; _opt_identifier : /* empty */ | identifier ; identifier_list_ : identifier | identifier_list_ ',' identifier ; sort_list_ : identifier_list_ ; _names_of_sort_list : _names_of_sort | _names_of_sort_list ',' _names_of_sort ; _names_of_sort : name_list_ sort ; informal_text : CHARSTRING ; end : ';' | COMMENT CHARSTRING ';' ; sdl_specification : package_list | package_list system_definition referenced_definition_seq0_ | PARTIAL_SPEC entity_in_external_module_list ; referenced_definition_seq0_ : /* empty */ | referenced_definition_seq0_ referenced_definition ; referenced_definition : system_type_definition | block_definition | block_type_definition | process_definition | process_type_definition | service_definition | service_type_definition | procedure_definition | substructure_definition | operator_definition ; entity_in_external_module_list : /* empty */ | entity_in_external_module_list entity_in_external_module ; entity_in_external_module : block_definition | block_reference | typebased_block_definition | channel_definition | signal_definition | signal_list_definition | signal_route_definition | remote_variable_definition | data_definition | block_type_reference | block_type_definition | process_type_definition | process_type_reference | procedure_definition | procedure_reference | remote_procedure_definition | service_type_definition | service_type_reference | view_definition | imported_procedure_specification | imported_variable_specification | timer_definition | variable_definition ; package_list : /* empty */ | package_list complete_package ; complete_package : package_definition referenced_definition_seq0_ ; package_definition : package_reference_clause_seq0_ PACKAGE name _opt_interface end entity_in_package_seq0_ ENDPACKAGE _opt_name end ; package_reference_clause_seq0_ : /* empty */ | package_reference_clause_seq0_ package_reference_clause ; entity_in_package_seq0_ : /* empty */ | entity_in_package_seq0_ entity_in_package ; entity_in_package : system_type_definition | system_type_reference | block_type_definition | block_type_reference | process_type_definition | process_type_reference | procedure_definition | remote_procedure_definition | procedure_reference | signal_definition | signal_list_definition | service_type_definition | service_type_reference | remote_variable_definition | data_definition | BEG_REF CHARSTRING END_REF ; package_reference_clause : USE name end | USE name '/' definition_selection_list end ; definition_selection_list : definition_selection | definition_selection_list ',' definition_selection ; definition_selection : name | entity_kind name ; entity_kind : SYSTEMTYPE | BLOCKTYPE | PROCESSTYPE | SERVICETYPE | SIGNAL | PROCEDURE | NEWTYPE | SIGNALLIST | GENERATOR | SYNONYM | REMOTE ; _opt_interface : /* empty */ | INTERFACE definition_selection_list ; system_definition : package_reference_clause_seq0_ SYSTEM name end entity_in_system_seq1_ ENDSYSTEM _opt_name end | package_reference_clause_seq0_ SYSTEM name ':' type_expression end ; entity_in_system_seq1_ : entity_in_system | entity_in_system_seq1_ entity_in_system ; system_type_definition : SYSTEMTYPE identifier _opt_formal_context_parameters _opt_specialization end entity_in_system_seq0_ ENDSYSTEM TYPE _opt_identifier end ; system_type_reference : SYSTEMTYPE name REFERENCED end ; entity_in_system_seq0_ : /* empty */ | entity_in_system_seq0_ entity_in_system ; entity_in_system : block_definition | block_reference | typebased_block_definition | channel_definition | signal_definition | signal_list_definition | remote_variable_definition | data_definition | block_type_reference | block_type_definition | process_type_definition | process_type_reference | procedure_definition | procedure_reference | remote_procedure_definition | service_type_definition | service_type_reference | BEG_REF CHARSTRING END_REF ; block_definition : BLOCK identifier end _def_in_block_seq0_ __opt_blocksubdef ENDBLOCK _opt_identifier end ; block_reference : BLOCK name REFERENCED end ; typebased_block_definition : BLOCK name _opt_number_of_block_instances ':' type_expression end ; block_type_definition : _opt_virtuality BLOCKTYPE identifier _opt_formal_context_parameters _opt_virtuality_constraint _opt_specialization end gate_definition_seq0_ entity_in_block_seq0_ __opt_blocksubdef ENDBLOCK TYPE _opt_identifier end ; block_type_reference : _opt_virtuality BLOCKTYPE name REFERENCED end ; _opt_number_of_block_instances : /* empty */ | '(' expression ')' ; __opt_blocksubdef : /* empty */ | substructure_definition | block_substructure_reference ; _def_in_block_seq0_ : /* empty */ | _def_in_block_seq0_ connection | _def_in_block_seq0_ entity_in_block ; entity_in_block_seq0_ : /* empty */ | entity_in_block_seq0_ entity_in_block ; entity_in_block : signal_definition | signal_list_definition | process_definition | process_reference | typebased_process_definition | signal_route_definition | remote_variable_definition | data_definition | process_type_definition | process_type_reference | block_type_definition | block_type_reference | procedure_reference | procedure_definition | remote_procedure_definition | service_type_definition | service_type_reference | BEG_REF CHARSTRING END_REF ; gate_definition_seq0_ : /* empty */ | gate_definition_seq0_ gate_definition ; gate_definition : GATE name _opt_ADDING gate_constraint end | GATE name _opt_ADDING gate_constraint end gate_constraint end ; _opt_ADDING : /* empty */ | ADDING ; gate_constraint : OUT __opt_to __opt_with_clause | IN __opt_from __opt_with_clause ; __opt_to : /* empty */ | TO _opt_ATLEAST identifier ; __opt_from : /* empty */ | FROM _opt_ATLEAST identifier ; _opt_ATLEAST : /* empty */ | ATLEAST ; __opt_with_clause : /* empty */ | WITH signal_list ; substructure_definition : SUBSTRUCTURE _opt_identifier end _def_in_substructure_seq1_ ENDSUBSTRUCTURE _opt_identifier end ; _def_in_substructure_seq1_ : entity_in_system | connection | _def_in_substructure_seq1_ entity_in_system | _def_in_substructure_seq1_ connection ; block_substructure_reference : SUBSTRUCTURE name REFERENCED end ; process_definition : PROCESS identifier _opt_number_of_process_instances end __opt_formal_parameters _opt_valid_input_signal_set _def_in_process_seq0_ _opt_process_body ENDPROCESS _opt_identifier end ; __opt_formal_parameters : /* empty */ | formal_parameters end ; process_reference : PROCESS identifier _opt_number_of_process_instances REFERENCED end ; typebased_process_definition : PROCESS identifier _opt_number_of_process_instances ':' type_expression end ; process_type_definition : _opt_virtuality PROCESSTYPE identifier _opt_formal_context_parameters _opt_virtuality_constraint _opt_specialization end __opt_formal_parameters _opt_valid_input_signal_set gate_definition_seq0_ entity_in_process_seq0_ _opt_procedure_body ENDPROCESS TYPE _opt_identifier end ; process_type_reference : _opt_virtuality PROCESSTYPE name REFERENCED end ; process_context_parameter : PROCESS name process_constraint_by_type | PROCESS name process_signature ; process_constraint_by_type : _opt_ATLEAST identifier ; process_signature : /* empty */ | FPAR sort_list_ ; _opt_valid_input_signal_set : /* empty */ | SIGNALSET _opt_signal_list end ; _opt_signal_list : /* empty */ | signal_list ; formal_parameters : FPAR _names_of_sort_list ; _def_in_process_seq0_ : /* empty */ | _def_in_process_seq0_ entity_in_process | _def_in_process_seq0_ connection ; entity_in_process_seq0_ : /* empty */ | entity_in_process_seq0_ entity_in_process ; entity_in_process : signal_definition | signal_list_definition | procedure_reference | procedure_definition | remote_procedure_definition | imported_procedure_specification | remote_variable_definition | data_definition | variable_definition | view_definition | imported_variable_specification | timer_definition | signal_route_definition | service_definition | service_reference | typebased_service_definition | service_type_definition | service_type_reference | BEG_REF CHARSTRING END_REF ; _opt_number_of_process_instances : /* empty */ | '(' _opt_expression ')' | '(' _opt_expression ',' _opt_expression ')' ; _opt_expression : /* empty */ | expression ; opt_expression : /* empty */ | expression ; _opt_process_body : /* empty */ | process_body ; service_definition : SERVICE identifier end _opt_valid_input_signal_set entity_in_service_seq0_ process_body ENDSERVICE _opt_identifier end ; service_reference : SERVICE name REFERENCED end ; typebased_service_definition : SERVICE name ':' type_expression end ; service_type_definition : _opt_virtuality SERVICETYPE identifier _opt_formal_context_parameters _opt_virtuality_constraint _opt_specialization end _opt_valid_input_signal_set gate_definition_seq0_ entity_in_service_seq0_ _opt_procedure_body ENDSERVICE TYPE _opt_identifier end ; service_type_reference : _opt_virtuality SERVICETYPE name REFERENCED end ; entity_in_service_seq0_ : /* empty */ | entity_in_service_seq0_ entity_in_service ; entity_in_service : variable_definition | data_definition | view_definition | imported_variable_specification | imported_procedure_specification | procedure_definition | procedure_reference | timer_definition | BEG_REF CHARSTRING END_REF ; procedure_definition : procedure_preamble PROCEDURE identifier _opt_formal_context_parameters _opt_virtuality_constraint _opt_specialization end __opt_procedure_formal_parameters __opt_procedure_result entity_in_procedure_seq0_ _opt_procedure_body ENDPROCEDURE _opt_identifier end ; procedure_reference : procedure_preamble PROCEDURE name REFERENCED end ; procedure_context_parameter : PROCEDURE name procedure_constraint ; procedure_context_parameter_end : PROCEDURE name procedure_constraint_end ; procedure_constraint : ATLEAST identifier | procedure_signature ; procedure_constraint_end : ATLEAST identifier end | procedure_signature_end ; procedure_signature_end : end | _opt_end FPAR _proc_fpar_constraint_list end | _opt_end FPAR _proc_fpar_constraint_list end RETURNS sort end | _opt_end RETURNS sort end ; procedure_signature : /* empty */ | _opt_end FPAR _proc_fpar_constraint_list | _opt_end FPAR _proc_fpar_constraint_list end RETURNS sort | _opt_end RETURNS sort ; _proc_fpar_constraint_list : procedure_formal_parameter_constraint | _proc_fpar_constraint_list ',' procedure_formal_parameter_constraint ; procedure_formal_parameter_constraint : parameter_kind sort ; entity_in_procedure_seq0_ : /* empty */ | entity_in_procedure_seq0_ entity_in_procedure ; entity_in_procedure : data_definition | variable_definition | procedure_reference | procedure_definition | BEG_REF CHARSTRING END_REF ; __opt_procedure_formal_parameters : /* empty */ | FPAR formal_variable_parameters_list_ end ; formal_variable_parameters_list_ : formal_variable_parameters | formal_variable_parameters_list_ ',' formal_variable_parameters ; formal_variable_parameters : parameter_kind _names_of_sort ; parameter_kind : /* empty */ | IN | IN '/' OUT ; procedure_preamble : _opt_virtuality __opt_exported ; __opt_exported : /* empty */ | EXPORTED | EXPORTED AS identifier ; remote_procedure_definition : REMOTE PROCEDURE name _opt_NODELAY end __opt_procedure_signature ; remote_procedure_context_parameter : REMOTE PROCEDURE name procedure_signature ; remote_procedure_context_parameter_end : REMOTE PROCEDURE name procedure_signature_end ; imported_procedure_specification : IMPORTED PROCEDURE identifier end __opt_procedure_signature ; __opt_procedure_signature : /* empty */ | procedure_signature_end ; __opt_procedure_result : /* empty */ | RETURNS sort end | RETURNS name sort end ; _opt_NODELAY : /* empty */ | NODELAY ; channel_definition : CHANNEL name _opt_NODELAY channel_path __opt_channsubdef ENDCHANNEL _opt_name end | CHANNEL name _opt_NODELAY channel_path channel_path __opt_channsubdef ENDCHANNEL _opt_name end ; channel_path : FROM channel_endpoint TO channel_endpoint WITH signal_list end ; channel_endpoint : identifier | identifier VIA name | ENV | ENV VIA name ; __opt_channsubdef : /* empty */ | substructure_definition | channel_substructure_reference ; channel_substructure_reference : SUBSTRUCTURE name REFERENCED end ; signal_route_definition : SIGNALROUTE name signal_route_path | SIGNALROUTE name signal_route_path signal_route_path ; signal_route_path : FROM signal_route_endpoint TO signal_route_endpoint WITH signal_list end ; signal_route_endpoint : identifier | identifier VIA name | ENV | ENV VIA name ; connection : CONNECT identifier_list_ AND identifier_list_ end | CONNECT ENV AND identifier_list_ end ; signal_definition : SIGNAL signal_definition_item_list_ end ; signal_context_parameter : SIGNAL _signal_with_constraint_list ; _signal_with_constraint_list : _signal_with_constraint | _signal_with_constraint_list ',' _signal_with_constraint ; _signal_with_constraint : name signal_constraint ; signal_constraint : ATLEAST identifier | _opt_sort_list _opt_signal_refinement ; signal_definition_item_list_ : signal_definition_item | signal_definition_item_list_ ',' signal_definition_item ; signal_definition_item : name _opt_formal_context_parameters _opt_specialization _opt_sort_list _opt_signal_refinement ; _opt_sort_list : /* empty */ | sort_list ; sort_list : '(' sort_list_ ')' ; signal_list_definition : SIGNALLIST name '=' signal_list end ; signal_list : signal_list_item | signal_list ',' signal_list_item ; signal_list_item : identifier | '(' identifier ')' ; _opt_signal_refinement : /* empty */ | REFINEMENT subsignal_definition_seq1_ ENDREFINEMENT ; subsignal_definition_seq1_ : subsignal_definition | subsignal_definition_seq1_ subsignal_definition ; subsignal_definition : reverse signal_definition ; reverse : /* empty */ | REVERSE ; variable_definition : DCL _rev_exp variables_of_sort_list_ end ; variable_context_parameter : DCL _names_of_sort_list ; _rev_exp : /* empty */ | REVEALED | EXPORTED | REVEALED EXPORTED | EXPORTED REVEALED ; variables_of_sort_list_ : variables_of_sort | variables_of_sort_list_ ',' variables_of_sort ; variables_of_sort : _varname_exportedas_list__ sort | _varname_exportedas_list__ sort ASSIGN expression ; _varname_exportedas_list__ : _varname_exportedas | _varname_exportedas_list__ ',' _varname_exportedas ; _varname_exportedas : name | name AS identifier ; view_definition : VIEWED _names_of_sort_list end ; imported_variable_specification : IMPORTED _imported_variables_list__ end ; _imported_variables_list__ : _imported_variables | _imported_variables_list__ ',' _imported_variables ; _imported_variables : identifier_list_ sort ; remote_variable_definition : REMOTE _remote_variable_spec_list end ; _remote_variable_spec_list : _remote_variable_spec | _remote_variable_spec_list ',' _remote_variable_spec ; _remote_variable_spec : name_list_ sort _opt_NODELAY ; remote_variable_context_parameter : REMOTE _names_of_sort_list ; process_body : start _entity_in_body_seq0__ ; _opt_procedure_body : /* empty */ | start _entity_in_body_seq0__ | _entity_in_body_seq1__ ; _entity_in_body_seq0__ : /* empty */ | _entity_in_body_seq1__ ; _entity_in_body_seq1__ : state | free_action | _entity_in_body_seq1__ state | _entity_in_body_seq1__ free_action ; start : START _opt_virtuality end transition ; state : STATE state_list end _entity_in_state_seq0__ | STATE state_list end _entity_in_state_seq0__ ENDSTATE _opt_name end ; _entity_in_state_seq0__ : /* empty */ | _entity_in_state_seq0__ input_part | _entity_in_state_seq0__ priority_input | _entity_in_state_seq0__ save_part | _entity_in_state_seq0__ spontaneous_transition | _entity_in_state_seq0__ continuous_signal ; state_list : name_list_ | '*' | '*' '(' name_list_ ')' ; input_part : INPUT _opt_virtuality input_list end _opt_enabling_condition transition | INPUT _opt_virtuality PROCEDURE identifier_list_ end _opt_enabling_condition transition ; input_list : stimulus_list_ | '*' ; stimulus_list_ : stimulus | stimulus_list_ ',' stimulus ; stimulus : identifier | identifier '(' _opt_variable_list__ ')' ; _opt_variable_list__ : _opt_variable | _opt_variable_list__ ',' _opt_variable ; _opt_enabling_condition : /* empty */ | PROVIDED expression end ; priority_input : PRIORITY INPUT _opt_virtuality stimulus_list_ end transition ; save_part : basic_save_part | remote_procedure_save ; basic_save_part : SAVE _opt_virtuality save_list end ; save_list : signal_list | '*' ; remote_procedure_save : SAVE _opt_virtuality PROCEDURE identifier_list_ end ; spontaneous_transition : INPUT _opt_virtuality NONE end _opt_enabling_condition transition ; continuous_signal : PROVIDED _opt_virtuality expression end _priority transition ; _priority : /* empty */ | PRIORITY name end ; free_action : CONNECTION transition __opt_endconnection ; __opt_endconnection : /* empty */ | ENDCONNECTION _opt_name end ; transition : transition_string | transition_string terminator_statement | terminator_statement ; transition_string : action_statement | transition_string action_statement ; terminator_statement : _opt_label NEXTSTATE name end | _opt_label NEXTSTATE '-' end | _opt_label JOIN name end | _opt_label STOP end | _opt_label RETURN opt_expression end ; _opt_label : /* empty */ | name ':' ; action_statement : _opt_label action end ; action : task | output | create_request | decision | set | reset | export | _procedure_call ; task : TASK assignment_statement_list_ | TASK informal_text_list_ ; assignment_statement_list_ : assignment_statement | assignment_statement_list_ ',' assignment_statement ; informal_text_list_ : informal_text | informal_text_list_ ',' informal_text ; create_request : CREATE identifier _opt_actual_parameters | CREATE THIS _opt_actual_parameters ; _opt_actual_parameters : /* empty */ | '(' _opt_expression_list__ ')' ; _opt_expression_list__ : _opt_expression | _opt_expression_list__ ',' _opt_expression ; _procedure_call : CALL _opt_THIS identifier _opt_actual_parameters __opt_to_destination ; _opt_THIS : /* empty */ | THIS ; output : OUTPUT _output_item_list __opt_to_destination __opt_via_viapath ; _output_item_list : output_item | _output_item_list ',' output_item ; output_item : identifier _opt_actual_parameters ; __opt_to_destination : /* empty */ | TO destination ; destination : expression | THIS ; __opt_via_viapath : /* empty */ | VIA via_path | VIA ALL via_path ; via_path : via_path_element | via_path ',' via_path_element ; via_path_element : identifier ; decision : DECISION expression end decision_body ENDDECISION | DECISION ANY end decision_body ENDDECISION ; decision_body : __answer_part else_part | answer_part_seq2_ | answer_part_seq2_ else_part ; __answer_part : answer_part ; else_part : ELSE ':' _opt_transition ; _opt_transition : /* empty */ | transition ; answer_part_seq2_ : __answer_part answer_part | answer_part_seq2_ answer_part ; answer_part : '(' _opt_answer ')' ':' _opt_transition ; _opt_answer : /* empty */ | range_condition ; export : EXPORT '(' identifier_list_ ')' ; timer_definition : TIMER timer_definition_item_list_ end ; timer_context_parameter : TIMER _timer_cp_list ; _timer_cp_list : _timer_cp | _timer_cp_list ',' _timer_cp ; _timer_cp : name _opt_sort_list ; timer_definition_item_list_ : timer_definition_item | timer_definition_item_list_ ',' timer_definition_item ; timer_definition_item : name _opt_sort_list | name _opt_sort_list ASSIGN expression ; reset : RESET '(' reset_statement_list_ ')' ; reset_statement_list_ : reset_statement | reset_statement_list_ ',' reset_statement ; reset_statement : identifier _opt_actual_parameters ; set : SET set_statement_list_ ; set_statement_list_ : set_statement | set_statement_list_ ',' set_statement ; set_statement : '(' expression ',' expression ')' | '(' expression ')' ; _opt_virtuality : /* empty */ | VIRTUAL | REDEFINED | FINALIZED ; type_expression : identifier _opt_actual_context_parameters ; _opt_specialization : /* empty */ | INHERITS type_expression _opt_ADDING ; _opt_virtuality_constraint : /* empty */ | ATLEAST identifier ; formal_context_parameters : '<' formal_context_parameter_list__ '>' ; _opt_formal_context_parameters : /* empty */ | formal_context_parameters ; formal_context_parameter_list__ : last_formal_context_parameter | formal_context_parameter_list_head last_formal_context_parameter ; formal_context_parameter_list_head : formal_context_parameter | formal_context_parameter_list_head formal_context_parameter ; _opt_actual_context_parameters : /* empty */ | '<' _opt_identifier_list__ '>' ; _opt_identifier_list__ : _opt_context_identifier | _opt_identifier_list__ ',' _opt_context_identifier ; formal_context_parameter : process_context_parameter end | procedure_context_parameter_end | remote_procedure_context_parameter_end | signal_context_parameter end | variable_context_parameter end | remote_variable_context_parameter end | timer_context_parameter end | synonym_context_parameter end | sort_context_parameter end ; last_formal_context_parameter : process_context_parameter | procedure_context_parameter | remote_procedure_context_parameter | signal_context_parameter | variable_context_parameter | remote_variable_context_parameter | timer_context_parameter | synonym_context_parameter | sort_context_parameter ;

Nonterminals:

ASN1ModuleDefinition ASN1Value ASN1_text ASNType AlternativeTypeList AnyType AnyValue Argument AssignedIdentifier Assignment AssignmentList BitStringType BooleanType BooleanValue BuiltinType ChoiceType ClassNumber ContainedSubtype DefinedType DefinedValue ElementeType ElementeTypeList EmbeddedDefinition EmbeddedDefinitionList EnumeratedType ErrorType Errors Exports ExtendedElementeTypeList ExternalType FirstObjIdComponent Imports InnerTypeConstraint IntegerComponent IntegerType IntegerValue LeftTypeReference LinkedOperations LocalTypeAssignment LocalValueAssignment LowerEndPoint MacroAlternative MacroAlternativeList MacroBody MacroDefinition MacroSubstance MacroType MacroTypeProduction MacroValueItem MacroValueProduction ModuleReference NamedConstraint NamedNumber NamedNumberList NamedType NamedValue NamedValueList NullType NullValue NumericRealValue ObjIdComponent ObjIdComponentList ObjectIdentifierType ObjectIdentifierValue OctetStringType OperationType PermittedAlphabet Pid_expression PresenceConstraint Production RealType RealValue Result SelectionType SequenceOfType SequenceType SetOfType SetType SingleValue SizeConstraint SpecialRealValue StringValue StructuredValue SubtypeSpec SubtypeSpecList SubtypeValueSet SubtypeValueSetList SupportingProductions Symbol SymbolElement SymbolList SymbolsFromModule SymbolsImported Tag TagDefault TaggedType Type TypeConstraints TypeValueItem TypeValueNames Typeassignment UpperEndPoint ValueConstraint ValueRange Valueassignment _Opt_Colon _Type _Value __answer_part __opt_blocksubdef __opt_channsubdef __opt_endconnection __opt_exported __opt_formal_parameters __opt_from __opt_procedure_formal_parameters __opt_procedure_result __opt_procedure_signature __opt_to __opt_to_destination __opt_via_viapath __opt_with_clause _axioms _def_in_block_seq0_ _def_in_process_seq0_ _def_in_substructure_seq1_ _entity_in_body_seq0__ _entity_in_body_seq1__ _entity_in_state_seq0__ _imported_variables _imported_variables_list__ _name_and_sort _name_and_sort_list _names_of_sort _names_of_sort_list _opt_ADDING _opt_ATLEAST _opt_NODELAY _opt_THIS _opt_actual_context_parameters _opt_actual_parameters _opt_answer _opt_axioms _opt_context_identifier _opt_default_assignment _opt_enabling_condition _opt_end _opt_expression _opt_expression_list__ _opt_formal_context_parameters _opt_identifier _opt_identifier_list__ _opt_interface _opt_label _opt_literal_list _opt_literal_mapping _opt_name _opt_number_of_block_instances _opt_number_of_process_instances _opt_operator_definitions _opt_operator_list _opt_procedure_body _opt_process_body _opt_signal_list _opt_signal_refinement _opt_sort_list _opt_specialization _opt_transition _opt_valid_input_signal_set _opt_variable _opt_variable_list__ _opt_virtuality _opt_virtuality_constraint _output_item_list _priority _proc_fpar_constraint_list _procedure_call _remote_variable_spec _remote_variable_spec_list _rev_exp _signal_with_constraint _signal_with_constraint_list _struct_component _timer_cp _timer_cp_list _varname_exportedas _varname_exportedas_list__ action action_statement answer_part answer_part_seq2_ assignment_statement assignment_statement_list_ axioms basic_save_part block_definition block_reference block_substructure_reference block_type_definition block_type_reference channel_definition channel_endpoint channel_path channel_substructure_reference charstring complete_package composite_term composite_term_list conditional_composite_term conditional_equation connection continuous_signal create_request data_definition decision decision_body definition_selection definition_selection_list destination else_part end entity_in_block entity_in_block_seq0_ entity_in_external_module entity_in_external_module_list entity_in_operator entity_in_package entity_in_package_seq0_ entity_in_procedure entity_in_procedure_seq0_ entity_in_process entity_in_process_seq0_ entity_in_service entity_in_service_seq0_ entity_in_system entity_in_system_seq0_ entity_in_system_seq1_ entity_kind equation export expression expression_list extended_operator_identifier extended_properties external_properties external_synonym_definition external_synonym_definition_item field_list fields formal_context_parameter formal_context_parameter_list__ formal_context_parameter_list_head formal_context_parameters formal_parameters formal_variable_parameters formal_variable_parameters_list_ free_action gate_constraint gate_definition gate_definition_seq0_ generator_actual generator_actual_list generator_definition generator_last_parameter generator_parameter generator_parameter_list generator_text generator_transformation generator_transformations identifier identifier_list_ identifier_without_first_operator imperative_operator imported_procedure_specification imported_variable_specification informal_text informal_text_list_ inheritance_list inheritance_rule inherited_operator input_list input_part internal_synonym_definition last_formal_context_parameter left_typereference literal_axiom_list literal_axioms literal_equation literal_equations literal_rename_list literal_rename_pair literal_renaming literal_signature literal_signature_list lower_value name name_list_ operator_body operator_definition operator_identifier operator_inheritance operator_name operator_result operator_signature operator_signature_list opt_AssignmentList opt_destination opt_expression opt_range output output_item package_definition package_list package_reference_clause package_reference_clause_seq0_ parameter_kind parameter_list partial_regular_expression partial_type_definition path_item path_item_list__ path_item_list_without_first_operator path_item_without_operator predefined_operator primary priority_input procedure_constraint procedure_constraint_end procedure_context_parameter procedure_context_parameter_end procedure_definition procedure_formal_parameter_constraint procedure_preamble procedure_reference procedure_signature procedure_signature_end process_body process_constraint_by_type process_context_parameter process_definition process_reference process_signature process_type_definition process_type_reference properties_expression qualifier quantified_equation quoted_operator range range_condition referenced_definition referenced_definition_seq0_ regular_element regular_expression regular_expression_list rel_op remote_procedure_context_parameter remote_procedure_context_parameter_end remote_procedure_definition remote_procedure_save remote_variable_context_parameter remote_variable_definition reset reset_statement reset_statement_list_ restrictions reverse save_list save_part sdl_specification service_definition service_reference service_type_definition service_type_reference set set_statement set_statement_list_ signal_constraint signal_context_parameter signal_definition signal_definition_item signal_definition_item_list_ signal_list signal_list_definition signal_list_item signal_route_definition signal_route_endpoint signal_route_path sort sort_context_parameter sort_list sort_list_ spelling_term spontaneous_transition start state state_list stimulus stimulus_list_ string_name structure_definition structure_primary subexpression subsignal_definition subsignal_definition_seq1_ substructure_definition synonym_context_parameter synonym_definition synonym_definition_item system_definition system_type_definition system_type_reference task term terminator_statement timer_active_expression timer_context_parameter timer_definition timer_definition_item timer_definition_item_list_ transition transition_string type_expression typebased_block_definition typebased_process_definition typebased_service_definition typereference unquantified_equation upper_value valident value_returning_procedure_call variable variable_context_parameter variable_definition variables_of_sort variables_of_sort_list_ via_path via_path_element view_definition

Tokens:

ABSENT ACTIVE ADDING ALL ALTERNATIVE AND ANY APPLICATION ARGUMENT ARROW AS ASN ASNTYPE ASSIGN ATLEAST AXIOMS BEG_REF BIT BLOCK BLOCKTYPE BOOLEAN BSTRING BY CALL CHANNEL CHARSTRING CHOICE COMMENT COMPONENT COMPONENTS CONCAT CONNECT CONNECTION CONSTANT CONSTANTS CREATE CSTRING DCL DECISION DEFAULT DEFINED DEFINITIONS DotDot DotDotDot ELSE EMPTY END ENDALTERNATIVE ENDASNTYPE ENDBLOCK ENDCHANNEL ENDCONNECTION ENDDECISION ENDGENERATOR ENDNEWTYPE ENDOPERATOR ENDPACKAGE ENDPROCEDURE ENDPROCESS ENDREFINEMENT ENDSERVICE ENDSTATE ENDSUBSTRUCTURE ENDSYNTYPE ENDSYSTEM END_REF ENUMERATED ENV EQ ERRORS EXPLICIT EXPORT EXPORTED EXPORTS EXTERNAL FALSE FI FINALIZED FOR FPAR FROM GATE GE GENERATOR GT HSTRING IDENT IDENTIFIER IF IMPL IMPLICATION IMPLICIT IMPORT IMPORTED IMPORTS IN INCLUDES INHERITS INPUT INTEGER INTERFACE JOIN LE LEFTTYPEREFERENCE LINKED LITERAL LITERALS LQUAL LSTRUC LT MACRO MACROTYPE MACROVALUE MAP MAX MIN MINUSINFINITY MOD MODBEGIN MODULEREFERENCE NAMECLASS NE NEWTYPE NEXTSTATE NODELAY NOEQUALITY NONE NOT NOTATION NOW NUL NUMBER OBJECT OCTET OF OFFSPRING OPERATION OPERATOR OPERATORS OPTIONAL OR ORDERING OUT OUTPUT PACKAGE PARENT PARTIAL_SPEC PLUSINFINITY PRESENT PRIORITY PRIVATE PROCEDURE PROCESS PROCESSTYPE PROVIDED REAL REDEFINED REFERENCED REFINEMENT REM REMOTE RESET RESULT RETURN RETURNS REVEALED REVERSE RQUAL RSTRUC SAVE SDLREAL SELF SENDER SEQUENCE SERVICE SERVICETYPE SET SIGNAL SIGNALLIST SIGNALROUTE SIGNALSET SIZE SPELLING START STATE STOP STRING STRUCT SUBSTRUCTURE SYNONYM SYNTYPE SYSTEM SYSTEMTYPE TAGS TASK THEN THIS TIMER TO TRUE TYPE TYPEREFERENCE UNIVERSAL UN_OP USE VALIDENT VALUE VIA VIEW VIEWED VIRTUAL WITH XOR
total number of grammar rules: 439

Automatically generated by yacc2html 1.4alpha3 on Fri Feb 7 14:38:17 1997 .