Skip to content
This repository has been archived by the owner on Oct 3, 2024. It is now read-only.

ErrorModelScopeProvider using wrong scope for element references #114

Closed
rinsley opened this issue Sep 21, 2016 · 4 comments
Closed

ErrorModelScopeProvider using wrong scope for element references #114

rinsley opened this issue Sep 21, 2016 · 4 comments
Assignees

Comments

@rinsley
Copy link

rinsley commented Sep 21, 2016

I am encountering problems serializing a programmatically created model that I believe are due to errors in ErrorModelScopeProvider.xtend.

In ErrorModelScopeProvider.xtend on lines 347 and 348, it establishes the scope to use when serializing a reference to a subcomponent state, for example, a subcomponent state in a composite error behavior state.

It declares the scope for this is the subcomponents of the referenced subcomponent's component classifier. This appears to be wrong. The scope should be the subcomponents of the component implementation that contains the composite error behavior.

Similarly, in ErrorModelScopeProvider on line 237, it establishes the scope to use when serializing a reference in an error behavior state machine transition.

It declares the scope as all of the events in the error behavior state machine. This is incomplete, This scope should also include the error types used by the error behavior state machine.

@joeseibel
Copy link
Contributor

Can you give an example where an error type should be in the scope for EMV2PathElement's namedElement reference?

@joeseibel joeseibel reopened this Oct 19, 2016
@rinsley
Copy link
Author

rinsley commented Oct 19, 2016

package FailExample
public
annex EMV2 {**
error behavior FailStop2
use types ErrorLibrary;
events
Failure : error event {ServiceError};
states
Operational : initial state ;
FailStop : state ;
transitions
FailureTransition : Operational -[ ServiceError ]-> FailStop ;
end behavior ;
**};
end FailExample;

Here, the transition condition uses an error type. I believe this is valid, it doesn't give any errors in the OSATE editor.

@lwrage
Copy link
Contributor

lwrage commented Oct 20, 2016

The transition in the model above is not valid. The standard allows error events and propagation points as condition triggers but not error types. The name resolver has a bug here which will be fixed with #103, so I'm closing this issue.

@rinsley
Copy link
Author

rinsley commented Oct 20, 2016

Sounds good to me.

@lwrage lwrage closed this as completed Oct 21, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants