textX icon indicating copy to clipboard operation
textX copied to clipboard

Possible (minor) issue with attribute types

Open goto40 opened this issue 3 years ago • 2 comments

Playing around with the meta model properties I added some tests: https://github.com/textX/textX/tree/feature/additional_metamodel_tests

I found a possible issue I would like to discuss:

In the docu we have "If there are multiple common rules than the first will be used as a result and the rest only for parsing".

Based on this sentence I tried:

        Model: 'value' x=Base;
        Base: S1|(S2 NotS3); // only use first rule (S2) as possible instance for each choice-option
        S1: name=ID;
        S2: name=ID;
        NotS3: name=ID;

In this meta model Base should not be a base of NotS3... I think this is a possible issue (probably not so difficult to fix).

goto40 avatar Jan 30 '22 16:01 goto40

I think you are right. It looks like a potential problem. The metamodel should be consistent with the parsing results. Since NotS3 instance is never instantiated during Base parsing (i.e. it will be thrown away after parsing) it shouldn't be its subclass.

igordejanovic avatar Jan 31 '22 15:01 igordejanovic

I will have a look...

goto40 avatar Jan 31 '22 21:01 goto40