FSA.defaultIcons.metamodel 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472
  1. {
  2. "types": {
  3. "StateIcon": [
  4. {
  5. "name": "typename",
  6. "type": "string",
  7. "default": "StateIcon"
  8. },
  9. {
  10. "name": "position",
  11. "type": "list<double>",
  12. "default": [
  13. 75,
  14. 150
  15. ]
  16. },
  17. {
  18. "name": "orientation",
  19. "type": "double",
  20. "default": 0
  21. },
  22. {
  23. "name": "scale",
  24. "type": "list<double>",
  25. "default": [
  26. 1,
  27. 1
  28. ]
  29. },
  30. {
  31. "name": "mapper",
  32. "type": "code",
  33. "default": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
  34. },
  35. {
  36. "name": "parser",
  37. "type": "code",
  38. "default": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  39. },
  40. {
  41. "name": "$contents",
  42. "type": "map<string,*>",
  43. "default": {
  44. "nodes": {
  45. "1": {
  46. "r": {
  47. "type": "double",
  48. "value": 50
  49. },
  50. "style": {
  51. "type": "map<string,string>",
  52. "value": {
  53. "stroke": "#000000",
  54. "fill": "#ffffff",
  55. "fill-opacity": 0.75,
  56. "stroke-width": 2
  57. }
  58. },
  59. "mapper": {
  60. "type": "code",
  61. "value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */\nif (getAttr(\"current\")) {\n ({style:{\n \"stroke\": \"#000000\",\n \"fill\": \"#ffff00\",\n \"fill-opacity\": 0.75,\n \"stroke-width\": 2\n }});\n}\nelse {\n ({style:{\n \"stroke\": \"#000000\",\n \"fill\": \"#ffffff\",\n \"fill-opacity\": 0.75,\n \"stroke-width\": 2\n }});\n}"
  62. },
  63. "parser": {
  64. "type": "code",
  65. "value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  66. },
  67. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Circle",
  68. "position": {
  69. "type": "list<double>",
  70. "value": [
  71. 4,
  72. 4
  73. ]
  74. },
  75. "orientation": {
  76. "type": "double",
  77. "value": 0
  78. },
  79. "scale": {
  80. "type": "list<double>",
  81. "value": [
  82. 1,
  83. 1
  84. ]
  85. }
  86. },
  87. "2": {
  88. "textContent": {
  89. "type": "string",
  90. "value": "T..."
  91. },
  92. "style": {
  93. "type": "map<string,string>",
  94. "value": {
  95. "stroke": "#000000",
  96. "stroke-dasharray": "",
  97. "fill": "#ffffff",
  98. "fill-opacity": 0.75,
  99. "font-size": "14px",
  100. "arrow-start": "none",
  101. "arrow-end": "none"
  102. }
  103. },
  104. "mapper": {
  105. "type": "code",
  106. "value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */\n({textContent: getAttr(\"name\")})\n"
  107. },
  108. "parser": {
  109. "type": "code",
  110. "value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  111. },
  112. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
  113. "position": {
  114. "type": "list<double>",
  115. "value": [
  116. 11,
  117. 48
  118. ]
  119. },
  120. "orientation": {
  121. "type": "double",
  122. "value": 0
  123. },
  124. "scale": {
  125. "type": "list<double>",
  126. "value": [
  127. 1,
  128. 1
  129. ]
  130. }
  131. },
  132. "3": {
  133. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Contain",
  134. "position": {
  135. "type": "list<double>",
  136. "value": [
  137. 12.71270269242143,
  138. 30
  139. ]
  140. },
  141. "orientation": {
  142. "type": "double",
  143. "value": 0
  144. },
  145. "scale": {
  146. "type": "list<double>",
  147. "value": [
  148. 1,
  149. 1
  150. ]
  151. },
  152. "link-style": {
  153. "type": "map<string,string>",
  154. "value": {
  155. "stroke": "#00ffff",
  156. "stroke-dasharray": "",
  157. "stroke-opacity": 0.1,
  158. "stroke-width": 1
  159. }
  160. }
  161. }
  162. },
  163. "edges": [
  164. {
  165. "src": "1",
  166. "dest": "3"
  167. },
  168. {
  169. "src": "3",
  170. "dest": "2"
  171. }
  172. ]
  173. }
  174. },
  175. {
  176. "name": "$asuri",
  177. "type": "string",
  178. "default": "-1"
  179. }
  180. ],
  181. "InputEventsIcon": [
  182. {
  183. "name": "typename",
  184. "type": "string",
  185. "default": "InputEventsIcon"
  186. },
  187. {
  188. "name": "position",
  189. "type": "list<double>",
  190. "default": [
  191. 325,
  192. 175
  193. ]
  194. },
  195. {
  196. "name": "orientation",
  197. "type": "double",
  198. "default": 0
  199. },
  200. {
  201. "name": "scale",
  202. "type": "list<double>",
  203. "default": [
  204. 1,
  205. 1
  206. ]
  207. },
  208. {
  209. "name": "mapper",
  210. "type": "code",
  211. "default": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
  212. },
  213. {
  214. "name": "parser",
  215. "type": "code",
  216. "default": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  217. },
  218. {
  219. "name": "$contents",
  220. "type": "map<string,*>",
  221. "default": {
  222. "nodes": {
  223. "7": {
  224. "textContent": {
  225. "type": "string",
  226. "value": "T..."
  227. },
  228. "style": {
  229. "type": "map<string,string>",
  230. "value": {
  231. "stroke": "#000000",
  232. "stroke-dasharray": "",
  233. "fill": "#ff0000",
  234. "fill-opacity": 0.75,
  235. "stroke-width": 1,
  236. "font-size": "20px",
  237. "arrow-start": "none",
  238. "arrow-end": "none"
  239. }
  240. },
  241. "mapper": {
  242. "type": "code",
  243. "value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */\n({textContent: getAttr(\"eventList\")})\n"
  244. },
  245. "parser": {
  246. "type": "code",
  247. "value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  248. },
  249. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
  250. "position": {
  251. "type": "list<double>",
  252. "value": [
  253. 4,
  254. 7
  255. ]
  256. },
  257. "orientation": {
  258. "type": "double",
  259. "value": 0
  260. },
  261. "scale": {
  262. "type": "list<double>",
  263. "value": [
  264. 1,
  265. 1
  266. ]
  267. }
  268. }
  269. },
  270. "edges": []
  271. }
  272. },
  273. {
  274. "name": "$asuri",
  275. "type": "string",
  276. "default": "-1"
  277. }
  278. ],
  279. "TransitionLink": [
  280. {
  281. "name": "link-style",
  282. "type": "map<string,string>",
  283. "default": {
  284. "stroke": "#000000",
  285. "stroke-dasharray": "",
  286. "stroke-opacity": 1,
  287. "stroke-width": 2
  288. }
  289. },
  290. {
  291. "name": "arrowHead",
  292. "type": "ENUM(circle-black,circle-black-large,circle-white,circle-white-large,diamond-black,diamond-black-large,diamond-white,diamond-white-large,triangle-black,triangle-black-large,triangle-white,triangle-white-large,arrow-black,arrow-black-large,arrow-empty,arrow-empty-large,custom)",
  293. "default": "custom"
  294. },
  295. {
  296. "name": "arrowTail",
  297. "type": "ENUM(circle-black,circle-black-large,circle-white,circle-white-large,diamond-black,diamond-black-large,diamond-white,diamond-white-large,triangle-black,triangle-black-large,triangle-white,triangle-white-large,arrow-black,arrow-black-large,arrow-empty,arrow-empty-large,custom)",
  298. "default": "arrow-black"
  299. },
  300. {
  301. "name": "typename",
  302. "type": "string",
  303. "default": "TransitionLink"
  304. },
  305. {
  306. "name": "position",
  307. "type": "list<double>",
  308. "default": [
  309. 596,
  310. 266
  311. ]
  312. },
  313. {
  314. "name": "orientation",
  315. "type": "double",
  316. "default": 0
  317. },
  318. {
  319. "name": "scale",
  320. "type": "list<double>",
  321. "default": [
  322. 1,
  323. 1
  324. ]
  325. },
  326. {
  327. "name": "mapper",
  328. "type": "code",
  329. "default": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */"
  330. },
  331. {
  332. "name": "parser",
  333. "type": "code",
  334. "default": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  335. },
  336. {
  337. "name": "$contents",
  338. "type": "map<string,*>",
  339. "default": {
  340. "nodes": {
  341. "13": {
  342. "textContent": {
  343. "type": "string",
  344. "value": "T..."
  345. },
  346. "style": {
  347. "type": "map<string,string>",
  348. "value": {
  349. "stroke": "#000000",
  350. "stroke-dasharray": "",
  351. "fill": "#ffffff",
  352. "fill-opacity": 0.75,
  353. "font-size": "16px",
  354. "arrow-start": "none",
  355. "arrow-end": "none"
  356. }
  357. },
  358. "mapper": {
  359. "type": "code",
  360. "value": "/* specify code that evaluates to an associative array of the form {...,csattr:val,...} */\n({textContent: getAttr(\"event\")})\n"
  361. },
  362. "parser": {
  363. "type": "code",
  364. "value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  365. },
  366. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
  367. "position": {
  368. "type": "list<double>",
  369. "value": [
  370. 0,
  371. 0
  372. ]
  373. },
  374. "orientation": {
  375. "type": "double",
  376. "value": 0
  377. },
  378. "scale": {
  379. "type": "list<double>",
  380. "value": [
  381. 1,
  382. 1
  383. ]
  384. },
  385. "$linkDecoratorInfo": {
  386. "type": "map<string,double>",
  387. "value": {
  388. "xratio": 0.49693251533742333,
  389. "yoffset": -21.5
  390. }
  391. }
  392. },
  393. "267": {
  394. "segments": {
  395. "type": "string",
  396. "value": "m0,0 l10,4 l-10,4 l3,-4 z"
  397. },
  398. "style": {
  399. "type": "map<string,string>",
  400. "value": {
  401. "stroke": "#000000",
  402. "fill": "#000000",
  403. "opacity": 1,
  404. "stroke-width": 1
  405. }
  406. },
  407. "mapper": {
  408. "type": "code",
  409. "value": ""
  410. },
  411. "parser": {
  412. "type": "code",
  413. "value": "/* specify code that evaluates to an associative array of the form {...,attr:val,...} */"
  414. },
  415. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Path",
  416. "position": {
  417. "type": "list<double>",
  418. "value": [
  419. 0,
  420. 0
  421. ]
  422. },
  423. "orientation": {
  424. "type": "double",
  425. "value": 0
  426. },
  427. "scale": {
  428. "type": "list<double>",
  429. "value": [
  430. 1,
  431. 1
  432. ]
  433. },
  434. "$linkDecoratorInfo": {
  435. "type": "map<string,double>",
  436. "value": {
  437. "xratio": 1,
  438. "yoffset": -4
  439. }
  440. }
  441. }
  442. },
  443. "edges": []
  444. }
  445. },
  446. {
  447. "name": "$asuri",
  448. "type": "string",
  449. "default": "-1"
  450. },
  451. {
  452. "name": "$segments",
  453. "type": "map<string,list<string>>",
  454. "default": {}
  455. }
  456. ]
  457. },
  458. "constraints": [],
  459. "actions": [],
  460. "cardinalities": {
  461. "StateIcon": [],
  462. "InputEventsIcon": [],
  463. "TransitionLink": []
  464. },
  465. "legalConnections": {},
  466. "connectorTypes": {},
  467. "types2parentTypes": {
  468. "StateIcon": [],
  469. "InputEventsIcon": [],
  470. "TransitionLink": []
  471. }
  472. }