{ "csm": { "nodes": { "0": { "typename": { "type": "string", "value": "EntityIcon" }, "position": { "type": "list", "value": [ 498, 265 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$contents": { "type": "map", "value": { "nodes": { "2": { "width": { "type": "double", "value": 200 }, "height": { "type": "double", "value": 125 }, "cornerRadius": { "type": "double", "value": 5 }, "style": { "type": "map", "value": { "stroke": "#ff3000", "stroke-dasharray": "", "fill": "#ff3000", "fill-opacity": 0.25, "font-size": "20px", "stroke-width": 2, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle", "position": { "type": "list", "value": [ 2, -1 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "3": { "textContent": { "type": "string", "value": "Class" }, "style": { "type": "map", "value": { "stroke": "#000000", "stroke-dasharray": "", "fill": "#ffffff", "fill-opacity": 0.75, "font-size": "20px", "stroke-width": 1, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "({'textContent': getAttr('name')})\n\n\n\n\n\n\n\n" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 16, 3 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "4": { "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain", "position": { "type": "list", "value": [ 15.24899850809561, 3.9989985080956103 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "link-style": { "type": "map", "value": { "stroke": "#00ffff", "stroke-dasharray": "", "stroke-opacity": 0.1, "arrow-start": "none", "arrow-end": "classic-wide-long" } } }, "16": { "textContent": { "type": "string", "value": "name\nattributes\nconstraints\nactions\ncardinalities\nabstract" }, "style": { "type": "map", "value": { "stroke": "#000000", "stroke-dasharray": "", "fill": "#ffffff", "fill-opacity": 0.75, "font-size": "13px", "stroke-width": 1, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "var filenames = getAttr('attributes').map(\n\t\t\t\tfunction(attr)\n\t\t\t\t{\n\t\t\t\t\treturn attr['name'];\n\t\t\t\t});\n({'textContent': filenames.join('\\n')})" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 7, 23 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "17": { "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain", "position": { "type": "list", "value": [ 9.49899850809561, 15.499000000000024 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "link-style": { "type": "map", "value": { "stroke": "#00ffff", "stroke-dasharray": "", "stroke-opacity": 0.1, "arrow-start": "none", "arrow-end": "classic-wide-long" } } } }, "edges": [ { "src": "2", "dest": "4" }, { "src": "4", "dest": "3" }, { "src": "2", "dest": "17" }, { "src": "17", "dest": "16" } ] } }, "$asuri": { "type": "string", "value": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Entity/0.instance" }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/EntityIcon" }, "1": { "typename": { "type": "string", "value": "EntityIcon" }, "position": { "type": "list", "value": [ 97, 152 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$contents": { "type": "map", "value": { "nodes": { "2": { "width": { "type": "double", "value": 200 }, "height": { "type": "double", "value": 125 }, "cornerRadius": { "type": "double", "value": 5 }, "style": { "type": "map", "value": { "stroke": "#ff3000", "stroke-dasharray": "", "fill": "#ff3000", "fill-opacity": 0.25, "font-size": "20px", "stroke-width": 2, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle", "position": { "type": "list", "value": [ 2, -1 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "3": { "textContent": { "type": "string", "value": "GlobalConstraint" }, "style": { "type": "map", "value": { "stroke": "#000000", "stroke-dasharray": "", "fill": "#ffffff", "fill-opacity": 0.75, "font-size": "20px", "stroke-width": 1, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "({'textContent': getAttr('name')})\n\n\n\n\n\n\n\n" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 16, 3 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "4": { "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain", "position": { "type": "list", "value": [ 15.24899850809561, 3.9989985080956103 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "link-style": { "type": "map", "value": { "stroke": "#00ffff", "stroke-dasharray": "", "stroke-opacity": 0.1, "arrow-start": "none", "arrow-end": "classic-wide-long" } } }, "16": { "textContent": { "type": "string", "value": "name\nevent\ncode" }, "style": { "type": "map", "value": { "stroke": "#000000", "stroke-dasharray": "", "fill": "#ffffff", "fill-opacity": 0.75, "font-size": "13px", "stroke-width": 1, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "var filenames = getAttr('attributes').map(\n\t\t\t\tfunction(attr)\n\t\t\t\t{\n\t\t\t\t\treturn attr['name'];\n\t\t\t\t});\n({'textContent': filenames.join('\\n')})" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 7, 23 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "17": { "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain", "position": { "type": "list", "value": [ 9.49899850809561, 15.499000000000024 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "link-style": { "type": "map", "value": { "stroke": "#00ffff", "stroke-dasharray": "", "stroke-opacity": 0.1, "arrow-start": "none", "arrow-end": "classic-wide-long" } } } }, "edges": [ { "src": "2", "dest": "4" }, { "src": "4", "dest": "3" }, { "src": "2", "dest": "17" }, { "src": "17", "dest": "16" } ] } }, "$asuri": { "type": "string", "value": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Entity/1.instance" }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/EntityIcon" }, "2": { "typename": { "type": "string", "value": "EntityIcon" }, "position": { "type": "list", "value": [ 97, 326 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$contents": { "type": "map", "value": { "nodes": { "2": { "width": { "type": "double", "value": 200 }, "height": { "type": "double", "value": 125 }, "cornerRadius": { "type": "double", "value": 5 }, "style": { "type": "map", "value": { "stroke": "#ff3000", "stroke-dasharray": "", "fill": "#ff3000", "fill-opacity": 0.25, "font-size": "20px", "stroke-width": 2, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle", "position": { "type": "list", "value": [ 2, -1 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "3": { "textContent": { "type": "string", "value": "GlobalAction" }, "style": { "type": "map", "value": { "stroke": "#000000", "stroke-dasharray": "", "fill": "#ffffff", "fill-opacity": 0.75, "font-size": "20px", "stroke-width": 1, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "({'textContent': getAttr('name')})\n\n\n\n\n\n\n\n" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 16, 3 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "4": { "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain", "position": { "type": "list", "value": [ 15.24899850809561, 3.9989985080956103 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "link-style": { "type": "map", "value": { "stroke": "#00ffff", "stroke-dasharray": "", "stroke-opacity": 0.1, "arrow-start": "none", "arrow-end": "classic-wide-long" } } }, "16": { "textContent": { "type": "string", "value": "name\nevent\ncode" }, "style": { "type": "map", "value": { "stroke": "#000000", "stroke-dasharray": "", "fill": "#ffffff", "fill-opacity": 0.75, "font-size": "13px", "stroke-width": 1, "arrow-start": "none", "arrow-end": "none" } }, "mapper": { "type": "code", "value": "var filenames = getAttr('attributes').map(\n\t\t\t\tfunction(attr)\n\t\t\t\t{\n\t\t\t\t\treturn attr['name'];\n\t\t\t\t});\n({'textContent': filenames.join('\\n')})" }, "parser": { "type": "code", "value": "" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 7, 23 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } }, "17": { "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain", "position": { "type": "list", "value": [ 9.49899850809561, 15.499000000000024 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "link-style": { "type": "map", "value": { "stroke": "#00ffff", "stroke-dasharray": "", "stroke-opacity": 0.1, "arrow-start": "none", "arrow-end": "classic-wide-long" } } } }, "edges": [ { "src": "2", "dest": "4" }, { "src": "4", "dest": "3" }, { "src": "2", "dest": "17" }, { "src": "17", "dest": "16" } ] } }, "$asuri": { "type": "string", "value": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Entity/2.instance" }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/EntityIcon" }, "3": { "link-style": { "type": "map", "value": { "stroke": "#0000ff", "stroke-dasharray": "", "stroke-opacity": 1, "stroke-width": 2, "arrow-start": "none", "arrow-end": "classic-wide-long" } }, "typename": { "type": "string", "value": "RelationshipLink" }, "position": { "type": "list", "value": [ 728.0000000000002, 191.5338639053254 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$contents": { "type": "map", "value": { "nodes": { "14": { "textContent": { "type": "string", "value": "Association" }, "style": { "type": "map", "value": { "stroke": "#0000ff", "fill": "#000000", "fill-opacity": 0.75, "font-size": "20px" } }, "mapper": { "type": "code", "value": "({'textContent':getAttr('name')})" }, "parser": { "type": "code", "value": "({'name':getAttr('textContent')})" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 2, -16 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } } }, "edges": [] } }, "$asuri": { "type": "string", "value": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Relationship/3.instance" }, "$segments": { "type": "map>", "value": { "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/EntityIcon/0.instance--/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/RelationshipLink/3.instance": "M647,263L647,189L767,189L767.0000000000005,203.53386390532543", "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/RelationshipLink/3.instance--/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/EntityIcon/0.instance": "M767.0000000000005,203.53386390532543L767,345L700.0004473156605,345" } }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/RelationshipLink" }, "6": { "link-style": { "type": "map", "value": { "stroke": "#0000ff", "stroke-dasharray": "", "stroke-opacity": 1, "stroke-width": 2, "arrow-start": "none", "arrow-end": "classic-wide-long" } }, "typename": { "type": "string", "value": "RelationshipLink" }, "position": { "type": "list", "value": [ "467.43800594530325,50%", "468,50%" ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] }, "mapper": { "type": "code", "value": "" }, "parser": { "type": "code", "value": "" }, "$contents": { "type": "map", "value": { "nodes": { "14": { "textContent": { "type": "string", "value": "Inheritance" }, "style": { "type": "map", "value": { "stroke": "#0000ff", "fill": "#000000", "fill-opacity": 0.75, "font-size": "20px" } }, "mapper": { "type": "code", "value": "({'textContent':getAttr('name')})" }, "parser": { "type": "code", "value": "({'name':getAttr('textContent')})" }, "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text", "position": { "type": "list", "value": [ 2, -16 ] }, "orientation": { "type": "double", "value": 0 }, "scale": { "type": "list", "value": [ 1, 1 ] } } }, "edges": [] } }, "$asuri": { "type": "string", "value": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Relationship/6.instance" }, "$segments": { "type": "map>", "value": { "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/EntityIcon/0.instance--/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/RelationshipLink/6.instance": "M570,389L570,468L467.43800594530325,468", "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/RelationshipLink/6.instance--/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/EntityIcon/0.instance": "M467.43800594530325,468L454,468L454,346L499.9993487712665,346" } }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons/RelationshipLink" } }, "edges": [], "metamodels": [ "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship.defaultIcons" ] }, "asm": { "nodes": { "0": { "name": { "type": "string", "value": "Class" }, "attributes": { "type": "list<$ATTRIBUTE>", "value": [ { "name": "name", "type": "string", "default": "Class_" }, { "name": "attributes", "type": "list<$ATTRIBUTE>", "default": [] }, { "name": "constraints", "type": "list<$EVENT_HANDLER>", "default": [] }, { "name": "actions", "type": "list<$EVENT_HANDLER>", "default": [] }, { "name": "cardinalities", "type": "list<$CARDINALITY>", "default": [] }, { "name": "abstract", "type": "boolean", "default": false } ] }, "constraints": { "type": "list<$EVENT_HANDLER>", "value": [] }, "actions": { "type": "list<$EVENT_HANDLER>", "value": [] }, "cardinalities": { "type": "list<$CARDINALITY>", "value": [] }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Entity" }, "1": { "name": { "type": "string", "value": "GlobalConstraint" }, "attributes": { "type": "list<$ATTRIBUTE>", "value": [ { "name": "name", "type": "string", "default": "GC_" }, { "name": "event", "type": "$EVENT", "default": "" }, { "name": "code", "type": "code", "default": "" } ] }, "constraints": { "type": "list<$EVENT_HANDLER>", "value": [] }, "actions": { "type": "list<$EVENT_HANDLER>", "value": [] }, "cardinalities": { "type": "list<$CARDINALITY>", "value": [] }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Entity" }, "2": { "name": { "type": "string", "value": "GlobalAction" }, "attributes": { "type": "list<$ATTRIBUTE>", "value": [ { "name": "name", "type": "string", "default": "GA_" }, { "name": "event", "type": "$EVENT", "default": "" }, { "name": "code", "type": "code", "default": "" } ] }, "constraints": { "type": "list<$EVENT_HANDLER>", "value": [] }, "actions": { "type": "list<$EVENT_HANDLER>", "value": [] }, "cardinalities": { "type": "list<$CARDINALITY>", "value": [] }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Entity" }, "3": { "name": { "type": "string", "value": "Association" }, "attributes": { "type": "list<$ATTRIBUTE>", "value": [ { "name": "name", "type": "string", "default": "Association_" }, { "name": "attributes", "type": "list<$ATTRIBUTE>", "default": [] }, { "name": "constraints", "type": "list<$EVENT_HANDLER>", "default": [] }, { "name": "actions", "type": "list<$EVENT_HANDLER>", "default": [] }, { "name": "cardinalities", "type": "list<$CARDINALITY>", "default": [] }, { "name": "linktype", "type": "ENUM(visual,containment)", "default": "visual" } ] }, "constraints": { "type": "list<$EVENT_HANDLER>", "value": [] }, "actions": { "type": "list<$EVENT_HANDLER>", "value": [] }, "cardinalities": { "type": "list<$CARDINALITY>", "value": [] }, "linktype": { "type": "ENUM(visual,containment)", "value": "visual" }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Relationship" }, "6": { "name": { "type": "string", "value": "Inheritance" }, "attributes": { "type": "list<$ATTRIBUTE>", "value": [] }, "constraints": { "type": "list<$EVENT_HANDLER>", "value": [ { "name": "noInheritanceLoops", "event": "post-create", "code": "/*newline*/var mm = '/Formalisms/__LanguageSyntax__/SimpleClassDiagram/SimpleClassDiagram/',/*newline*/ nout = getNeighbors('>',mm+'Class'),/*newline*/ visited = [];/*newline*/function dfs(to_visit)/*newline*/{/*newline*/ var curr = to_visit.pop();/*newline*/ if( curr == undefined )/*newline*/ return true;/*newline*/ else if( visited.indexOf(curr) > -1 )/*newline*/ return false;/*newline*/ else/*newline*/ {/*newline*/ visited.push(curr);/*newline*/ var ntype = (getAttr('$type',curr) == mm+'Class' ? /*newline*/ mm+'Inheritance' : mm+'Class');/*newline*/ return dfs( to_visit.concat(getNeighbors('>',ntype,curr)) );/*newline*/ }/*newline*/}/*newline*/dfs(nout);" } ] }, "actions": { "type": "list<$EVENT_HANDLER>", "value": [] }, "cardinalities": { "type": "list<$CARDINALITY>", "value": [] }, "linktype": { "type": "ENUM(visual,containment)", "value": "visual" }, "$type": "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship/Relationship" } }, "edges": [ { "src": "0", "dest": "3" }, { "src": "3", "dest": "0" }, { "src": "0", "dest": "6" }, { "src": "6", "dest": "0" } ], "metamodels": [ "/Formalisms/__LanguageSyntax__/EntityRelationship/EntityRelationship" ] } }