activefacts-examples 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.rspec +1 -0
  4. data/.travis.yml +4 -0
  5. data/Gemfile +10 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +22 -0
  8. data/Rakefile +6 -0
  9. data/activefacts-examples.gemspec +26 -0
  10. data/cql/Address.cql +44 -0
  11. data/cql/Astronomy.cql +35 -0
  12. data/cql/Blog.cql +54 -0
  13. data/cql/CinemaBookings.cql +64 -0
  14. data/cql/CinemaTickets.cql +127 -0
  15. data/cql/CompanyDirectorEmployee.cql +56 -0
  16. data/cql/Death.cql +17 -0
  17. data/cql/Diplomacy.cql +48 -0
  18. data/cql/Genealogy.cql +98 -0
  19. data/cql/Health.cql +78 -0
  20. data/cql/Insurance.cql +320 -0
  21. data/cql/Marriage.cql +18 -0
  22. data/cql/Metamodel.cql +567 -0
  23. data/cql/Monogamy.cql +24 -0
  24. data/cql/MultiInheritance.cql +22 -0
  25. data/cql/MultipleSubtyping.cql +30 -0
  26. data/cql/NonRoleId.cql +14 -0
  27. data/cql/OddIdentifier.cql +18 -0
  28. data/cql/OilSupply.cql +53 -0
  29. data/cql/OneRoleNesting.cql +38 -0
  30. data/cql/OneToOnes.cql +17 -0
  31. data/cql/Orienteering.cql +111 -0
  32. data/cql/PartyModel.cql +38 -0
  33. data/cql/PersonPlaysGame.cql +18 -0
  34. data/cql/RedundantDependency.cql +34 -0
  35. data/cql/SchoolActivities.cql +33 -0
  36. data/cql/SeparateSubtype.cql +30 -0
  37. data/cql/ServiceDirector.cql +276 -0
  38. data/cql/SimplestUnary.cql +12 -0
  39. data/cql/Supervision.cql +34 -0
  40. data/cql/VenueSeating.cql +45 -0
  41. data/cql/WaiterTips.cql +33 -0
  42. data/cql/Warehousing.cql +101 -0
  43. data/cql/WindowInRoomInBldg.cql +28 -0
  44. data/cql/unit.cql +474 -0
  45. data/diagrams/json/Address.json +41 -0
  46. data/diagrams/json/Astronomy.json +31 -0
  47. data/diagrams/json/Blog.json +46 -0
  48. data/diagrams/json/CinemaBookings.json +53 -0
  49. data/diagrams/json/CinemaTickets.json +101 -0
  50. data/diagrams/json/CompanyDirectorEmployee.json +44 -0
  51. data/diagrams/json/Death.json +20 -0
  52. data/diagrams/json/Diplomacy.json +34 -0
  53. data/diagrams/json/Genealogy.json +78 -0
  54. data/diagrams/json/Insurance.json +259 -0
  55. data/diagrams/json/Marriage.json +21 -0
  56. data/diagrams/json/Metamodel.json +318 -0
  57. data/diagrams/json/Monogamy.json +22 -0
  58. data/diagrams/json/MultiInheritance.json +25 -0
  59. data/diagrams/json/MultipleSubtyping.json +22 -0
  60. data/diagrams/json/OilSupply.json +49 -0
  61. data/diagrams/json/OneRoleNesting.json +37 -0
  62. data/diagrams/json/Orienteering.json +94 -0
  63. data/diagrams/json/PersonPlaysGame.json +22 -0
  64. data/diagrams/json/RedundantDependency.json +33 -0
  65. data/diagrams/json/SchoolActivities.json +28 -0
  66. data/diagrams/json/SeparateSubtype.json +29 -0
  67. data/diagrams/json/SimplestUnary.json +15 -0
  68. data/diagrams/json/Supervision.json +27 -0
  69. data/diagrams/json/VenueSeating.json +40 -0
  70. data/diagrams/json/WaiterTips.json +29 -0
  71. data/diagrams/json/Warehousing.json +86 -0
  72. data/diagrams/json/WindowInRoomInBldg.json +31 -0
  73. data/images/Address.SQL.png +0 -0
  74. data/images/Address.png +0 -0
  75. data/images/Blog.png +0 -0
  76. data/images/CinemaBookings.png +0 -0
  77. data/images/CinemaTickets.png +0 -0
  78. data/images/CompanyDirectorEmployee.png +0 -0
  79. data/images/Death.png +0 -0
  80. data/images/Diplomacy.png +0 -0
  81. data/images/DumpMetamodel.bat +2 -0
  82. data/images/Genealogy.png +0 -0
  83. data/images/Insurance/Claim.png +0 -0
  84. data/images/Insurance/Insurance.png +0 -0
  85. data/images/Insurance/Person.png +0 -0
  86. data/images/Insurance/Policy.png +0 -0
  87. data/images/Insurance/Related.png +0 -0
  88. data/images/Insurance/VehicleIncident.png +0 -0
  89. data/images/Marriage.png +0 -0
  90. data/images/Metamodel/Concepts.png +0 -0
  91. data/images/Metamodel/Constraints.png +0 -0
  92. data/images/Metamodel/ContextNote.png +0 -0
  93. data/images/Metamodel/Diagrams.png +0 -0
  94. data/images/Metamodel/Language.png +0 -0
  95. data/images/Metamodel/Legacy.png +0 -0
  96. data/images/Metamodel/Objects.png +0 -0
  97. data/images/Metamodel/Populations.png +0 -0
  98. data/images/Metamodel/Query.png +0 -0
  99. data/images/Metamodel/Units.png +0 -0
  100. data/images/Metamodel/ValueConstraints.png +0 -0
  101. data/images/Metamodel/ValueTypes.png +0 -0
  102. data/images/MetamodelER.bcp +1 -0
  103. data/images/MetamodelER.pdf +0 -0
  104. data/images/MultiInheritance.png +0 -0
  105. data/images/NorthwindER.png +0 -0
  106. data/images/OilSupply.png +0 -0
  107. data/images/Orienteering/Administration.png +0 -0
  108. data/images/Orienteering/Registration.png +0 -0
  109. data/images/Orienteering/Scoring.png +0 -0
  110. data/images/PersonPlaysGame.png +0 -0
  111. data/images/RedundantDependency.png +0 -0
  112. data/images/SchoolActivities.png +0 -0
  113. data/images/SeparateSubtype.png +0 -0
  114. data/images/SimplestUnary.png +0 -0
  115. data/images/Supervision.png +0 -0
  116. data/images/VenueSeating.png +0 -0
  117. data/images/WaiterTips.png +0 -0
  118. data/images/Warehousing.png +0 -0
  119. data/images/WindowInRoomInBldg.png +0 -0
  120. data/metadata/json/Astronomy.json +175 -0
  121. data/metadata/json/CinemaBookings.json +354 -0
  122. data/metadata/json/CinemaTickets.json +768 -0
  123. data/metadata/json/CompanyDirectorEmployee.json +270 -0
  124. data/metadata/json/Diplomacy.json +186 -0
  125. data/metadata/json/Metamodel.json +3214 -0
  126. data/metadata/json/OilSupply.json +411 -0
  127. data/metadata/json/SeparateSubtype.json +157 -0
  128. data/metadata/json/Supervision.json +128 -0
  129. data/metadata/json/VenueSeating.json +209 -0
  130. data/orm/.gitignore +11 -0
  131. data/orm/Address.orm +1268 -0
  132. data/orm/Astronomy.orm +925 -0
  133. data/orm/Blog.orm +1711 -0
  134. data/orm/CinemaBookings.orm +1998 -0
  135. data/orm/CinemaTickets.orm +5060 -0
  136. data/orm/CompanyDirectorEmployee.orm +2094 -0
  137. data/orm/Death.orm +386 -0
  138. data/orm/Diplomacy.orm +1478 -0
  139. data/orm/ExampleModels2010.csproj +764 -0
  140. data/orm/ExampleModels2010.sln +16 -0
  141. data/orm/Genealogy.orm +3209 -0
  142. data/orm/Health.orm +2407 -0
  143. data/orm/Insurance.orm +12727 -0
  144. data/orm/Marriage.orm +493 -0
  145. data/orm/Metamodel.orm +20998 -0
  146. data/orm/Monogamy.orm +328 -0
  147. data/orm/MultiInheritance.orm +537 -0
  148. data/orm/MultipleSubtyping.orm +347 -0
  149. data/orm/OilSupply.orm +2533 -0
  150. data/orm/OneRoleNesting.orm +1237 -0
  151. data/orm/Orienteering.orm +3976 -0
  152. data/orm/PersonPlaysGame.orm +426 -0
  153. data/orm/RedundantDependency.orm +844 -0
  154. data/orm/SchoolActivities.orm +961 -0
  155. data/orm/SeparateSubtype.orm +821 -0
  156. data/orm/SimplestUnary.orm +172 -0
  157. data/orm/Supervision.orm +734 -0
  158. data/orm/VenueSeating.orm +1289 -0
  159. data/orm/WaiterTips.orm +789 -0
  160. data/orm/Warehousing.orm +3792 -0
  161. data/orm/WindowInRoomInBldg.orm +772 -0
  162. data/rails/models/Astronomy.models +17 -0
  163. data/rails/models/CinemaBookings.models +123 -0
  164. data/rails/models/CinemaTickets.models +192 -0
  165. data/rails/models/Diplomacy.models +126 -0
  166. data/rails/models/Metamodel.models +894 -0
  167. data/rails/models/OneRoleNesting.models +18 -0
  168. data/rails/models/SeparateSubtype.models +49 -0
  169. data/rails/models/VenueSeating.models +70 -0
  170. data/rails/schema/Astronomy.schema.rb +25 -0
  171. data/rails/schema/CinemaBookings.schema.rb +78 -0
  172. data/rails/schema/CinemaTickets.schema.rb +132 -0
  173. data/rails/schema/Diplomacy.schema.rb +74 -0
  174. data/rails/schema/Metamodel.schema.rb +538 -0
  175. data/rails/schema/OneRoleNesting.rb +20 -0
  176. data/rails/schema/SeparateSubtype.schema.rb +35 -0
  177. data/rails/schema/VenueSeating.schema.rb +46 -0
  178. data/rails/schema/Warehousing.schema.rb +145 -0
  179. data/ruby/Address.rb +68 -0
  180. data/ruby/Astronomy.rb +55 -0
  181. data/ruby/Blog.rb +84 -0
  182. data/ruby/CinemaBookings.rb +109 -0
  183. data/ruby/CinemaTickets.rb +218 -0
  184. data/ruby/CompanyDirectorEmployee.rb +73 -0
  185. data/ruby/Death.rb +26 -0
  186. data/ruby/Diplomacy.rb +59 -0
  187. data/ruby/Genealogy.rb +173 -0
  188. data/ruby/Insurance.rb +562 -0
  189. data/ruby/Marriage.rb +21 -0
  190. data/ruby/Metamodel.rb +621 -0
  191. data/ruby/Monogamy.rb +27 -0
  192. data/ruby/MultiInheritance.rb +38 -0
  193. data/ruby/OilSupply.rb +112 -0
  194. data/ruby/OneRoleNesting.rb +66 -0
  195. data/ruby/Orienteering.rb +216 -0
  196. data/ruby/PersonPlaysGame.rb +31 -0
  197. data/ruby/RedundantDependency.rb +53 -0
  198. data/ruby/SchoolActivities.rb +49 -0
  199. data/ruby/SeparateSubtype.rb +46 -0
  200. data/ruby/SimplestUnary.rb +10 -0
  201. data/ruby/Supervision.rb +33 -0
  202. data/ruby/TwoValues.rb +14 -0
  203. data/ruby/VenueSeating.rb +64 -0
  204. data/ruby/WaiterTips.rb +49 -0
  205. data/ruby/Warehousing.rb +167 -0
  206. data/ruby/WindowInRoomInBldg.rb +45 -0
  207. data/sql/server/Address.sql +40 -0
  208. data/sql/server/Astronomy.sql +36 -0
  209. data/sql/server/Blog.sql +78 -0
  210. data/sql/server/CinemaBookings.sql +95 -0
  211. data/sql/server/CinemaTickets.sql +191 -0
  212. data/sql/server/CompanyDirectorEmployee.sql +104 -0
  213. data/sql/server/Death.sql +11 -0
  214. data/sql/server/Diplomacy.sql +66 -0
  215. data/sql/server/Genealogy.sql +138 -0
  216. data/sql/server/Health.sql +169 -0
  217. data/sql/server/Insurance.sql +484 -0
  218. data/sql/server/Marriage.sql +30 -0
  219. data/sql/server/Metamodel.sql +1000 -0
  220. data/sql/server/Monogamy.sql +20 -0
  221. data/sql/server/MultiInheritance.sql +27 -0
  222. data/sql/server/OilSupply.sql +105 -0
  223. data/sql/server/OneRoleNesting.sql +29 -0
  224. data/sql/server/Orienteering.sql +186 -0
  225. data/sql/server/PersonPlaysGame.sql +9 -0
  226. data/sql/server/RedundantDependency.sql +54 -0
  227. data/sql/server/SchoolActivities.sql +30 -0
  228. data/sql/server/SeparateSubtype.sql +33 -0
  229. data/sql/server/SimplestUnary.sql +9 -0
  230. data/sql/server/Supervision.sql +30 -0
  231. data/sql/server/VenueSeating.sql +54 -0
  232. data/sql/server/WaiterTips.sql +31 -0
  233. data/sql/server/Warehousing.sql +203 -0
  234. data/sql/server/WindowInRoomInBldg.sql +13 -0
  235. data/transform/surrogate/Address.absorption +2 -0
  236. data/transform/surrogate/Blog.absorption +5 -0
  237. data/transform/surrogate/CinemaBookings.absorption +7 -0
  238. data/transform/surrogate/CompanyDirectorEmployee.absorption +7 -0
  239. data/transform/surrogate/Death.absorption +1 -0
  240. data/transform/surrogate/Diplomacy-revised.absorption +6 -0
  241. data/transform/surrogate/Diplomacy.absorption +6 -0
  242. data/transform/surrogate/Genealogy.absorption +8 -0
  243. data/transform/surrogate/Insurance.absorption +18 -0
  244. data/transform/surrogate/Marriage.absorption +2 -0
  245. data/transform/surrogate/Metamodel.absorption +25 -0
  246. data/transform/surrogate/Monogamy.absorption +1 -0
  247. data/transform/surrogate/MultiInheritance.absorption +1 -0
  248. data/transform/surrogate/MultipleSubtyping.absorption +1 -0
  249. data/transform/surrogate/OilSupply.absorption +8 -0
  250. data/transform/surrogate/OneRoleNesting.absorption +1 -0
  251. data/transform/surrogate/Orienteering.absorption +11 -0
  252. data/transform/surrogate/PersonPlaysGame.absorption +1 -0
  253. data/transform/surrogate/RedundantDependency.absorption +3 -0
  254. data/transform/surrogate/SchoolActivities.absorption +3 -0
  255. data/transform/surrogate/SeparateSubtype.absorption +3 -0
  256. data/transform/surrogate/SimplestUnary.absorption +1 -0
  257. data/transform/surrogate/Supervision.absorption +2 -0
  258. data/transform/surrogate/WaiterTips.absorption +3 -0
  259. data/transform/surrogate/Warehousing.absorption +12 -0
  260. data/transform/surrogate/WindowInRoomInBldg.absorption +1 -0
  261. data/transform/surrogate/unit.absorption +0 -0
  262. metadata +374 -0
@@ -0,0 +1,354 @@
1
+ {
2
+ "types": {
3
+ "Booking": {
4
+ "is_main": true,
5
+ "id": "66e2a325-ef20-46ad-876e-7fe4e345b3df",
6
+ "functions": [
7
+ {
8
+ "title": "involving Person",
9
+ "type": "Person",
10
+ "where": "this Person booked some Session for some Number of seats"
11
+ },
12
+ {
13
+ "title": "involving Session",
14
+ "type": "Session",
15
+ "where": "some Person booked this Session for some Number of seats"
16
+ },
17
+ {
18
+ "title": "involving Number",
19
+ "type": "Number",
20
+ "where": "some Person booked some Session for this Number of seats"
21
+ },
22
+ {
23
+ "title": "all Allocated Seat",
24
+ "type": "Seat",
25
+ "where": "this Booking has some allocated-Seat",
26
+ "role_id": "000264b1-9624-4b99-ac6d-e13ba7548c31",
27
+ "is_list": true
28
+ },
29
+ {
30
+ "title": "Booking is confirmed",
31
+ "type": "boolean",
32
+ "where": "this Booking is confirmed",
33
+ "role_id": "88d9a2eb-ceeb-4f7a-92b9-e388531f5fa3"
34
+ }
35
+ ]
36
+ },
37
+ "Cinema": {
38
+ "is_main": true,
39
+ "id": "2e20e87c-8d41-48b0-8675-5ea3c8e5cea1",
40
+ "functions": [
41
+ {
42
+ "title": "Cinema ID",
43
+ "type": "Cinema ID",
44
+ "where": "this Cinema has one Cinema ID",
45
+ "role_id": "6b9d259d-9dcf-4c09-af7e-1d249ac074a4"
46
+ },
47
+ {
48
+ "title": "all Session",
49
+ "type": "Session",
50
+ "where": "this Cinema shows some Film on some DateTime",
51
+ "role_id": "b39cbef2-94f6-4ba6-ae88-b6defdaaca84",
52
+ "is_list": true
53
+ },
54
+ {
55
+ "title": "all Row",
56
+ "type": "Row",
57
+ "where": "this Cinema contains some Row",
58
+ "role_id": "315c2249-2bc8-40ac-bf86-8d8c8dfcc3de",
59
+ "is_list": true
60
+ }
61
+ ]
62
+ },
63
+ "Cinema ID": {
64
+ "is_main": false,
65
+ "id": "acbc58f0-217d-426b-86db-f8fc1327a4c0",
66
+ "functions": [
67
+ {
68
+ "title": "Cinema",
69
+ "type": "Cinema",
70
+ "where": "this Cinema ID is of one Cinema",
71
+ "role_id": "b2f072ba-24a5-4698-b8a7-7aa5bc850b82"
72
+ }
73
+ ]
74
+ },
75
+ "DateTime": {
76
+ "is_main": false,
77
+ "id": "a56af9cf-07b4-43b5-aeed-b503b765edb6",
78
+ "functions": [
79
+ {
80
+ "title": "all Session",
81
+ "type": "Session",
82
+ "where": "some Cinema shows some Film on this DateTime",
83
+ "role_id": "4732800a-411b-4dac-8ce0-a632a0f38a83",
84
+ "is_list": true
85
+ },
86
+ {
87
+ "title": "DateTime Value",
88
+ "type": "DateTime Value",
89
+ "where": "this DateTime has one DateTime Value",
90
+ "role_id": "04d9f7a9-c071-455b-9d52-e1d925d512af"
91
+ }
92
+ ]
93
+ },
94
+ "DateTime Value": {
95
+ "is_main": false,
96
+ "id": "a456f4c8-027d-4dd7-9e8a-1d7001e322f1",
97
+ "functions": [
98
+ {
99
+ "title": "DateTime",
100
+ "type": "DateTime",
101
+ "where": "this DateTime Value is of one DateTime",
102
+ "role_id": "d000494a-0a77-4f02-b2dd-19d3b9d86b49"
103
+ }
104
+ ]
105
+ },
106
+ "Film": {
107
+ "is_main": true,
108
+ "id": "1d7854f1-3a56-40a8-8e42-8cc27f189402",
109
+ "functions": [
110
+ {
111
+ "title": "all Session",
112
+ "type": "Session",
113
+ "where": "this Film is showing on some DateTime at some Cinema",
114
+ "role_id": "1e8993c7-259f-412f-83d9-cbafc8e9ba8b",
115
+ "is_list": true
116
+ },
117
+ {
118
+ "title": "Film ID",
119
+ "type": "Film ID",
120
+ "where": "this Film has one Film ID",
121
+ "role_id": "21b4b11d-a8f1-4ade-8ce5-20eed7b05674"
122
+ },
123
+ {
124
+ "title": "Name",
125
+ "type": "Name",
126
+ "where": "this Film has one Name",
127
+ "role_id": "6ff2e46a-319d-4093-b942-5355355ce989"
128
+ }
129
+ ]
130
+ },
131
+ "Film ID": {
132
+ "is_main": false,
133
+ "id": "fd7e6d26-5ab1-4e5f-a93f-65e75ad87fbe",
134
+ "functions": [
135
+ {
136
+ "title": "Film",
137
+ "type": "Film",
138
+ "where": "this Film ID is of one Film",
139
+ "role_id": "9445b372-97db-4caa-8888-baab5c62f84a"
140
+ }
141
+ ]
142
+ },
143
+ "Name": {
144
+ "is_main": false,
145
+ "id": "6c5d12e4-13ff-4a64-b3d8-9350ec73c377",
146
+ "functions": [
147
+ {
148
+ "title": "all Film",
149
+ "type": "Film",
150
+ "where": "some Film has this Name",
151
+ "role_id": "9d8cc638-ffd2-4a8d-8665-01e817af0852",
152
+ "is_list": true
153
+ },
154
+ {
155
+ "title": "Person",
156
+ "type": "Person",
157
+ "where": "this Name is of one Person",
158
+ "role_id": "87b43854-22f2-4545-b860-8f324319d88a"
159
+ }
160
+ ]
161
+ },
162
+ "Number": {
163
+ "is_main": false,
164
+ "id": "9b784cdb-0e16-405e-918c-a73a3625c364",
165
+ "functions": [
166
+ {
167
+ "title": "all Booking",
168
+ "type": "Booking",
169
+ "where": "some Person booked some Session for this Number of seats",
170
+ "role_id": "8e315a5f-0888-4474-9025-26ce0d7a3af0",
171
+ "is_list": true
172
+ }
173
+ ]
174
+ },
175
+ "Person": {
176
+ "is_main": true,
177
+ "id": "761ec600-dbb0-45fc-83be-252d128d3415",
178
+ "functions": [
179
+ {
180
+ "title": "all Booking",
181
+ "type": "Booking",
182
+ "where": "this Person booked some Session for some Number of seats",
183
+ "role_id": "bccb1951-35c9-426a-af5e-1d2d1f1234d1",
184
+ "is_list": true
185
+ },
186
+ {
187
+ "title": "Person ID",
188
+ "type": "Person ID",
189
+ "where": "this Person has one Person ID",
190
+ "role_id": "49efab3c-1f7a-4574-9059-4240e98bc163"
191
+ },
192
+ {
193
+ "title": "Login Name",
194
+ "type": "Name",
195
+ "where": "this Person has one login-Name",
196
+ "role_id": "6d0a8f1e-a649-4fba-b0b3-d86a22a21ac2"
197
+ }
198
+ ]
199
+ },
200
+ "Person ID": {
201
+ "is_main": false,
202
+ "id": "f8716d97-e01d-40f2-ae04-8f57553d1cd2",
203
+ "functions": [
204
+ {
205
+ "title": "Person",
206
+ "type": "Person",
207
+ "where": "this Person ID is of one Person",
208
+ "role_id": "1d46c4b4-efed-48d4-acab-3e630f561136"
209
+ }
210
+ ]
211
+ },
212
+ "Row": {
213
+ "is_main": false,
214
+ "id": "9858075d-b08e-44f6-bce8-e6722f5d3beb",
215
+ "functions": [
216
+ {
217
+ "title": "Row Nr",
218
+ "type": "Row Nr",
219
+ "where": "this Row has one Row Nr",
220
+ "role_id": "8ca63cf2-c59a-42ef-b82c-ca32dac82e0f"
221
+ },
222
+ {
223
+ "title": "Cinema",
224
+ "type": "Cinema",
225
+ "where": "this Row is in one Cinema",
226
+ "role_id": "edf7a328-a9b3-485f-a44b-0e203d42171d"
227
+ },
228
+ {
229
+ "title": "all Seat",
230
+ "type": "Seat",
231
+ "where": "this Row contains some Seat",
232
+ "role_id": "24bca8a6-df02-45d3-86b8-01b9c7a53517",
233
+ "is_list": true
234
+ }
235
+ ]
236
+ },
237
+ "Row Nr": {
238
+ "is_main": false,
239
+ "id": "8940891d-2822-4f3a-be26-eadd2c17c425",
240
+ "functions": [
241
+ {
242
+ "title": "all Row",
243
+ "type": "Row",
244
+ "where": "this Row Nr is of some Row",
245
+ "role_id": "656a376f-880d-413c-93d4-61a0ccd32764",
246
+ "is_list": true
247
+ }
248
+ ]
249
+ },
250
+ "Seat": {
251
+ "is_main": true,
252
+ "id": "6beb0ce8-2540-47ed-92ab-23b960458985",
253
+ "functions": [
254
+ {
255
+ "title": "all Booking",
256
+ "type": "Booking",
257
+ "where": "this Seat is allocated to some Booking",
258
+ "role_id": "2d3676e1-b3df-43a5-a0cd-fa2a18fff815",
259
+ "is_list": true
260
+ },
261
+ {
262
+ "title": "Seat Number",
263
+ "type": "Seat Number",
264
+ "where": "this Seat has one Seat Number",
265
+ "role_id": "669e47e6-c457-4b4f-ae77-9aaf3ffbf0e5"
266
+ },
267
+ {
268
+ "title": "Row",
269
+ "type": "Row",
270
+ "where": "this Seat is in one Row",
271
+ "role_id": "3906d493-1eb7-420f-99dc-ac92eabafa0b"
272
+ },
273
+ {
274
+ "title": "Section",
275
+ "type": "Section",
276
+ "where": "this Seat is in one Section",
277
+ "role_id": "49ae93e6-9bbd-4a5b-a121-4e64aea0916a"
278
+ }
279
+ ]
280
+ },
281
+ "Seat Number": {
282
+ "is_main": false,
283
+ "id": "865f53fc-70f2-40c8-b70f-0ec3be820686",
284
+ "functions": [
285
+ {
286
+ "title": "all Seat",
287
+ "type": "Seat",
288
+ "where": "this Seat Number is of some Seat",
289
+ "role_id": "76334990-7256-42db-a6a1-3cfd74b522d6",
290
+ "is_list": true
291
+ }
292
+ ]
293
+ },
294
+ "Section": {
295
+ "is_main": false,
296
+ "id": "9d0c48d2-d839-43f4-b265-3b28cf77eecc",
297
+ "functions": [
298
+ {
299
+ "title": "all Seat",
300
+ "type": "Seat",
301
+ "where": "this Section contains some Seat",
302
+ "role_id": "81e72fb6-cde3-42ee-b9b1-ca32c95d50ab",
303
+ "is_list": true
304
+ },
305
+ {
306
+ "title": "Section Name",
307
+ "type": "Section Name",
308
+ "where": "this Section has one Section Name",
309
+ "role_id": "ea4e8591-357e-4bbd-b52e-ee1b52149183"
310
+ }
311
+ ]
312
+ },
313
+ "Section Name": {
314
+ "is_main": false,
315
+ "id": "03144e21-e1fb-452d-a033-812292854993",
316
+ "functions": [
317
+ {
318
+ "title": "Section",
319
+ "type": "Section",
320
+ "where": "this Section Name is of one Section",
321
+ "role_id": "68980371-7306-42a4-97ae-d582372ef52c"
322
+ }
323
+ ]
324
+ },
325
+ "Session": {
326
+ "is_main": true,
327
+ "id": "4cfc4a97-7de9-4be2-9d65-ef20805c9450",
328
+ "functions": [
329
+ {
330
+ "title": "involving Cinema",
331
+ "type": "Cinema",
332
+ "where": "this Cinema shows some Film on some DateTime"
333
+ },
334
+ {
335
+ "title": "involving Film",
336
+ "type": "Film",
337
+ "where": "this Film is showing on some DateTime at some Cinema"
338
+ },
339
+ {
340
+ "title": "involving DateTime",
341
+ "type": "DateTime",
342
+ "where": "some Cinema shows some Film on this DateTime"
343
+ },
344
+ {
345
+ "title": "all Booking",
346
+ "type": "Booking",
347
+ "where": "some Person booked this Session for some Number of seats",
348
+ "role_id": "17e2f5ec-7d75-49ff-801f-ef6a745eff71",
349
+ "is_list": true
350
+ }
351
+ ]
352
+ }
353
+ }
354
+ }