ramified_petrinets.mvc 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. SCD Pre_PetriNets {
  2. // Add AL MM
  3. Class LHS{
  4. constraint : Expression {
  5. target_upper_cardinality = 1
  6. }
  7. upper_cardinality = 1
  8. lower_cardinality = 1
  9. }
  10. Class NAC{}
  11. Class Pre_Element{
  12. label : String {
  13. target_lower_cardinality = 1
  14. target_upper_cardinality = 1
  15. }
  16. constraint : Expression {
  17. target_upper_cardinality = 1
  18. }
  19. }
  20. Association (LHS, Pre_Element)
  21. Association (NAC, Pre_Element){
  22. target_lower_cardinality = 1
  23. }
  24. Class Pre_Place{}
  25. Class Pre_Transition{}
  26. Class Pre_Natural{}
  27. Association Pre_P2T(Pre_Place, Pre_Transition) {}
  28. Association Pre_T2P(Pre_Transition, Pre_Place) {}
  29. Association Pre_Place_tokens(Pre_Place, Pre_Natural) {
  30. name = "Pre_tokens"
  31. target_upper_cardinality = 1
  32. }
  33. Association Pre_P2T_weight(Pre_P2T, Pre_Natural) {
  34. name = "Pre_weight"
  35. target_upper_cardinality = 1
  36. }
  37. Association Pre_T2P_weight(Pre_T2P, Pre_Natural) {
  38. name = "Pre_weight"
  39. target_upper_cardinality = 1
  40. }
  41. Inheritance (Pre_Place, Pre_Element) {}
  42. Inheritance (Pre_Natural, Pre_Element) {}
  43. Inheritance (Pre_Transition, Pre_Element) {}
  44. Inheritance (Pre_P2T, Pre_Element) {}
  45. Inheritance (Pre_Place_tokens, Pre_Element) {}
  46. Inheritance (Pre_P2T_weight, Pre_Element) {}
  47. Inheritance (Pre_T2P_weight, Pre_Element) {}
  48. }
  49. SCD Post_PetriNets{
  50. // Add AL MM
  51. Class RHS{
  52. action : FunctionDefinition
  53. upper_cardinality = 1
  54. lower_cardinality = 1
  55. }
  56. Class Post_Element {
  57. label : String {
  58. target_lower_cardinality = 1
  59. target_upper_cardinality = 1
  60. }
  61. value : Expression {
  62. target_upper_cardinality = 1
  63. }
  64. }
  65. Class Post_Place{}
  66. Class Post_Transitions{}
  67. Class Post_Natural{}
  68. Association Post_P2T(Post_Place, Post_Transition) {}
  69. Association Post_T2P(Post_Transition, Post_Place) {}
  70. Association (Post_Place, Post_Natural) {
  71. name = "Post_tokens"
  72. target_upper_cardinality = 1
  73. }
  74. Association (Post_P2T, Post_Natural) {
  75. name = "Post_weight"
  76. target_upper_cardinality = 1
  77. }
  78. Association (Post_T2P, Post_Natural) {
  79. name = "Post_weight"
  80. target_upper_cardinality = 1
  81. }
  82. Inheritance (Post_Place, Post_Element) {}
  83. Inheritance (Post_Natural, Post_Element) {}
  84. Inheritance (Post_Transition, Post_Element) {}
  85. Inheritance (Post_P2T, Post_Element) {}
  86. Inheritance (Post_Place_tokens, Post_Element) {}
  87. Inheritance (Post_P2T_weight, Post_Element) {}
  88. Inheritance (Post_T2P_weight, Post_Element) {}
  89. }