123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766 |
- {
- "types": {
- "OrthogonalComponent": [
- {
- "name": "name",
- "type": "string",
- "default": "OC_"
- }
- ],
- "State": [
- {
- "name": "name",
- "type": "string",
- "default": "S_"
- },
- {
- "name": "entryAction",
- "type": "code",
- "default": ""
- },
- {
- "name": "exitAction",
- "type": "code",
- "default": ""
- },
- {
- "name": "isStart",
- "type": "boolean",
- "default": false
- },
- {
- "name": "isCurrent",
- "type": "boolean",
- "default": false
- },
- {
- "name": "option",
- "type": "ENUM(ITF, OTF, RTO)",
- "default": "ITF"
- },
- {
- "name": "raiseEntry",
- "type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
- "default": []
- },
- {
- "name": "raiseExit",
- "type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
- "default": []
- }
- ],
- "CompositeState": [
- {
- "name": "name",
- "type": "string",
- "default": "S_"
- },
- {
- "name": "entryAction",
- "type": "code",
- "default": ""
- },
- {
- "name": "exitAction",
- "type": "code",
- "default": ""
- },
- {
- "name": "isStart",
- "type": "boolean",
- "default": false
- },
- {
- "name": "isCurrent",
- "type": "boolean",
- "default": false
- },
- {
- "name": "option",
- "type": "ENUM(ITF, OTF, RTO)",
- "default": "ITF"
- },
- {
- "name": "raiseEntry",
- "type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
- "default": []
- },
- {
- "name": "raiseExit",
- "type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
- "default": []
- }
- ],
- "BasicState": [
- {
- "name": "name",
- "type": "string",
- "default": "S_"
- },
- {
- "name": "entryAction",
- "type": "code",
- "default": ""
- },
- {
- "name": "exitAction",
- "type": "code",
- "default": ""
- },
- {
- "name": "isStart",
- "type": "boolean",
- "default": false
- },
- {
- "name": "isCurrent",
- "type": "boolean",
- "default": false
- },
- {
- "name": "option",
- "type": "ENUM(ITF, OTF, RTO)",
- "default": "ITF"
- },
- {
- "name": "raiseEntry",
- "type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
- "default": []
- },
- {
- "name": "raiseExit",
- "type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
- "default": []
- }
- ],
- "contain": [],
- "transition": [
- {
- "name": "event",
- "type": "string",
- "default": ""
- },
- {
- "name": "guard",
- "type": "code",
- "default": ""
- },
- {
- "name": "action",
- "type": "code",
- "default": ""
- },
- {
- "name": "display",
- "type": "string",
- "default": "XXXX"
- },
- {
- "name": "after",
- "type": "code",
- "default": ""
- },
- {
- "name": "raise",
- "type": "list<map<[event,scope,arguments],[string,string,list<string>]>>",
- "default": []
- },
- {
- "name": "parameters",
- "type": "list<string>",
- "default": []
- },
- {
- "name": "port",
- "type": "string",
- "default": ""
- }
- ],
- "containOC": [],
- "HistoryState": [
- {
- "name": "name",
- "type": "string",
- "default": "H"
- },
- {
- "name": "type",
- "type": "ENUM(deep, shallow)",
- "default": "shallow"
- }
- ],
- "includes": [],
- "Class": [
- {
- "name": "name",
- "type": "string",
- "default": "Class_"
- },
- {
- "name": "attributes",
- "type": "list<$ATTRIBUTE>",
- "default": []
- },
- {
- "name": "cardinalities",
- "type": "list<$CARDINALITY>",
- "default": []
- },
- {
- "name": "abstract",
- "type": "boolean",
- "default": false
- },
- {
- "name": "methods",
- "type": "list<$METHOD>",
- "default": []
- },
- {
- "name": "external",
- "type": "boolean",
- "default": false
- }
- ],
- "Association": [
- {
- "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"
- }
- ],
- "Inheritance": [],
- "behaviour": [],
- "ocContain": [],
- "SimulationInstance": [
- {
- "name": "simulation_time",
- "type": "float",
- "default": 0
- }
- ]
- },
- "constraints": [
- {
- "name": "distinctNames",
- "event": "",
- "targetType": "*",
- "code": "var \tmm \t\t= '/Formalisms/SCCD/SCCD/',\n\tstates \t\t= getAllNodes([mm+'BasicState',mm+'CompositeState',mm+'OrthogonalComponent']),\n\tfullStateNames = {},\n\tknownStateNames = [];\n\nfunction fullStateName(s,fsn)\n{\n\tif( !(s in fullStateNames) )\n\t{\n\t\tvar containLinks = getNeighbors('<',mm+'contain',s).\n concat(getNeighbors('<',mm+'ocContain',s)).\n concat(getNeighbors('<',mm+'containOC',s));\n\t\tif( containLinks.length > 0 )\n\t\t{\n\t\t\tvar parent = getNeighbors(\"<\",'*',containLinks[0])[0];\n\t\t\tfullStateNames[s] = fullStateName(parent,getAttr('name',parent))+fsn;\n\t\t}\n\t\telse\n\t\t\tfullStateNames[s] = fsn;\n\t}\n\treturn fullStateNames[s];\n}\n\n\nstates.every(\n\tfunction(s)\n\t{\n\t\tvar fsn = fullStateName(s,getAttr('name',s));\n\t\tif( knownStateNames.indexOf(fsn) > -1 )\n\t\t\treturn false;\n\t\tknownStateNames.push(fsn);\n\t\treturn true;\n\t});\n"
- },
- {
- "name": "singleContainer",
- "event": "post-connect",
- "code": "/*newline*/var mm = '/Formalisms/StateChart/StateChart/';/*newline*/getNeighbors('<',mm+'Contain').concat(getNeighbors('<',mm+'OCContain')).concat(getNeighbors('<',mm+'ContainOC')).length <= 1;",
- "targetType": "State"
- },
- {
- "name": "noAbstractInstances",
- "event": "pre-create",
- "code": "false",
- "targetType": "State"
- },
- {
- "name": "singleContainer",
- "event": "post-connect",
- "code": "/*newline*/var mm = '/Formalisms/StateChart/StateChart/';/*newline*/getNeighbors('<',mm+'Contain').concat(getNeighbors('<',mm+'OCContain')).concat(getNeighbors('<',mm+'ContainOC')).length <= 1;",
- "targetType": "CompositeState"
- },
- {
- "name": "singleContainer",
- "event": "post-connect",
- "code": "/*newline*/var mm = '/Formalisms/StateChart/StateChart/';/*newline*/getNeighbors('<',mm+'Contain').concat(getNeighbors('<',mm+'OCContain')).concat(getNeighbors('<',mm+'ContainOC')).length <= 1;",
- "targetType": "BasicState"
- }
- ],
- "actions": [],
- "cardinalities": {
- "OrthogonalComponent": [
- {
- "dir": "in",
- "type": "containOC",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "ocContain",
- "min": "0",
- "max": "Infinity"
- }
- ],
- "State": [
- {
- "dir": "in",
- "type": "contain",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "transition",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "transition",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "behaviour",
- "min": "0",
- "max": "Infinity"
- }
- ],
- "CompositeState": [
- {
- "dir": "out",
- "type": "HistoryState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "contain",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "containOC",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "includes",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "ocContain",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "contain",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "transition",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "transition",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "behaviour",
- "min": "0",
- "max": "Infinity"
- }
- ],
- "BasicState": [
- {
- "dir": "in",
- "type": "contain",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "transition",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "transition",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "behaviour",
- "min": "0",
- "max": "Infinity"
- }
- ],
- "contain": [
- {
- "dir": "in",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "State",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "BasicState",
- "min": "0",
- "max": "1"
- }
- ],
- "transition": [
- {
- "dir": "in",
- "type": "OrthogonalComponent",
- "min": "0",
- "max": "0"
- },
- {
- "dir": "out",
- "type": "OrthogonalComponent",
- "min": "0",
- "max": "0"
- },
- {
- "dir": "in",
- "type": "State",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "State",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "HistoryState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "in",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "in",
- "type": "BasicState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "BasicState",
- "min": "0",
- "max": "1"
- }
- ],
- "containOC": [
- {
- "dir": "in",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "OrthogonalComponent",
- "min": "0",
- "max": "1"
- }
- ],
- "HistoryState": [
- {
- "dir": "in",
- "type": "includes",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "transition",
- "min": "0",
- "max": "Infinity"
- }
- ],
- "includes": [
- {
- "dir": "out",
- "type": "HistoryState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "in",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- }
- ],
- "Class": [
- {
- "dir": "in",
- "type": "PackageContents",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "Association",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "Association",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "Inheritance",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "in",
- "type": "Inheritance",
- "min": "0",
- "max": "Infinity"
- },
- {
- "dir": "out",
- "type": "behaviour",
- "min": "0",
- "max": "Infinity"
- }
- ],
- "Association": [
- {
- "dir": "in",
- "type": "Class",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "Class",
- "min": "0",
- "max": "1"
- }
- ],
- "Inheritance": [
- {
- "dir": "in",
- "type": "Class",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "Class",
- "min": "0",
- "max": "1"
- }
- ],
- "behaviour": [
- {
- "dir": "in",
- "type": "Class",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "State",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "BasicState",
- "min": "0",
- "max": "1"
- }
- ],
- "ocContain": [
- {
- "dir": "in",
- "type": "OrthogonalComponent",
- "min": "0",
- "max": "1"
- },
- {
- "dir": "out",
- "type": "CompositeState",
- "min": "0",
- "max": "1"
- }
- ],
- "SimulationInstance": []
- },
- "legalConnections": {
- "OrthogonalComponent": {
- "CompositeState": [
- "ocContain"
- ]
- },
- "State": {
- "OrthogonalComponent": [
- "transition"
- ],
- "State": [
- "transition"
- ],
- "HistoryState": [
- "transition"
- ],
- "CompositeState": [
- "transition"
- ],
- "BasicState": [
- "transition"
- ]
- },
- "CompositeState": {
- "State": [
- "contain",
- "transition"
- ],
- "CompositeState": [
- "contain",
- "transition"
- ],
- "BasicState": [
- "contain",
- "transition"
- ],
- "OrthogonalComponent": [
- "containOC",
- "transition"
- ],
- "HistoryState": [
- "includes",
- "transition"
- ]
- },
- "BasicState": {
- "OrthogonalComponent": [
- "transition"
- ],
- "State": [
- "transition"
- ],
- "HistoryState": [
- "transition"
- ],
- "CompositeState": [
- "transition"
- ],
- "BasicState": [
- "transition"
- ]
- },
- "Class": {
- "Class": [
- "Association",
- "Inheritance"
- ],
- "State": [
- "behaviour"
- ],
- "CompositeState": [
- "behaviour"
- ],
- "BasicState": [
- "behaviour"
- ]
- }
- },
- "connectorTypes": {
- "contain": "containment",
- "transition": "visual",
- "containOC": "containment",
- "includes": "containment",
- "Association": "visual",
- "Inheritance": "visual",
- "behaviour": "visual",
- "ocContain": "containment"
- },
- "types2parentTypes": {
- "distinctNames": [],
- "OrthogonalComponent": [],
- "State": [],
- "CompositeState": [
- "State"
- ],
- "BasicState": [
- "State"
- ],
- "contain": [],
- "transition": [],
- "containOC": [],
- "HistoryState": [],
- "includes": [],
- "Class": [],
- "Association": [],
- "Inheritance": [],
- "behaviour": [],
- "ocContain": [],
- "SimulationInstance": []
- }
- }
|