saeaadl / emv2

AADL Error Model V2 annex language
0 stars 0 forks source link

Homogeneity of references to AADL core objects #20

Open buzden opened 8 years ago

buzden commented 8 years ago

References from EMV2 to AADL core objects is not homogeneous: some of them use @ sign at the border between AADL core and EMV2 worlds, some of them use dot. We propose to change the syntax to make everything look similar.

We propose to replace

qualified_propagation_point ::=
    { subcomponent_identifier . }+ propagation_point_identifier

error_condition_trigger ::=
      error_behavior_event_identifier [error_type_set ]
    | [ in ] incoming_error_propagation_point [ error_type_set_or_noerror ]
    | subcomponent_identifier . outgoing_error_propagation_point [ error_type_set_or_noerror ]

subcomponent_error_state ::=
  { subcomponent_identifier . }+ error_behavior_state_identifier

with

qualified_propagation_point ::=
    aadl2_core_path @ propagation_point_identifier

error_condition_trigger ::=
      error_behavior_event_identifier [error_type_set ]
    | [ in ] incoming_error_propagation_point [ error_type_set_or_noerror ]
    | subcomponent_identifier @ outgoing_error_propagation_point [ error_type_set_or_noerror ]

subcomponent_error_state ::=
   aadl2_core_path @ error_behavior_state_identifier

Probably aadl2_core_path should be used instead of subcomponent_identifier in the third alternative of the error_condition_trigger rule.

jjhugues commented 4 years ago

Closed as this has been implemented

jjhugues commented 3 years ago

Note: recorded means only that the corresponding element is marked in the documentation, not that it has been implemented ...

jjhugues commented 3 years ago

@lwrage I need your review on that. The intent seems legit, but we need to check this is valid w.r.t. the grammar we use

lwrage commented 3 years ago

In OSATE we use the grammar from the current version of the annex, i.e., . not @, so this has not been implemented in OSATE.

In general the change looks reasonable but it would break existing models. I don't think it is worth the effort of trying to implement a solution that accepts both styles to preserve backward compatibility.

The core path is also used in applies to for property associations. To disambiguate the grammar the core path there must be prefixed with ^ in OSATE.

jjhugues commented 3 years ago

Thanks; we can defer such discussion for v3 then