Skip to content

Fail textual import with shorthand notation on SendActionUsage in TransitionUsage #1957

@adaussy

Description

@adaussy

Importing the following model give a semantically different model in SysON:

package Package1 {
    attribute def Sig {
        x;
    }
    attribute def Exit;
    part p;
    state state1 {
        state s2;
        state s3;
        port x;
        transition T1 first s2 accept s : Sig via p do send s to p then s3;
    }
}

This model will be imported considering the receiver argument as the sender argument that is to say:

package Package1 {
    attribute def Sig {
        x;
    }
    attribute def Exit;
    part p;
    state state1 {
        state s2;
        state s3;
        port x;
        transition T1 first s2 accept s : Sig via p do send s *via* p then s3;
    }
}

The issues is that the current implementation relies on a AST that do not comply fully to the expected BNF.
The BNF expect to have 2 ou 3 arguments. But if it has only 2, it considers the second argument as the "sender" and not the "receiver". If we want to specify "receiver" an "empty parameter" is required in between.

Image

The current implementation of the parser rely on a differnet approach more like a "named parameter".

Image

This is not properly handled by SysON.

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions