diff --git a/.mps/modules.xml b/.mps/modules.xml index dbac636..3168245 100644 --- a/.mps/modules.xml +++ b/.mps/modules.xml @@ -9,6 +9,7 @@ + diff --git a/build.xml b/build.xml index 2111d97..ec64d39 100644 --- a/build.xml +++ b/build.xml @@ -2761,6 +2761,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -3112,7 +3171,7 @@ - + @@ -3273,6 +3332,7 @@ + @@ -5491,6 +5551,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6053,6 +6156,7 @@ + diff --git a/docs/reference/converter-lang.adoc b/docs/reference/converter-lang.adoc index a397138..85001a0 100644 --- a/docs/reference/converter-lang.adoc +++ b/docs/reference/converter-lang.adoc @@ -48,6 +48,16 @@ Converts all listed languages completely. If any element in the listed languages uses an element from a non-listed language, we include the element of the non-listed language -- but not any other elements of that non-listed language. We apply this strategy (known as _tree shaking_) transitively until we included all used elements. +We can set some flags for special annotation handling: + +[horizontal] +export description annotations:: +Whether concept descriptions should be exported as instances of `io.lionweb.mps.specific.lang.MPS-specific annotations.ConceptDescription`. + +export special annotations:: +Whether special concept annotations should be exported: ++ +* `jetbrains.mps.lang.structure.structure.DeprecatedNodeAnnotation` -> `io.lionweb.mps.specific.lang.MPS-specific annotations.Deprecated` [[instance-json]] == MPS Instance Model ↔ JSON diff --git a/languages/io.lionweb.mps.converter.TestDeprecated/io.lionweb.mps.converter.TestDeprecated.mpl b/languages/io.lionweb.mps.converter.TestDeprecated/io.lionweb.mps.converter.TestDeprecated.mpl new file mode 100644 index 0000000..d0e7cc6 --- /dev/null +++ b/languages/io.lionweb.mps.converter.TestDeprecated/io.lionweb.mps.converter.TestDeprecated.mpl @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/languages/io.lionweb.mps.converter.TestDeprecated/models/io.lionweb.mps.converter.TestDeprecated.behavior.mps b/languages/io.lionweb.mps.converter.TestDeprecated/models/io.lionweb.mps.converter.TestDeprecated.behavior.mps new file mode 100644 index 0000000..55c7150 --- /dev/null +++ b/languages/io.lionweb.mps.converter.TestDeprecated/models/io.lionweb.mps.converter.TestDeprecated.behavior.mps @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/languages/io.lionweb.mps.converter.TestDeprecated/models/io.lionweb.mps.converter.TestDeprecated.structure.mps b/languages/io.lionweb.mps.converter.TestDeprecated/models/io.lionweb.mps.converter.TestDeprecated.structure.mps new file mode 100644 index 0000000..775ff97 --- /dev/null +++ b/languages/io.lionweb.mps.converter.TestDeprecated/models/io.lionweb.mps.converter.TestDeprecated.structure.mps @@ -0,0 +1,150 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.editor.mps b/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.editor.mps index 5887193..081f643 100644 --- a/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.editor.mps +++ b/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.editor.mps @@ -257,6 +257,15 @@ + + + + + + + + + diff --git a/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.intentions.mps b/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.intentions.mps index ddf5f93..88ed3b8 100644 --- a/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.intentions.mps +++ b/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.intentions.mps @@ -2175,6 +2175,22 @@ + + + + + + + + + + + + + + + + diff --git a/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.structure.mps b/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.structure.mps index 7ac4be4..ca3b3b5 100644 --- a/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.structure.mps +++ b/languages/io.lionweb.mps.converter.lang/models/io.lionweb.mps.converter.lang.structure.mps @@ -228,6 +228,11 @@ + + + + + diff --git a/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.lang.mps b/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.lang.mps index 02d7fff..26261d7 100644 --- a/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.lang.mps +++ b/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.lang.mps @@ -85,6 +85,23 @@ + + + + + + + + + + + + + + + + + diff --git a/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.structure.mps b/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.structure.mps index d620041..624229e 100644 --- a/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.structure.mps +++ b/languages/io.lionweb.mps.specific/models/io.lionweb.mps.specific.structure.mps @@ -141,5 +141,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/io.lionweb.mps.build/models/io.lionweb.mps.build.mps b/solutions/io.lionweb.mps.build/models/io.lionweb.mps.build.mps index 3a2ce62..1d881ff 100644 --- a/solutions/io.lionweb.mps.build/models/io.lionweb.mps.build.mps +++ b/solutions/io.lionweb.mps.build/models/io.lionweb.mps.build.mps @@ -3530,6 +3530,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/io.lionweb.mps.converter.test/models/io.lionweb.mps.converter.test.converter@tests.mps b/solutions/io.lionweb.mps.converter.test/models/io.lionweb.mps.converter.test.converter@tests.mps index 5711449..ec43552 100644 --- a/solutions/io.lionweb.mps.converter.test/models/io.lionweb.mps.converter.test.converter@tests.mps +++ b/solutions/io.lionweb.mps.converter.test/models/io.lionweb.mps.converter.test.converter@tests.mps @@ -24,6 +24,12 @@ + + + + + + @@ -151,9 +157,15 @@ + + + + + + @@ -3718,5 +3730,24 @@ + + + + + + + + + + + + + + + + + + + diff --git a/solutions/io.lionweb.mps.converter/models/io.lionweb.mps.converter.util.mps b/solutions/io.lionweb.mps.converter/models/io.lionweb.mps.converter.util.mps index d1b259e..11fdaa4 100644 --- a/solutions/io.lionweb.mps.converter/models/io.lionweb.mps.converter.util.mps +++ b/solutions/io.lionweb.mps.converter/models/io.lionweb.mps.converter.util.mps @@ -2140,10 +2140,6 @@ - - - - diff --git a/solutions/io.lionweb.mps.json.test/models/io.lionweb.mps.json.test.json2slanguage@tests.mps b/solutions/io.lionweb.mps.json.test/models/io.lionweb.mps.json.test.json2slanguage@tests.mps index b49ffd5..e72570c 100644 --- a/solutions/io.lionweb.mps.json.test/models/io.lionweb.mps.json.test.json2slanguage@tests.mps +++ b/solutions/io.lionweb.mps.json.test/models/io.lionweb.mps.json.test.json2slanguage@tests.mps @@ -1046,6 +1046,172 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/io.lionweb.mps.json.test/resources/MpsDeprecated-metamodel-special.json b/solutions/io.lionweb.mps.json.test/resources/MpsDeprecated-metamodel-special.json new file mode 100644 index 0000000..e270c77 --- /dev/null +++ b/solutions/io.lionweb.mps.json.test/resources/MpsDeprecated-metamodel-special.json @@ -0,0 +1,949 @@ +{ + "serializationFormatVersion": "2023.1", + "languages": [ + { + "key": "LionCore-M3", + "version": "2023.1" + }, + { + "key": "LionCore-builtins", + "version": "2023.1" + }, + { + "key": "io-lionweb-mps-specific", + "version": "0" + } + ], + "nodes": [ + { + "id": "7815243479487993447", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprConcept build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprConcept comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "id": "7815243479487993451", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprProp build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprProp comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ0OQ" + }, + { + "id": "7815243479487993456", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprIface build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprIface comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU" + }, + { + "id": "7815243479487993464", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprAnnotation build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprAnnotation comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE" + }, + { + "id": "7815243479487993467", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprChild build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprChild comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1Mw" + }, + { + "id": "7815243479487993469", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprRef build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprRef comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1OA" + }, + { + "id": "7815243479487993473", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprEnum build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprEnum comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE" + }, + { + "id": "7815243479487993485", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": "deprDatatype build" + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": "deprDatatype comment" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0ODQ" + }, + { + "id": "7815243479507587642", + "classifier": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated" + }, + "properties": [ + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-build" + }, + "value": null + }, + { + "property": { + "language": "io-lionweb-mps-specific", + "version": "0", + "key": "Deprecated-comment" + }, + "value": null + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk1MDc1ODcyODk" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language-version" + }, + "value": "0" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "io.lionweb.mps.converter.TestDeprecated" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language-entities" + }, + "children": [ + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0ODQ", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk1MDc1ODcyODk" + ] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language-dependsOn" + }, + "targets": [] + } + ], + "annotations": [], + "parent": null + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-abstract" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-partition" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprConcept" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [ + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ0OQ", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1Mw", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1OA" + ] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-extends" + }, + "targets": [ + { + "resolveInfo": "Node", + "reference": "LionCore-builtins-Node" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-implements" + }, + "targets": [] + } + ], + "annotations": [ + "7815243479487993447" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ0OQ", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ0OQ" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "deprProp" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property-type" + }, + "targets": [ + { + "resolveInfo": "String", + "reference": "LionCore-builtins-String" + } + ] + } + ], + "annotations": [ + "7815243479487993451" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1Mw", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Containment" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1Mw" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-multiple" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "deprChild" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-type" + }, + "targets": [ + { + "resolveInfo": "DeprIface", + "reference": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU" + } + ] + } + ], + "annotations": [ + "7815243479487993467" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1OA", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Reference" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1OA" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-multiple" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "deprRef" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-type" + }, + "targets": [ + { + "resolveInfo": "DeprAnnotation", + "reference": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE" + } + ] + } + ], + "annotations": [ + "7815243479487993469" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Interface" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprIface" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Interface-extends" + }, + "targets": [] + } + ], + "annotations": [ + "7815243479487993456" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprAnnotation" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-annotates" + }, + "targets": [ + { + "resolveInfo": "Node", + "reference": "LionCore-builtins-Node" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-extends" + }, + "targets": [] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-implements" + }, + "targets": [] + } + ], + "annotations": [ + "7815243479487993464" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Enumeration" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprEnum" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Enumeration-literals" + }, + "children": [ + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3Mg", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3NQ" + ] + } + ], + "references": [], + "annotations": [ + "7815243479487993473" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3Mg", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "EnumerationLiteral" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3Mg" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "A" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3NQ", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "EnumerationLiteral" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3NQ" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "B" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0ODQ", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "PrimitiveType" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0ODQ" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprDatatype" + } + ], + "containments": [], + "references": [], + "annotations": [ + "7815243479487993485" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk1MDc1ODcyODk", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-abstract" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-partition" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk1MDc1ODcyODk" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprNoComment" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-extends" + }, + "targets": [ + { + "resolveInfo": "Node", + "reference": "LionCore-builtins-Node" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-implements" + }, + "targets": [] + } + ], + "annotations": [ + "7815243479507587642" + ], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + } + ] +} \ No newline at end of file diff --git a/solutions/io.lionweb.mps.json.test/resources/MpsDeprecated-metamodel.json b/solutions/io.lionweb.mps.json.test/resources/MpsDeprecated-metamodel.json new file mode 100644 index 0000000..7614c55 --- /dev/null +++ b/solutions/io.lionweb.mps.json.test/resources/MpsDeprecated-metamodel.json @@ -0,0 +1,657 @@ +{ + "serializationFormatVersion": "2023.1", + "languages": [ + { + "key": "LionCore-M3", + "version": "2023.1" + }, + { + "key": "LionCore-builtins", + "version": "2023.1" + } + ], + "nodes": [ + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language-version" + }, + "value": "0" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "io.lionweb.mps.converter.TestDeprecated" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language-entities" + }, + "children": [ + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0ODQ", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk1MDc1ODcyODk" + ] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Language-dependsOn" + }, + "targets": [] + } + ], + "annotations": [], + "parent": null + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-abstract" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-partition" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprConcept" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [ + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ0OQ", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1Mw", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1OA" + ] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-extends" + }, + "targets": [ + { + "resolveInfo": "Node", + "reference": "LionCore-builtins-Node" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-implements" + }, + "targets": [] + } + ], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ0OQ", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ0OQ" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "deprProp" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property-type" + }, + "targets": [ + { + "resolveInfo": "String", + "reference": "LionCore-builtins-String" + } + ] + } + ], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1Mw", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Containment" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1Mw" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-multiple" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "deprChild" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-type" + }, + "targets": [ + { + "resolveInfo": "DeprIface", + "reference": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU" + } + ] + } + ], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1OA", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Reference" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDYvNzgxNTI0MzQ3OTQ4Nzk5MzQ1OA" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-multiple" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "deprRef" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Link-type" + }, + "targets": [ + { + "resolveInfo": "DeprAnnotation", + "reference": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE" + } + ] + } + ], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NDY" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Interface" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NTU" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprIface" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Interface-extends" + }, + "targets": [] + } + ], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NjE" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprAnnotation" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-annotates" + }, + "targets": [ + { + "resolveInfo": "Node", + "reference": "LionCore-builtins-Node" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-extends" + }, + "targets": [] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-implements" + }, + "targets": [] + } + ], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Enumeration" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprEnum" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Enumeration-literals" + }, + "children": [ + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3Mg", + "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3NQ" + ] + } + ], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3Mg", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "EnumerationLiteral" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3Mg" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "A" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3NQ", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "EnumerationLiteral" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzEvNzgxNTI0MzQ3OTQ4Nzk5MzQ3NQ" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "B" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0NzE" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0ODQ", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "PrimitiveType" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk0ODc5OTM0ODQ" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprDatatype" + } + ], + "containments": [], + "references": [], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + }, + { + "id": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk1MDc1ODcyODk", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-abstract" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-partition" + }, + "value": "false" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBhLzc4MTUyNDM0Nzk1MDc1ODcyODk" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "DeprNoComment" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-extends" + }, + "targets": [ + { + "resolveInfo": "Node", + "reference": "LionCore-builtins-Node" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Concept-implements" + }, + "targets": [] + } + ], + "annotations": [], + "parent": "MDkzNjAxODQtODU5OC00NGU3LTliZjUtZmIxY2U0NWE0ODBh" + } + ] +} \ No newline at end of file diff --git a/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel-annotated.json b/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel-annotated.json index 5aa4c37..6822b2d 100644 --- a/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel-annotated.json +++ b/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel-annotated.json @@ -191,6 +191,182 @@ "annotations": [], "parent": "ConceptDescription" }, + { + "id": "Deprecated", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "Deprecated" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "Deprecated" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [ + "Deprecated-build", + "Deprecated-comment" + ] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-annotates" + }, + "targets": [ + { + "resolveInfo": "IKeyed", + "reference": "-id-IKeyed" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-extends" + }, + "targets": [] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-implements" + }, + "targets": [] + } + ], + "annotations": [], + "parent": "io-lionweb-mps-specific" + }, + { + "id": "Deprecated-build", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "Deprecated-build" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "build" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property-type" + }, + "targets": [ + { + "resolveInfo": "String", + "reference": "LionCore-builtins-String" + } + ] + } + ], + "annotations": [], + "parent": "Deprecated" + }, + { + "id": "Deprecated-comment", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "Deprecated-comment" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "comment" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property-type" + }, + "targets": [ + { + "resolveInfo": "String", + "reference": "LionCore-builtins-String" + } + ] + } + ], + "annotations": [], + "parent": "Deprecated" + }, { "id": "ShortDescription", "classifier": { @@ -494,6 +670,7 @@ }, "children": [ "ConceptDescription", + "Deprecated", "ShortDescription", "VirtualPackage" ] diff --git a/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel.json b/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel.json index 1967cf2..9ea8781 100644 --- a/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel.json +++ b/solutions/io.lionweb.mps.json.test/resources/MpsSpecific-metamodel.json @@ -187,6 +187,182 @@ "annotations": [], "parent": "ConceptDescription" }, + { + "id": "Deprecated", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "Deprecated" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "Deprecated" + } + ], + "containments": [ + { + "containment": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Classifier-features" + }, + "children": [ + "Deprecated-build", + "Deprecated-comment" + ] + } + ], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-annotates" + }, + "targets": [ + { + "resolveInfo": "IKeyed", + "reference": "-id-IKeyed" + } + ] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-extends" + }, + "targets": [] + }, + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Annotation-implements" + }, + "targets": [] + } + ], + "annotations": [], + "parent": "io-lionweb-mps-specific" + }, + { + "id": "Deprecated-build", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "Deprecated-build" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "build" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property-type" + }, + "targets": [ + { + "resolveInfo": "String", + "reference": "LionCore-builtins-String" + } + ] + } + ], + "annotations": [], + "parent": "Deprecated" + }, + { + "id": "Deprecated-comment", + "classifier": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property" + }, + "properties": [ + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Feature-optional" + }, + "value": "true" + }, + { + "property": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "IKeyed-key" + }, + "value": "Deprecated-comment" + }, + { + "property": { + "language": "LionCore-builtins", + "version": "2023.1", + "key": "LionCore-builtins-INamed-name" + }, + "value": "comment" + } + ], + "containments": [], + "references": [ + { + "reference": { + "language": "LionCore-M3", + "version": "2023.1", + "key": "Property-type" + }, + "targets": [ + { + "resolveInfo": "String", + "reference": "LionCore-builtins-String" + } + ] + } + ], + "annotations": [], + "parent": "Deprecated" + }, { "id": "ShortDescription", "classifier": { @@ -426,6 +602,7 @@ }, "children": [ "ConceptDescription", + "Deprecated", "ShortDescription", "VirtualPackage" ] diff --git a/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.language.mps b/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.language.mps index 52b1017..3213ee2 100644 --- a/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.language.mps +++ b/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.language.mps @@ -868,6 +868,12 @@ + + + + + + @@ -2391,6 +2397,20 @@ + + + + + + + + + + + + + + @@ -4552,6 +4572,21 @@ + + + + + + + + + + + + + + + @@ -5024,6 +5059,21 @@ + + + + + + + + + + + + + + + @@ -5147,6 +5197,21 @@ + + + + + + + + + + + + + + + @@ -5268,6 +5333,21 @@ + + + + + + + + + + + + + + + @@ -5371,7 +5451,6 @@ - @@ -5430,6 +5509,21 @@ + + + + + + + + + + + + + + + @@ -5646,6 +5740,22 @@ + + + + + + + + + + + + + + + + @@ -5763,6 +5873,9 @@ + + + @@ -5798,6 +5911,9 @@ + + + @@ -5844,7 +5960,7 @@ - + @@ -5873,7 +5989,7 @@ - + @@ -5911,21 +6027,321 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + + @@ -5940,7 +6356,7 @@ - + @@ -5960,7 +6376,7 @@ - + @@ -5979,7 +6395,7 @@ - + @@ -5987,10 +6403,13 @@ + + + - + @@ -6003,6 +6422,9 @@ + + + @@ -6158,6 +6580,9 @@ + + + @@ -6398,6 +6823,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.mps b/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.mps index d59b311..eb08e7e 100644 --- a/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.mps +++ b/solutions/io.lionweb.mps.json/models/io.lionweb.mps.json.mps @@ -3698,6 +3698,25 @@ + + + + + + + + + + + + + + + + + + + @@ -3922,6 +3941,29 @@ + + + + + + + + + + + + + + + + + + + + + + + @@ -4023,6 +4065,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -5481,6 +5547,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5680,6 +5812,28 @@ + + + + + + + + + + + + + + + + + + + + + + @@ -5693,6 +5847,13 @@ + + + + + + + @@ -5708,6 +5869,13 @@ + + + + + + + @@ -5723,6 +5891,13 @@ + + + + + + + @@ -5738,6 +5913,13 @@ + + + + + + + @@ -5813,6 +5995,20 @@ + + + + + + + + + + + + + + @@ -5939,6 +6135,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -5962,6 +6200,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6678,6 +6953,251 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6806,6 +7326,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -7052,6 +7644,12 @@ + + + + + + @@ -7072,6 +7670,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -7208,6 +7830,12 @@ + + + + + + @@ -7383,10 +8011,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/solutions/io.lionweb.mps.m3.runtime/models/io.lionweb.mps.m3.runtime.mps b/solutions/io.lionweb.mps.m3.runtime/models/io.lionweb.mps.m3.runtime.mps index 903be2d..26c219d 100644 --- a/solutions/io.lionweb.mps.m3.runtime/models/io.lionweb.mps.m3.runtime.mps +++ b/solutions/io.lionweb.mps.m3.runtime/models/io.lionweb.mps.m3.runtime.mps @@ -438,6 +438,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + @@ -446,6 +470,14 @@ + + + + + + + + @@ -936,6 +968,378 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1492,6 +1896,12 @@ + + + + + + @@ -1501,6 +1911,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1582,6 +2019,12 @@ + + + + + + @@ -1627,6 +2070,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -1647,6 +2150,26 @@ + + + + + + + + + + + + + + + + + + + + @@ -5894,7 +6417,162 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6048,6 +6726,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -6333,6 +7063,24 @@ + + + + + + + + + + + + + + + + + +