Search in sources :

Example 1 with Column

use of org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.Column in project legend-pure by finos.

the class ConcreteFunctionDefinitionNameProcessor method process.

public static void process(Function<?> function, ModelRepository repository, ProcessorSupport processorSupport) throws PureCompilationException {
    Package parent = function._package();
    if (parent != null) {
        // Make sure we have a unique name for overloaded functions.
        String signature = getSignatureAndResolveImports(function, repository, processorSupport);
        parent._childrenRemove(function);
        function.setName(signature);
        parent._childrenAdd(function);
        if (function._name() == null) {
            function._name(signature);
        }
        if (parent._children().count(c -> signature.equals(c.getName())) > 1) {
            ListIterable<SourceInformation> sourceInfos = parent._children().collectIf(c -> signature.equals(c.getName()), CoreInstance::getSourceInformation, Lists.mutable.empty()).sortThis();
            String pkg = PackageableElement.getUserPathForPackageableElement(parent);
            if (M3Paths.Root.equals(pkg)) {
                pkg = "::";
            }
            StringBuilder message = new StringBuilder("The function '").append(signature).append("' is defined more than once in the package '").append(pkg).append("' at: ");
            boolean first = true;
            for (SourceInformation sourceInfo : sourceInfos) {
                if (first) {
                    first = false;
                } else {
                    message.append(", ");
                }
                message.append(sourceInfo.getSourceId()).append(" (line:").append(sourceInfo.getLine()).append(" column:").append(sourceInfo.getColumn()).append(')');
            }
            throw new PureCompilationException(function.getSourceInformation(), message.toString());
        }
    }
}
Also used : Multiplicity(org.finos.legend.pure.m3.navigation.multiplicity.Multiplicity) VariableExpression(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.valuespecification.VariableExpression) PackageableElement(org.finos.legend.pure.m3.navigation.PackageableElement.PackageableElement) ModelRepository(org.finos.legend.pure.m4.ModelRepository) SourceInformation(org.finos.legend.pure.m4.coreinstance.SourceInformation) Lists(org.eclipse.collections.api.factory.Lists) CoreInstance(org.finos.legend.pure.m4.coreinstance.CoreInstance) MutableList(org.eclipse.collections.api.list.MutableList) Type(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.Type) M3Paths(org.finos.legend.pure.m3.navigation.M3Paths) ProcessorSupport(org.finos.legend.pure.m3.navigation.ProcessorSupport) FunctionType(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.FunctionType) Function(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.function.Function) GenericType(org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.generics.GenericType) ImportStub(org.finos.legend.pure.m3.navigation.importstub.ImportStub) Package(org.finos.legend.pure.m3.coreinstance.Package) ListIterable(org.eclipse.collections.api.list.ListIterable) PureCompilationException(org.finos.legend.pure.m4.exception.PureCompilationException) Package(org.finos.legend.pure.m3.coreinstance.Package) SourceInformation(org.finos.legend.pure.m4.coreinstance.SourceInformation) PureCompilationException(org.finos.legend.pure.m4.exception.PureCompilationException)

Example 2 with Column

use of org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.Column in project legend-pure by finos.

the class AbstractTestCast method checkInvalidTypeCastErrorMessage.

public void checkInvalidTypeCastErrorMessage(Exception e, String message, int line, int column) {
    PureException pe = PureException.findPureException(e);
    Assert.assertNotNull(pe);
    Assert.assertTrue(pe instanceof PureExecutionException);
    Assert.assertEquals(message, pe.getInfo());
    SourceInformation sourceInfo = pe.getSourceInformation();
    Assert.assertNotNull(sourceInfo);
    Assert.assertEquals(line, sourceInfo.getLine());
    Assert.assertEquals(column, sourceInfo.getColumn());
}
Also used : PureException(org.finos.legend.pure.m4.exception.PureException) PureExecutionException(org.finos.legend.pure.m3.exception.PureExecutionException) SourceInformation(org.finos.legend.pure.m4.coreinstance.SourceInformation)

Example 3 with Column

use of org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.Column in project legend-pure by finos.

the class TestMilestonedPropertyUsageInFunctionExpressions method testAllVersionsInRangePropertyUsageForCrossTemporal.

@ToFix
@Ignore
@Test
public void testAllVersionsInRangePropertyUsageForCrossTemporal() {
    runtime.createInMemorySource("test.pure", "import meta::test::milestoning::domain::*;\n" + "Class <<temporal.businesstemporal>> meta::test::milestoning::domain::Product{\n" + "   classification : Classification[*];\n" + "}\n" + "Class  <<temporal.processingtemporal>> meta::test::milestoning::domain::Classification{\n" + "   exchangeName : String[0..1];\n" + "}\n" + "function go():Any[*]\n" + "{\n" + "   {|Product.allVersionsInRange(%2018-1-1, %2018-1-9).classificationAllVersionsInRange(%2018-1-1, %2018-1-9)}\n" + "}\n");
    runtime.compile();
    runtime.modify("test.pure", "import meta::test::milestoning::domain::*;\n" + "Class <<temporal.bitemporal>> meta::test::milestoning::domain::Product{\n" + "   classification : Classification[*];\n" + "}\n" + "Class  <<temporal.businesstemporal>> meta::test::milestoning::domain::Classification{\n" + "   exchangeName : String[0..1];\n" + "}\n" + "function go():Any[*]\n" + "{\n" + "   {|Product.all(%2018-1-1, %2018-1-9).classificationAllVersionsInRange(%2018-1-1, %2018-1-9)}\n" + "}\n");
    runtime.compile();
    runtime.modify("test.pure", "import meta::test::milestoning::domain::*;\n" + "Class <<temporal.bitemporal>> meta::test::milestoning::domain::Product{\n" + "   classification : Classification[*];\n" + "}\n" + "Class  <<temporal.processingtemporal>> meta::test::milestoning::domain::Classification{\n" + "   exchangeName : String[0..1];\n" + "}\n" + "function go():Any[*]\n" + "{\n" + "   {|Product.all(%2018-1-1, %2018-1-9).classificationAllVersionsInRange(%2018-1-1, %2018-1-9)}\n" + "}\n");
    runtime.compile();
    runtime.modify("test.pure", "import meta::test::milestoning::domain::*;\n" + "Class <<temporal.businesstemporal>> meta::test::milestoning::domain::Product{\n" + "   classification : Classification[*];\n" + "}\n" + "Class  <<temporal.bitemporal>> meta::test::milestoning::domain::Classification{\n" + "   exchangeName : String[0..1];\n" + "}\n" + "function go():Any[*]\n" + "{\n" + "   {|Product.allVersionsInRange(%2018-1-1, %2018-1-9).classificationAllVersionsInRange(%2018-1-1, %2018-1-9)}\n" + "}\n");
    PureCompilationException e1 = Assert.assertThrows(PureCompilationException.class, runtime::compile);
    Assert.assertEquals("Compilation error at (resource:test.pure line:10 column:55), \"The system can't find a match for the function: classificationAllVersionsInRange(_:Product[1],_:StrictDate[1],_:StrictDate[1])", e1.getMessage());
    runtime.modify("test.pure", "import meta::test::milestoning::domain::*;\n" + "Class <<temporal.processingtemporal>> meta::test::milestoning::domain::Product{\n" + "   classification : Classification[*];\n" + "}\n" + "Class  <<temporal.bitemporal>> meta::test::milestoning::domain::Classification{\n" + "   exchangeName : String[0..1];\n" + "}\n" + "function go():Any[*]\n" + "{\n" + "   {|Product.allVersionsInRange(%2018-1-1, %2018-1-9).classificationAllVersionsInRange(%2018-1-1, %2018-1-9)}\n" + "}\n");
    PureCompilationException e2 = Assert.assertThrows(PureCompilationException.class, runtime::compile);
    Assert.assertEquals("Compilation error at (resource:test.pure line:10 column:55), \"The system can't find a match for the function: classificationAllVersionsInRange(_:Product[1],_:StrictDate[1],_:StrictDate[1])", e2.getMessage());
    runtime.modify("test.pure", "import meta::test::milestoning::domain::*;\n" + "Class <<temporal.processingtemporal>> meta::test::milestoning::domain::Product{\n" + "   classification : Classification[*];\n" + "}\n" + "Class  <<temporal.businesstemporal>> meta::test::milestoning::domain::Classification{\n" + "   exchangeName : String[0..1];\n" + "}\n" + "function go():Any[*]\n" + "{\n" + "   {|Product.allVersionsInRange(%2018-1-1, %2018-1-9).classificationAllVersionsInRange(%2018-1-1, %2018-1-9)}\n" + "}\n");
    runtime.compile();
}
Also used : PureCompilationException(org.finos.legend.pure.m4.exception.PureCompilationException) Ignore(org.junit.Ignore) Test(org.junit.Test) ToFix(org.finos.legend.pure.m3.tools.test.ToFix)

Example 4 with Column

use of org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.Column in project legend-pure by finos.

the class TestSimpleGrammar method testTable.

@Test
public void testTable() {
    Loader.parseM3("Class Employee\n" + "{\n" + "    name : String[1];\n" + "}\n" + "\n" + "###Relational\n" + "Database pack::myDatabase (\n" + "/* Comment */\n" + "Table employeeTable\n" + "(\n" + "    id INT PRIMARY KEY,\n" + "    name VARCHAR(200)\n" + ")\n" + "Table firmTable\n" + "(\n" + "    id INT PRIMARY KEY,\n" + "    name VARCHAR(200)\n" + "))\n" + "###Pure\n" + "import pack::*;\n" + "function test():Boolean[1]\n" + "{\n" + "    let et = myDatabase.schema('default').table('employeeTable');\n" + "    assert('employeeTable' == $et.name, |'');\n" + "    assert($et.columns->size() == 2, |'');\n" + "    assert(['id', 'name'] == $et.columns->cast(@meta::relational::metamodel::Column)->map(c | $c.name), |'');\n" + "    let ft = myDatabase.schema('default').table('firmTable');\n" + "    assert('firmTable' == $ft.name, |'');\n" + "    assert(['id', 'name'] == $ft.columns->cast(@meta::relational::metamodel::Column)->map(c | $c.name), |'');\n" + "}\n", this.repository, new ParserLibrary(Lists.immutable.with(new M3AntlrParser(), new RelationalParser())), ValidationType.DEEP, VoidM3M4StateListener.VOID_M3_M4_STATE_LISTENER, this.context);
    this.runtime.compile();
    CoreInstance db = this.graphWalker.getDbInstance("pack::myDatabase");
    Assert.assertNotNull(db);
    CoreInstance defaultSchema = this.graphWalker.getDefaultSchema(db);
    Assert.assertNotNull(defaultSchema);
    Assert.assertNotNull(this.graphWalker.getTable(defaultSchema, "employeeTable"));
    Assert.assertNotNull(this.graphWalker.getTable(defaultSchema, "firmTable"));
    CoreInstance employeeTable = this.graphWalker.getTable(defaultSchema, "employeeTable");
    CoreInstance firmTable = this.graphWalker.getTable(defaultSchema, "firmTable");
    ListIterable<? extends CoreInstance> employeeTableColumns = this.graphWalker.getColumns(employeeTable);
    ListIterable<? extends CoreInstance> firmTableColumns = this.graphWalker.getColumns(firmTable);
    Assert.assertEquals(2, employeeTableColumns.size());
    Assert.assertEquals(2, firmTableColumns.size());
    Assert.assertNotNull(this.graphWalker.getColumn(employeeTable, "id"));
    Assert.assertNotNull(this.graphWalker.getColumn(employeeTable, "name"));
    Assert.assertNotNull(this.graphWalker.getColumn(firmTable, "id"));
    Assert.assertNotNull(this.graphWalker.getColumn(firmTable, "name"));
}
Also used : ParserLibrary(org.finos.legend.pure.m3.serialization.grammar.ParserLibrary) M3AntlrParser(org.finos.legend.pure.m3.serialization.grammar.m3parser.antlr.M3AntlrParser) CoreInstance(org.finos.legend.pure.m4.coreinstance.CoreInstance) RelationalParser(org.finos.legend.pure.m2.relational.serialization.grammar.v1.RelationalParser) Test(org.junit.Test)

Example 5 with Column

use of org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.Column in project legend-pure by finos.

the class TestSimpleGrammar method testMappingScope.

@Test
public void testMappingScope() {
    Loader.parseM3("import other::*;\n" + "\n" + "Class other::Person\n" + "{\n" + "    name : String[1];\n" + "    id : Integer[1];" + "    other : String[1];" + "}\n" + "###Relational\n" + "Database mapping::pack::db" + "(" + "    Table employeeTable\n" + "    (\n" + "        id INT PRIMARY KEY,\n" + "        name VARCHAR(200),\n" + "        other VARCHAR(200),\n" + "        firmId INT\n" + "    )" + ")\n" + "###Mapping\n" + "import mapping::pack::*;\n" + "Mapping mappingPackage::myMapping\n" + "(\n" + " /* comment */\n" + "    other::Person: Relational\n" + "            {" + "                scope([db])" + "                (" + "                    name : employeeTable.name\n" + "                )," + "                scope([db]default.employeeTable)" + "                (" + "                    id : id" + "                )," + "                scope([db]employeeTable)" + "                (" + "                    other : other" + "                )" + "            }\n" + ")\n", this.repository, new ParserLibrary(Lists.immutable.with(new M3AntlrParser(), new MappingParser(), new RelationalParser())), ValidationType.DEEP, VoidM3M4StateListener.VOID_M3_M4_STATE_LISTENER, this.context);
    this.runtime.compile();
    CoreInstance mapping = this.runtime.getCoreInstance("mappingPackage::myMapping");
    CoreInstance personClassMappingImplementation = Instance.getValueForMetaPropertyToManyResolved(mapping, "classMappings", this.processorSupport).getFirst();
    ListIterable<? extends CoreInstance> personClassMappingImplementationPropertyMappings = Instance.getValueForMetaPropertyToManyResolved(personClassMappingImplementation, "propertyMappings", this.processorSupport);
    final StringBuilder sb = new StringBuilder("[\n");
    personClassMappingImplementationPropertyMappings.forEach(new Procedure<CoreInstance>() {

        @Override
        public void value(CoreInstance each) {
            CoreInstance relationalOperationElement = Instance.getValueForMetaPropertyToOneResolved(each, "relationalOperationElement", TestSimpleGrammar.this.processorSupport);
            Printer.print(sb, relationalOperationElement, 3);
            sb.append("\n");
        }
    });
    final String mappingGraphDump = sb.append("]").toString();
    Assert.assertEquals("[\n" + "Anonymous_StripedId instance TableAliasColumn\n" + "    alias(Property):\n" + "        Anonymous_StripedId instance TableAlias\n" + "            database(Property):\n" + "                [~>] db instance Database\n" + "            name(Property):\n" + "                employeeTable instance String\n" + "            relationalElement(Property):\n" + "                Anonymous_StripedId instance Table\n" + "                    columns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    milestoning(Property):\n" + "                    name(Property):\n" + "                        employeeTable instance String\n" + "                    primaryKey(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    schema(Property):\n" + "                        Anonymous_StripedId instance Schema\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3] default instance String\n" + "                            relations(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            tables(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            views(Property):\n" + "                    setColumns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    temporaryTable(Property):\n" + "                        false instance Boolean\n" + "    column(Property):\n" + "        Anonymous_StripedId instance Column\n" + "            name(Property):\n" + "                name instance String\n" + "            nullable(Property):\n" + "                true instance Boolean\n" + "            owner(Property):\n" + "                Anonymous_StripedId instance Table\n" + "                    columns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        [_] Anonymous_StripedId instance Column\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    milestoning(Property):\n" + "                    name(Property):\n" + "                        employeeTable instance String\n" + "                    primaryKey(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    schema(Property):\n" + "                        Anonymous_StripedId instance Schema\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3] default instance String\n" + "                            relations(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            tables(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            views(Property):\n" + "                    setColumns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        [_] Anonymous_StripedId instance Column\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    temporaryTable(Property):\n" + "                        false instance Boolean\n" + "            type(Property):\n" + "                Anonymous_StripedId instance Varchar\n" + "                    size(Property):\n" + "                        200 instance Integer\n" + "    columnName(Property):\n" + "        name instance String\n" + "    setMappingOwner(Property):\n" + "        Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "            class(Property):\n" + "                [~>] other::Person instance Class\n" + "            distinct(Property):\n" + "                false instance Boolean\n" + "            id(Property):\n" + "                other_Person instance String\n" + "            mainTableAlias(Property):\n" + "                Anonymous_StripedId instance TableAlias\n" + "                    database(Property):\n" + "                        [X] db instance Database\n" + "                    name(Property):\n" + "                         instance String\n" + "                    relationalElement(Property):\n" + "                        Anonymous_StripedId instance Table\n" + "                            columns(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            milestoning(Property):\n" + "                            name(Property):\n" + "                                [>3] employeeTable instance String\n" + "                            primaryKey(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            schema(Property):\n" + "                                [>3] Anonymous_StripedId instance Schema\n" + "                            setColumns(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            temporaryTable(Property):\n" + "                                [>3] false instance Boolean\n" + "            parent(Property):\n" + "                [~>] mappingPackage::myMapping instance Mapping\n" + "            primaryKey(Property):\n" + "                Anonymous_StripedId instance TableAliasColumn\n" + "                    alias(Property):\n" + "                        Anonymous_StripedId instance TableAlias\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3]  instance String\n" + "                            relationalElement(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                    column(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "            propertyMappings(Property):\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        name instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        [_] Anonymous_StripedId instance TableAliasColumn\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        id instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        Anonymous_StripedId instance TableAliasColumn\n" + "                            alias(Property):\n" + "                                [>3] Anonymous_StripedId instance TableAlias\n" + "                            column(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            columnName(Property):\n" + "                                [>3] id instance String\n" + "                            setMappingOwner(Property):\n" + "                                [>3] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        other instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        Anonymous_StripedId instance TableAliasColumn\n" + "                            alias(Property):\n" + "                                [>3] Anonymous_StripedId instance TableAlias\n" + "                            column(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            columnName(Property):\n" + "                                [>3] other instance String\n" + "                            setMappingOwner(Property):\n" + "                                [>3] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "            root(Property):\n" + "                true instance Boolean\n" + "            stores(Property):\n" + "                [X] db instance Database\n" + "            userDefinedPrimaryKey(Property):\n" + "                false instance Boolean\n" + "Anonymous_StripedId instance TableAliasColumn\n" + "    alias(Property):\n" + "        Anonymous_StripedId instance TableAlias\n" + "            database(Property):\n" + "                [~>] db instance Database\n" + "            name(Property):\n" + "                employeeTable instance String\n" + "            relationalElement(Property):\n" + "                Anonymous_StripedId instance Table\n" + "                    columns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    milestoning(Property):\n" + "                    name(Property):\n" + "                        employeeTable instance String\n" + "                    primaryKey(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    schema(Property):\n" + "                        Anonymous_StripedId instance Schema\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3] default instance String\n" + "                            relations(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            tables(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            views(Property):\n" + "                    setColumns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    temporaryTable(Property):\n" + "                        false instance Boolean\n" + "            schema(Property):\n" + "                default instance String\n" + "    column(Property):\n" + "        Anonymous_StripedId instance Column\n" + "            name(Property):\n" + "                id instance String\n" + "            nullable(Property):\n" + "                false instance Boolean\n" + "            owner(Property):\n" + "                Anonymous_StripedId instance Table\n" + "                    columns(Property):\n" + "                        [_] Anonymous_StripedId instance Column\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    milestoning(Property):\n" + "                    name(Property):\n" + "                        employeeTable instance String\n" + "                    primaryKey(Property):\n" + "                        [_] Anonymous_StripedId instance Column\n" + "                    schema(Property):\n" + "                        Anonymous_StripedId instance Schema\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3] default instance String\n" + "                            relations(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            tables(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            views(Property):\n" + "                    setColumns(Property):\n" + "                        [_] Anonymous_StripedId instance Column\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    temporaryTable(Property):\n" + "                        false instance Boolean\n" + "            type(Property):\n" + "                Anonymous_StripedId instance Integer\n" + "    columnName(Property):\n" + "        id instance String\n" + "    setMappingOwner(Property):\n" + "        Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "            class(Property):\n" + "                [~>] other::Person instance Class\n" + "            distinct(Property):\n" + "                false instance Boolean\n" + "            id(Property):\n" + "                other_Person instance String\n" + "            mainTableAlias(Property):\n" + "                Anonymous_StripedId instance TableAlias\n" + "                    database(Property):\n" + "                        [X] db instance Database\n" + "                    name(Property):\n" + "                         instance String\n" + "                    relationalElement(Property):\n" + "                        Anonymous_StripedId instance Table\n" + "                            columns(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            milestoning(Property):\n" + "                            name(Property):\n" + "                                [>3] employeeTable instance String\n" + "                            primaryKey(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            schema(Property):\n" + "                                [>3] Anonymous_StripedId instance Schema\n" + "                            setColumns(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            temporaryTable(Property):\n" + "                                [>3] false instance Boolean\n" + "            parent(Property):\n" + "                [~>] mappingPackage::myMapping instance Mapping\n" + "            primaryKey(Property):\n" + "                Anonymous_StripedId instance TableAliasColumn\n" + "                    alias(Property):\n" + "                        Anonymous_StripedId instance TableAlias\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3]  instance String\n" + "                            relationalElement(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                    column(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "            propertyMappings(Property):\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        name instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        Anonymous_StripedId instance TableAliasColumn\n" + "                            alias(Property):\n" + "                                [>3] Anonymous_StripedId instance TableAlias\n" + "                            column(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            columnName(Property):\n" + "                                [>3] name instance String\n" + "                            setMappingOwner(Property):\n" + "                                [>3] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        id instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        [_] Anonymous_StripedId instance TableAliasColumn\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        other instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        Anonymous_StripedId instance TableAliasColumn\n" + "                            alias(Property):\n" + "                                [>3] Anonymous_StripedId instance TableAlias\n" + "                            column(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            columnName(Property):\n" + "                                [>3] other instance String\n" + "                            setMappingOwner(Property):\n" + "                                [>3] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "            root(Property):\n" + "                true instance Boolean\n" + "            stores(Property):\n" + "                [X] db instance Database\n" + "            userDefinedPrimaryKey(Property):\n" + "                false instance Boolean\n" + "Anonymous_StripedId instance TableAliasColumn\n" + "    alias(Property):\n" + "        Anonymous_StripedId instance TableAlias\n" + "            database(Property):\n" + "                [~>] db instance Database\n" + "            name(Property):\n" + "                employeeTable instance String\n" + "            relationalElement(Property):\n" + "                Anonymous_StripedId instance Table\n" + "                    columns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    milestoning(Property):\n" + "                    name(Property):\n" + "                        employeeTable instance String\n" + "                    primaryKey(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    schema(Property):\n" + "                        Anonymous_StripedId instance Schema\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3] default instance String\n" + "                            relations(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            tables(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            views(Property):\n" + "                    setColumns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    temporaryTable(Property):\n" + "                        false instance Boolean\n" + "    column(Property):\n" + "        Anonymous_StripedId instance Column\n" + "            name(Property):\n" + "                other instance String\n" + "            nullable(Property):\n" + "                true instance Boolean\n" + "            owner(Property):\n" + "                Anonymous_StripedId instance Table\n" + "                    columns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        [_] Anonymous_StripedId instance Column\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    milestoning(Property):\n" + "                    name(Property):\n" + "                        employeeTable instance String\n" + "                    primaryKey(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    schema(Property):\n" + "                        Anonymous_StripedId instance Schema\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3] default instance String\n" + "                            relations(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            tables(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            views(Property):\n" + "                    setColumns(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Varchar\n" + "                        [_] Anonymous_StripedId instance Column\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] firmId instance String\n" + "                            nullable(Property):\n" + "                                [>3] true instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "                    temporaryTable(Property):\n" + "                        false instance Boolean\n" + "            type(Property):\n" + "                Anonymous_StripedId instance Varchar\n" + "                    size(Property):\n" + "                        200 instance Integer\n" + "    columnName(Property):\n" + "        other instance String\n" + "    setMappingOwner(Property):\n" + "        Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "            class(Property):\n" + "                [~>] other::Person instance Class\n" + "            distinct(Property):\n" + "                false instance Boolean\n" + "            id(Property):\n" + "                other_Person instance String\n" + "            mainTableAlias(Property):\n" + "                Anonymous_StripedId instance TableAlias\n" + "                    database(Property):\n" + "                        [X] db instance Database\n" + "                    name(Property):\n" + "                         instance String\n" + "                    relationalElement(Property):\n" + "                        Anonymous_StripedId instance Table\n" + "                            columns(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            milestoning(Property):\n" + "                            name(Property):\n" + "                                [>3] employeeTable instance String\n" + "                            primaryKey(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            schema(Property):\n" + "                                [>3] Anonymous_StripedId instance Schema\n" + "                            setColumns(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            temporaryTable(Property):\n" + "                                [>3] false instance Boolean\n" + "            parent(Property):\n" + "                [~>] mappingPackage::myMapping instance Mapping\n" + "            primaryKey(Property):\n" + "                Anonymous_StripedId instance TableAliasColumn\n" + "                    alias(Property):\n" + "                        Anonymous_StripedId instance TableAlias\n" + "                            database(Property):\n" + "                                [X] db instance Database\n" + "                            name(Property):\n" + "                                [>3]  instance String\n" + "                            relationalElement(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                    column(Property):\n" + "                        Anonymous_StripedId instance Column\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            nullable(Property):\n" + "                                [>3] false instance Boolean\n" + "                            owner(Property):\n" + "                                [>3] Anonymous_StripedId instance Table\n" + "                            type(Property):\n" + "                                [>3] Anonymous_StripedId instance Integer\n" + "            propertyMappings(Property):\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        name instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] name instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        Anonymous_StripedId instance TableAliasColumn\n" + "                            alias(Property):\n" + "                                [>3] Anonymous_StripedId instance TableAlias\n" + "                            column(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            columnName(Property):\n" + "                                [>3] name instance String\n" + "                            setMappingOwner(Property):\n" + "                                [>3] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        id instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] id instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        Anonymous_StripedId instance TableAliasColumn\n" + "                            alias(Property):\n" + "                                [>3] Anonymous_StripedId instance TableAlias\n" + "                            column(Property):\n" + "                                [>3] Anonymous_StripedId instance Column\n" + "                            columnName(Property):\n" + "                                [>3] id instance String\n" + "                            setMappingOwner(Property):\n" + "                                [>3] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "                Anonymous_StripedId instance RelationalPropertyMapping\n" + "                    localMappingProperty(Property):\n" + "                        false instance Boolean\n" + "                    owner(Property):\n" + "                        [_] Anonymous_StripedId instance RootRelationalInstanceSetImplementation\n" + "                    property(Property):\n" + "                        other instance Property\n" + "                            aggregation(Property):\n" + "                                [>3] None instance AggregationKind\n" + "                            classifierGenericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            genericType(Property):\n" + "                                [>3] Anonymous_StripedId instance GenericType\n" + "                            multiplicity(Property):\n" + "                                [X] PureOne instance PackageableMultiplicity\n" + "                            name(Property):\n" + "                                [>3] other instance String\n" + "                            owner(Property):\n" + "                                [X] Person instance Class\n" + "                            referenceUsages(Property):\n" + "                                [>3] Anonymous_StripedId instance ReferenceUsage\n" + "                    relationalOperationElement(Property):\n" + "                        [_] Anonymous_StripedId instance TableAliasColumn\n" + "                    sourceSetImplementationId(Property):\n" + "                        other_Person instance String\n" + "                    targetSetImplementationId(Property):\n" + "                         instance String\n" + "            root(Property):\n" + "                true instance Boolean\n" + "            stores(Property):\n" + "                [X] db instance Database\n" + "            userDefinedPrimaryKey(Property):\n" + "                false instance Boolean\n" + "]", mappingGraphDump);
}
Also used : EnumerationMappingParser(org.finos.legend.pure.m2.dsl.mapping.serialization.grammar.v1.EnumerationMappingParser) MappingParser(org.finos.legend.pure.m2.dsl.mapping.serialization.grammar.v1.MappingParser) ParserLibrary(org.finos.legend.pure.m3.serialization.grammar.ParserLibrary) M3AntlrParser(org.finos.legend.pure.m3.serialization.grammar.m3parser.antlr.M3AntlrParser) CoreInstance(org.finos.legend.pure.m4.coreinstance.CoreInstance) RelationalParser(org.finos.legend.pure.m2.relational.serialization.grammar.v1.RelationalParser) Test(org.junit.Test)

Aggregations

Column (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.Column)19 TableAliasColumn (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.TableAliasColumn)19 CoreInstance (org.finos.legend.pure.m4.coreinstance.CoreInstance)16 RelationalOperationElement (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.RelationalOperationElement)12 Table (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.relation.Table)12 TableAlias (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.TableAlias)11 NamedRelation (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.relation.NamedRelation)10 Relation (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.relation.Relation)10 PureCompilationException (org.finos.legend.pure.m4.exception.PureCompilationException)10 Function (org.eclipse.collections.api.block.function.Function)8 MutableList (org.eclipse.collections.api.list.MutableList)8 SourceInformation (org.finos.legend.pure.m4.coreinstance.SourceInformation)8 ListIterable (org.eclipse.collections.api.list.ListIterable)7 RichIterable (org.eclipse.collections.api.RichIterable)6 GenericType (org.finos.legend.pure.m3.coreinstance.meta.pure.metamodel.type.generics.GenericType)6 BusinessMilestoning (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.relation.BusinessMilestoning)6 ProcessingMilestoning (org.finos.legend.pure.m3.coreinstance.meta.relational.metamodel.relation.ProcessingMilestoning)6 PureExecutionException (org.finos.legend.pure.m3.exception.PureExecutionException)6 Test (org.junit.Test)6 EngineException (org.finos.legend.engine.shared.core.operational.errorManagement.EngineException)5