90_core_formalism.mvc 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. import models/SimpleClassDiagrams as SimpleClassDiagrams
  2. include "primitives.alh"
  3. SimpleClassDiagrams CoreFormalism {
  4. SimpleAttribute String {
  5. name = "String"
  6. }
  7. SimpleAttribute Permissions {
  8. name = "Permissions"
  9. }
  10. SimpleAttribute Boolean {
  11. name = "Boolean"
  12. }
  13. SimpleAttribute Natural {
  14. name = "Natural"
  15. }
  16. Class User {
  17. name = "User"
  18. name : String
  19. password : String
  20. admin : Boolean
  21. }
  22. Class Group {
  23. name = "Group"
  24. name : String
  25. }
  26. Association ownedBy (Group, User) {
  27. name = "ownedBy"
  28. }
  29. Association belongsTo (User, Group) {
  30. name = "belongsTo"
  31. }
  32. Class Entry {
  33. name = "Entry"
  34. name : String
  35. permissions : Permissions
  36. }
  37. Class Folder : Entry {
  38. name = "Folder"
  39. }
  40. Association contains (Folder, Entry) {
  41. name = "contains"
  42. }
  43. Class Model : Entry {
  44. name = "Model"
  45. location : String
  46. }
  47. Class TypeMapping : Model {
  48. name = "TypeMapping"
  49. }
  50. Association instanceOf (Model, Model) {
  51. name = "instanceOf"
  52. }
  53. Association owner (Model, User) {
  54. name = "owner"
  55. target_lower_cardinality = 1
  56. target_upper_cardinality = 1
  57. }
  58. Association group (Model, Group) {
  59. name = "group"
  60. target_lower_cardinality = 1
  61. target_upper_cardinality = 1
  62. }
  63. Class Transformation : Model {
  64. name = "Transformation"
  65. }
  66. Class ModelTransformation : Transformation {
  67. name = "ModelTransformation"
  68. }
  69. Class ActionLanguage : Transformation {
  70. name = "ActionLanguage"
  71. }
  72. Class ManualOperation : Transformation {
  73. name = "ManualOperation"
  74. }
  75. Association transformInput (Model, Transformation) {
  76. name = "transformInput"
  77. name : String
  78. }
  79. Association transformOutput (Transformation, Model) {
  80. name = "transformOutput"
  81. name : String
  82. }
  83. Association tracability (Model, Model) {
  84. name = "tracability"
  85. type : String
  86. }
  87. Association typing (instanceOf, TypeMapping) {
  88. name = "typing"
  89. target_lower_cardinality = 1
  90. target_upper_cardinality = 1
  91. }
  92. Class Service {
  93. name = "Service"
  94. name : String
  95. port : String
  96. }
  97. }
  98. export CoreFormalism to models/CoreFormalism