TrainDoor.defaultIcons.pattern.metamodel 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863
  1. {
  2. "types": {
  3. "__pOpenIcon": [
  4. {
  5. "name": "typename",
  6. "type": "string",
  7. "default": "OpenIcon"
  8. },
  9. {
  10. "name": "position",
  11. "type": "list<double>",
  12. "default": [
  13. 382,
  14. 374
  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": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  34. },
  35. {
  36. "name": "parser",
  37. "type": "code",
  38. "default": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  39. },
  40. {
  41. "name": "$contents",
  42. "type": "map<string,*>",
  43. "default": {
  44. "nodes": {
  45. "3": {
  46. "src": {
  47. "type": "string",
  48. "value": "/Formalisms/TrainDoor/open.svg"
  49. },
  50. "width": {
  51. "type": "double",
  52. "value": 75
  53. },
  54. "height": {
  55. "type": "double",
  56. "value": 48
  57. },
  58. "style": {
  59. "type": "map<string,string>",
  60. "value": {
  61. "stroke": "#000000",
  62. "stroke-dasharray": "",
  63. "fill": "#ffffff",
  64. "fill-opacity": 0.75,
  65. "font-size": "20px",
  66. "stroke-width": 1,
  67. "arrow-start": "none",
  68. "arrow-end": "none"
  69. }
  70. },
  71. "mapper": {
  72. "type": "code",
  73. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  74. },
  75. "parser": {
  76. "type": "code",
  77. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  78. },
  79. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Image",
  80. "position": {
  81. "type": "list<double>",
  82. "value": [
  83. 1,
  84. 2
  85. ]
  86. },
  87. "orientation": {
  88. "type": "double",
  89. "value": 0
  90. },
  91. "scale": {
  92. "type": "list<double>",
  93. "value": [
  94. 1,
  95. 1
  96. ]
  97. }
  98. },
  99. "11": {
  100. "textContent": {
  101. "type": "string",
  102. "value": "T..."
  103. },
  104. "style": {
  105. "type": "map<string,string>",
  106. "value": {
  107. "stroke": "#000000",
  108. "stroke-dasharray": "",
  109. "fill": "#ffffff",
  110. "fill-opacity": 0.75,
  111. "font-size": "20px",
  112. "stroke-width": 1,
  113. "arrow-start": "none",
  114. "arrow-end": "none"
  115. }
  116. },
  117. "mapper": {
  118. "type": "code",
  119. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  120. },
  121. "parser": {
  122. "type": "code",
  123. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  124. },
  125. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
  126. "position": {
  127. "type": "list<double>",
  128. "value": [
  129. 9,
  130. 58
  131. ]
  132. },
  133. "orientation": {
  134. "type": "double",
  135. "value": 0
  136. },
  137. "scale": {
  138. "type": "list<double>",
  139. "value": [
  140. 1,
  141. 1
  142. ]
  143. }
  144. },
  145. "__pLabelText": {
  146. "position": {
  147. "type": "list<double>",
  148. "value": [
  149. 0,
  150. 0
  151. ]
  152. },
  153. "orientation": {
  154. "type": "double",
  155. "value": 0
  156. },
  157. "scale": {
  158. "type": "list<double>",
  159. "value": [
  160. 1,
  161. 1
  162. ]
  163. },
  164. "textContent": {
  165. "type": "string",
  166. "value": "#"
  167. },
  168. "style": {
  169. "type": "map<string,string>",
  170. "value": {
  171. "stroke": "#6000ff",
  172. "fill": "#6000ff",
  173. "font-size": "15px",
  174. "opacity": "1"
  175. }
  176. },
  177. "mapper": {
  178. "type": "code",
  179. "value": "({'textContent':getAttr('__pLabel')})"
  180. },
  181. "parser": {
  182. "type": "code",
  183. "value": "({'__pLabel':getAttr('textContent')})"
  184. },
  185. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text"
  186. }
  187. },
  188. "edges": []
  189. }
  190. },
  191. {
  192. "name": "$asuri",
  193. "type": "string",
  194. "default": "-1"
  195. }
  196. ],
  197. "__pClosedIcon": [
  198. {
  199. "name": "typename",
  200. "type": "string",
  201. "default": "ClosedIcon"
  202. },
  203. {
  204. "name": "position",
  205. "type": "list<double>",
  206. "default": [
  207. 605,
  208. 356
  209. ]
  210. },
  211. {
  212. "name": "orientation",
  213. "type": "double",
  214. "default": 0
  215. },
  216. {
  217. "name": "scale",
  218. "type": "list<double>",
  219. "default": [
  220. 1,
  221. 1
  222. ]
  223. },
  224. {
  225. "name": "mapper",
  226. "type": "code",
  227. "default": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  228. },
  229. {
  230. "name": "parser",
  231. "type": "code",
  232. "default": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  233. },
  234. {
  235. "name": "$contents",
  236. "type": "map<string,*>",
  237. "default": {
  238. "nodes": {
  239. "5": {
  240. "src": {
  241. "type": "string",
  242. "value": "/Formalisms/TrainDoor/closed.svg"
  243. },
  244. "width": {
  245. "type": "double",
  246. "value": 48
  247. },
  248. "height": {
  249. "type": "double",
  250. "value": 48
  251. },
  252. "style": {
  253. "type": "map<string,string>",
  254. "value": {
  255. "stroke": "#000000",
  256. "stroke-dasharray": "",
  257. "fill": "#ffffff",
  258. "fill-opacity": 0.75,
  259. "font-size": "20px",
  260. "stroke-width": 1,
  261. "arrow-start": "none",
  262. "arrow-end": "none"
  263. }
  264. },
  265. "mapper": {
  266. "type": "code",
  267. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  268. },
  269. "parser": {
  270. "type": "code",
  271. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  272. },
  273. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Image",
  274. "position": {
  275. "type": "list<double>",
  276. "value": [
  277. 4,
  278. 10
  279. ]
  280. },
  281. "orientation": {
  282. "type": "double",
  283. "value": 0
  284. },
  285. "scale": {
  286. "type": "list<double>",
  287. "value": [
  288. 1,
  289. 1
  290. ]
  291. }
  292. },
  293. "9": {
  294. "textContent": {
  295. "type": "string",
  296. "value": "T..."
  297. },
  298. "style": {
  299. "type": "map<string,string>",
  300. "value": {
  301. "stroke": "#000000",
  302. "stroke-dasharray": "",
  303. "fill": "#ffffff",
  304. "fill-opacity": 0.75,
  305. "font-size": "20px",
  306. "stroke-width": 1,
  307. "arrow-start": "none",
  308. "arrow-end": "none"
  309. }
  310. },
  311. "mapper": {
  312. "type": "code",
  313. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  314. },
  315. "parser": {
  316. "type": "code",
  317. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  318. },
  319. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
  320. "position": {
  321. "type": "list<double>",
  322. "value": [
  323. 12,
  324. 64
  325. ]
  326. },
  327. "orientation": {
  328. "type": "double",
  329. "value": 0
  330. },
  331. "scale": {
  332. "type": "list<double>",
  333. "value": [
  334. 1,
  335. 1
  336. ]
  337. }
  338. },
  339. "__pLabelText": {
  340. "position": {
  341. "type": "list<double>",
  342. "value": [
  343. 0,
  344. 0
  345. ]
  346. },
  347. "orientation": {
  348. "type": "double",
  349. "value": 0
  350. },
  351. "scale": {
  352. "type": "list<double>",
  353. "value": [
  354. 1,
  355. 1
  356. ]
  357. },
  358. "textContent": {
  359. "type": "string",
  360. "value": "#"
  361. },
  362. "style": {
  363. "type": "map<string,string>",
  364. "value": {
  365. "stroke": "#6000ff",
  366. "fill": "#6000ff",
  367. "font-size": "15px",
  368. "opacity": "1"
  369. }
  370. },
  371. "mapper": {
  372. "type": "code",
  373. "value": "({'textContent':getAttr('__pLabel')})"
  374. },
  375. "parser": {
  376. "type": "code",
  377. "value": "({'__pLabel':getAttr('textContent')})"
  378. },
  379. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text"
  380. }
  381. },
  382. "edges": []
  383. }
  384. },
  385. {
  386. "name": "$asuri",
  387. "type": "string",
  388. "default": "-1"
  389. }
  390. ],
  391. "__pTransitionLink": [
  392. {
  393. "name": "link-style",
  394. "type": "map<string,string>",
  395. "default": {
  396. "stroke": "#000000",
  397. "stroke-dasharray": "",
  398. "stroke-opacity": 1,
  399. "stroke-width": 2
  400. }
  401. },
  402. {
  403. "name": "arrowHead",
  404. "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)",
  405. "default": "custom"
  406. },
  407. {
  408. "name": "arrowTail",
  409. "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)",
  410. "default": "arrow-black"
  411. },
  412. {
  413. "name": "typename",
  414. "type": "string",
  415. "default": "TransitionLink"
  416. },
  417. {
  418. "name": "position",
  419. "type": "list<double>",
  420. "default": [
  421. 882,
  422. 366
  423. ]
  424. },
  425. {
  426. "name": "orientation",
  427. "type": "double",
  428. "default": 0
  429. },
  430. {
  431. "name": "scale",
  432. "type": "list<double>",
  433. "default": [
  434. 1,
  435. 1
  436. ]
  437. },
  438. {
  439. "name": "mapper",
  440. "type": "code",
  441. "default": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  442. },
  443. {
  444. "name": "parser",
  445. "type": "code",
  446. "default": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  447. },
  448. {
  449. "name": "$contents",
  450. "type": "map<string,*>",
  451. "default": {
  452. "nodes": {
  453. "7": {
  454. "textContent": {
  455. "type": "string",
  456. "value": "<coded>"
  457. },
  458. "style": {
  459. "type": "map<string,string>",
  460. "value": {
  461. "stroke": "#000000",
  462. "stroke-dasharray": "",
  463. "fill": "#ffffff",
  464. "fill-opacity": 0.75,
  465. "font-size": "20px",
  466. "stroke-width": 1,
  467. "arrow-start": "none",
  468. "arrow-end": "none"
  469. }
  470. },
  471. "mapper": {
  472. "type": "code",
  473. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  474. },
  475. "parser": {
  476. "type": "code",
  477. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  478. },
  479. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
  480. "position": {
  481. "type": "list<double>",
  482. "value": [
  483. 0,
  484. 0
  485. ]
  486. },
  487. "orientation": {
  488. "type": "double",
  489. "value": 0
  490. },
  491. "scale": {
  492. "type": "list<double>",
  493. "value": [
  494. 1,
  495. 1
  496. ]
  497. },
  498. "$linkDecoratorInfo": {
  499. "type": "map<string,double>",
  500. "value": {
  501. "xratio": 0.18404907975460122,
  502. "yoffset": -26.5
  503. }
  504. }
  505. },
  506. "267": {
  507. "segments": {
  508. "type": "string",
  509. "value": "m0,0 l10,4 l-10,4 l3,-4 z"
  510. },
  511. "style": {
  512. "type": "map<string,string>",
  513. "value": {
  514. "stroke": "#000000",
  515. "fill": "#000000",
  516. "opacity": 1,
  517. "stroke-width": 1
  518. }
  519. },
  520. "mapper": {
  521. "type": "code",
  522. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  523. },
  524. "parser": {
  525. "type": "code",
  526. "value": "/* mapping and parsing code is disabled by default because pattern attribute values are code */"
  527. },
  528. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Path",
  529. "position": {
  530. "type": "list<double>",
  531. "value": [
  532. 0,
  533. 0
  534. ]
  535. },
  536. "orientation": {
  537. "type": "double",
  538. "value": 0
  539. },
  540. "scale": {
  541. "type": "list<double>",
  542. "value": [
  543. 1,
  544. 1
  545. ]
  546. },
  547. "$linkDecoratorInfo": {
  548. "type": "map<string,double>",
  549. "value": {
  550. "xratio": 1,
  551. "yoffset": -4
  552. }
  553. }
  554. },
  555. "__pLabelText": {
  556. "position": {
  557. "type": "list<double>",
  558. "value": [
  559. 0,
  560. 0
  561. ]
  562. },
  563. "orientation": {
  564. "type": "double",
  565. "value": 0
  566. },
  567. "scale": {
  568. "type": "list<double>",
  569. "value": [
  570. 1,
  571. 1
  572. ]
  573. },
  574. "textContent": {
  575. "type": "string",
  576. "value": "#"
  577. },
  578. "style": {
  579. "type": "map<string,string>",
  580. "value": {
  581. "stroke": "#6000ff",
  582. "fill": "#6000ff",
  583. "font-size": "15px",
  584. "opacity": "1"
  585. }
  586. },
  587. "mapper": {
  588. "type": "code",
  589. "value": "({'textContent':getAttr('__pLabel')})"
  590. },
  591. "parser": {
  592. "type": "code",
  593. "value": "({'__pLabel':getAttr('textContent')})"
  594. },
  595. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text"
  596. }
  597. },
  598. "edges": []
  599. }
  600. },
  601. {
  602. "name": "$asuri",
  603. "type": "string",
  604. "default": "-1"
  605. },
  606. {
  607. "name": "$segments",
  608. "type": "map<string,list<string>>",
  609. "default": {}
  610. }
  611. ],
  612. "__pStateIcon": [
  613. {
  614. "name": "typename",
  615. "type": "string",
  616. "default": "__pStateIcon"
  617. },
  618. {
  619. "name": "position",
  620. "type": "list<double>",
  621. "default": [
  622. 0,
  623. 0
  624. ]
  625. },
  626. {
  627. "name": "orientation",
  628. "type": "double",
  629. "default": 0
  630. },
  631. {
  632. "name": "scale",
  633. "type": "list<double>",
  634. "default": [
  635. 1,
  636. 1
  637. ]
  638. },
  639. {
  640. "name": "mapper",
  641. "type": "code",
  642. "default": ""
  643. },
  644. {
  645. "name": "parser",
  646. "type": "code",
  647. "default": ""
  648. },
  649. {
  650. "name": "$contents",
  651. "type": "map<string,*>",
  652. "default": {
  653. "nodes": {
  654. "text": {
  655. "textContent": {
  656. "type": "string",
  657. "value": "__pStateIcon"
  658. },
  659. "style": {
  660. "type": "map<string,string>",
  661. "value": {
  662. "stroke": "#000000",
  663. "stroke-dasharray": "",
  664. "fill": "#000000",
  665. "fill-opacity": "1",
  666. "font-size": "13px"
  667. }
  668. },
  669. "mapper": {
  670. "type": "code",
  671. "value": ""
  672. },
  673. "parser": {
  674. "type": "code",
  675. "value": ""
  676. },
  677. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text",
  678. "position": {
  679. "type": "list<double>",
  680. "value": [
  681. 10,
  682. 76
  683. ]
  684. },
  685. "orientation": {
  686. "type": "double",
  687. "value": 0
  688. },
  689. "scale": {
  690. "type": "list<double>",
  691. "value": [
  692. 1,
  693. 1
  694. ]
  695. }
  696. },
  697. "rect": {
  698. "width": {
  699. "type": "double",
  700. "value": 75
  701. },
  702. "height": {
  703. "type": "double",
  704. "value": 75
  705. },
  706. "cornerRadius": {
  707. "type": "double",
  708. "value": 15
  709. },
  710. "style": {
  711. "type": "map<string,string>",
  712. "value": {
  713. "stroke": "#000000",
  714. "fill": "#ffffff",
  715. "fill-opacity": 0.75
  716. }
  717. },
  718. "mapper": {
  719. "type": "code",
  720. "value": ""
  721. },
  722. "parser": {
  723. "type": "code",
  724. "value": ""
  725. },
  726. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Rectangle",
  727. "position": {
  728. "type": "list<double>",
  729. "value": [
  730. 0,
  731. 0
  732. ]
  733. },
  734. "orientation": {
  735. "type": "double",
  736. "value": 0
  737. },
  738. "scale": {
  739. "type": "list<double>",
  740. "value": [
  741. 1,
  742. 1
  743. ]
  744. }
  745. },
  746. "textBelowRect": {
  747. "distance": {
  748. "type": "double",
  749. "value": 10
  750. },
  751. "alignment": {
  752. "type": "ENUM(\"right\",\"left\",\"center\")",
  753. "value": "center"
  754. },
  755. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Below",
  756. "position": {
  757. "type": "list<double>",
  758. "value": [
  759. 5,
  760. 38
  761. ]
  762. },
  763. "orientation": {
  764. "type": "double",
  765. "value": 0
  766. },
  767. "scale": {
  768. "type": "list<double>",
  769. "value": [
  770. 1,
  771. 1
  772. ]
  773. },
  774. "link-style": {
  775. "type": "map<string,string>",
  776. "value": {
  777. "stroke": "#00ff00",
  778. "stroke-dasharray": "",
  779. "stroke-opacity": 1,
  780. "arrow-start": "none",
  781. "arrow-end": "classic-wide-long"
  782. }
  783. }
  784. },
  785. "__pLabelText": {
  786. "position": {
  787. "type": "list<double>",
  788. "value": [
  789. 0,
  790. 0
  791. ]
  792. },
  793. "orientation": {
  794. "type": "double",
  795. "value": 0
  796. },
  797. "scale": {
  798. "type": "list<double>",
  799. "value": [
  800. 1,
  801. 1
  802. ]
  803. },
  804. "textContent": {
  805. "type": "string",
  806. "value": "#"
  807. },
  808. "style": {
  809. "type": "map<string,string>",
  810. "value": {
  811. "stroke": "#6000ff",
  812. "fill": "#6000ff",
  813. "font-size": "15px",
  814. "opacity": "1"
  815. }
  816. },
  817. "mapper": {
  818. "type": "code",
  819. "value": "({'textContent':getAttr('__pLabel')})"
  820. },
  821. "parser": {
  822. "type": "code",
  823. "value": "({'__pLabel':getAttr('textContent')})"
  824. },
  825. "$type": "/Formalisms/__LanguageSyntax__/ConcreteSyntax/ConcreteSyntax/Text"
  826. }
  827. },
  828. "edges": [
  829. {
  830. "src": "text",
  831. "dest": "textBelowRect"
  832. },
  833. {
  834. "src": "textBelowRect",
  835. "dest": "rect"
  836. }
  837. ]
  838. }
  839. },
  840. {
  841. "name": "$asuri",
  842. "type": "string",
  843. "default": "-1"
  844. }
  845. ]
  846. },
  847. "constraints": [],
  848. "actions": [],
  849. "cardinalities": {
  850. "__pOpenIcon": [],
  851. "__pClosedIcon": [],
  852. "__pTransitionLink": [],
  853. "__pStateIcon": []
  854. },
  855. "legalConnections": {},
  856. "connectorTypes": {},
  857. "types2parentTypes": {
  858. "__pOpenIcon": [],
  859. "__pClosedIcon": [],
  860. "__pTransitionLink": [],
  861. "__pStateIcon": []
  862. }
  863. }