activefacts-examples 1.7.1

Sign up to get free protection for your applications and to get access to all the features.
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,768 @@
1
+ {
2
+ "types": {
3
+ "Address": {
4
+ "is_main": false,
5
+ "id": "79bed20a-dcc0-4220-ac8c-1ccaee2df3f9",
6
+ "functions": [
7
+ {
8
+ "title": "Address Text",
9
+ "type": "Address Text",
10
+ "where": "this Address has one Address Text",
11
+ "role_id": "88002aff-2cdc-4c31-9de8-a35c2d6e2171"
12
+ },
13
+ {
14
+ "title": "all Booking",
15
+ "type": "Booking",
16
+ "where": "tickets for some Booking are being mailed to this Address",
17
+ "role_id": "880fc697-835a-4032-b30b-a1615c564a8e",
18
+ "is_list": true
19
+ }
20
+ ]
21
+ },
22
+ "Address Text": {
23
+ "is_main": false,
24
+ "id": "0dfbe1ce-30f4-46ef-8400-59aba954569f",
25
+ "functions": [
26
+ {
27
+ "title": "Address",
28
+ "type": "Address",
29
+ "where": "this Address Text is of one Address",
30
+ "role_id": "9329045a-b0b9-4e37-8069-3c3c35d59d11"
31
+ }
32
+ ]
33
+ },
34
+ "Booking": {
35
+ "is_main": true,
36
+ "id": "805cf066-2ccf-40d1-80c8-0444871cd88b",
37
+ "functions": [
38
+ {
39
+ "title": "involving Person",
40
+ "type": "Person",
41
+ "where": "this Person booked some Session for some Number of places"
42
+ },
43
+ {
44
+ "title": "involving Session",
45
+ "type": "Session",
46
+ "where": "some Person booked this Session for some Number of places"
47
+ },
48
+ {
49
+ "title": "involving Number",
50
+ "type": "Number",
51
+ "where": "some Person booked some Session for this Number of places"
52
+ },
53
+ {
54
+ "title": "Booking Nr",
55
+ "type": "Booking Nr",
56
+ "where": "this Booking has one Booking Nr",
57
+ "role_id": "bcd7f14b-aeed-4325-96b8-29d619948efc"
58
+ },
59
+ {
60
+ "title": "Collection Code",
61
+ "type": "Collection Code",
62
+ "where": "this Booking has one Collection Code",
63
+ "role_id": "161bf2a5-99c3-49c8-803b-fd0532a4e559"
64
+ },
65
+ {
66
+ "title": "all Allocated Seat",
67
+ "type": "Seat",
68
+ "where": "this Booking has some allocated-Seat",
69
+ "role_id": "dfc48463-c64c-42c2-8d74-ae625f190e20",
70
+ "is_list": true
71
+ },
72
+ {
73
+ "title": "Section",
74
+ "type": "Section",
75
+ "where": "this Booking is for seats in one Section",
76
+ "role_id": "42bed52f-ac02-4f56-b54d-63d9e0e0c3b3"
77
+ },
78
+ {
79
+ "title": "all Places Paid",
80
+ "type": "Places Paid",
81
+ "where": "this Booking applied some Payment Method for some Number of places",
82
+ "role_id": "51be9fb3-22d5-4a7b-8fd5-6c2728f67136",
83
+ "is_list": true
84
+ },
85
+ {
86
+ "title": "Address",
87
+ "type": "Address",
88
+ "where": "tickets for this Booking are being mailed to one Address",
89
+ "role_id": "3f800b8f-991d-45c9-ada7-22ef43be02c3"
90
+ },
91
+ {
92
+ "title": "tickets for Booking have been issued",
93
+ "type": "boolean",
94
+ "where": "tickets for this Booking have been issued",
95
+ "role_id": "4cecc192-8ea3-4e04-a2f8-5ed3f08842bc"
96
+ }
97
+ ]
98
+ },
99
+ "Booking Nr": {
100
+ "is_main": false,
101
+ "id": "152f2dfc-7204-45c2-a201-4f823c26abe1",
102
+ "functions": [
103
+ {
104
+ "title": "Booking",
105
+ "type": "Booking",
106
+ "where": "this Booking Nr is of one Booking",
107
+ "role_id": "4828d13a-2603-4b87-8e60-8e7267c245a7"
108
+ }
109
+ ]
110
+ },
111
+ "Cinema": {
112
+ "is_main": true,
113
+ "id": "c789eb0b-ba55-47c7-8a6b-fba0d89f7384",
114
+ "functions": [
115
+ {
116
+ "title": "Cinema ID",
117
+ "type": "Cinema ID",
118
+ "where": "this Cinema has one Cinema ID",
119
+ "role_id": "13db8f97-bbab-4c58-bd53-30754568c2c1"
120
+ },
121
+ {
122
+ "title": "Name",
123
+ "type": "Name",
124
+ "where": "this Cinema has one Name",
125
+ "role_id": "12488143-780a-4a4a-abb6-2acdfb724e51"
126
+ },
127
+ {
128
+ "title": "all Section",
129
+ "type": "Section",
130
+ "where": "this Cinema provides allocated seating in some Section",
131
+ "role_id": "f56353df-7863-4015-a811-43e984d88688",
132
+ "is_list": true
133
+ },
134
+ {
135
+ "title": "all Session",
136
+ "type": "Session",
137
+ "where": "this Cinema shows some Film on some Session Time",
138
+ "role_id": "ace48257-965a-4c83-8c85-bef912add9d1",
139
+ "is_list": true
140
+ },
141
+ {
142
+ "title": "all Row",
143
+ "type": "Row",
144
+ "where": "this Cinema contains some Row",
145
+ "role_id": "511523c8-fcee-4380-a3dd-8fdec5f81f7b",
146
+ "is_list": true
147
+ },
148
+ {
149
+ "title": "all Ticket Pricing",
150
+ "type": "Ticket Pricing",
151
+ "where": "tickets on some Session Time at this Cinema in some Section for some High Demand have some Price",
152
+ "role_id": "ca280f7e-f459-4ff9-86c2-62802995f762",
153
+ "is_list": true
154
+ }
155
+ ]
156
+ },
157
+ "Cinema ID": {
158
+ "is_main": false,
159
+ "id": "46bfae4b-be0f-4178-b129-705723c0bd37",
160
+ "functions": [
161
+ {
162
+ "title": "Cinema",
163
+ "type": "Cinema",
164
+ "where": "this Cinema ID is of one Cinema",
165
+ "role_id": "39a51260-c9d6-4d9d-86f7-6de0614e9311"
166
+ }
167
+ ]
168
+ },
169
+ "Collection Code": {
170
+ "is_main": false,
171
+ "id": "2afd5405-738d-4833-b5a5-4594aef2f787",
172
+ "functions": [
173
+ {
174
+ "title": "all Booking",
175
+ "type": "Booking",
176
+ "where": "some Booking has this Collection Code",
177
+ "role_id": "cb6a393c-f2d4-4dc2-8f70-122171648d5d",
178
+ "is_list": true
179
+ }
180
+ ]
181
+ },
182
+ "Day": {
183
+ "is_main": false,
184
+ "id": "3a708535-4407-4c7d-b3c0-61b7bed9f6b0",
185
+ "functions": [
186
+ {
187
+ "title": "all Session Time",
188
+ "type": "Session Time",
189
+ "where": "some Session Time is on this Day",
190
+ "role_id": "2319cc45-752a-42d7-ba40-4fb06f2d9b5e",
191
+ "is_list": true
192
+ }
193
+ ]
194
+ },
195
+ "Encrypted Password": {
196
+ "is_main": false,
197
+ "id": "ff46e828-4d6b-4cf8-be60-ba6269c3c7aa",
198
+ "functions": [
199
+ {
200
+ "title": "all Person",
201
+ "type": "Person",
202
+ "where": "some Person has this Encrypted Password",
203
+ "role_id": "f65505b6-5d0c-4bda-a956-980311e8d213",
204
+ "is_list": true
205
+ }
206
+ ]
207
+ },
208
+ "Film": {
209
+ "is_main": true,
210
+ "id": "d380bb16-c460-4830-8bd5-40b9269d2277",
211
+ "functions": [
212
+ {
213
+ "title": "all Session",
214
+ "type": "Session",
215
+ "where": "this Film is showing on some Session Time at some Cinema",
216
+ "role_id": "5c7e1283-dd16-498b-8d85-03263bfa8954",
217
+ "is_list": true
218
+ },
219
+ {
220
+ "title": "Film ID",
221
+ "type": "Film ID",
222
+ "where": "this Film has one Film ID",
223
+ "role_id": "da8024a2-9007-4b10-82d9-519798ab67b5"
224
+ },
225
+ {
226
+ "title": "Name",
227
+ "type": "Name",
228
+ "where": "this Film has one Name",
229
+ "role_id": "aae0ed12-89c7-43cd-9707-52488e030552"
230
+ },
231
+ {
232
+ "title": "Year",
233
+ "type": "Year",
234
+ "where": "this Film was made in one Year",
235
+ "role_id": "07cff9e8-8ed8-4db5-bb2a-545e3c6e8145"
236
+ }
237
+ ]
238
+ },
239
+ "Film ID": {
240
+ "is_main": false,
241
+ "id": "64833cb2-11c3-4f17-8c77-851bea49afe7",
242
+ "functions": [
243
+ {
244
+ "title": "Film",
245
+ "type": "Film",
246
+ "where": "this Film ID is of one Film",
247
+ "role_id": "70b56042-6a6b-4c36-b242-8f795207925b"
248
+ }
249
+ ]
250
+ },
251
+ "High Demand": {
252
+ "is_main": false,
253
+ "id": "90cb9dbe-d4a5-41ce-bff0-37a6cc15321a",
254
+ "functions": [
255
+ {
256
+ "title": "all Ticket Pricing",
257
+ "type": "Ticket Pricing",
258
+ "where": "tickets on some Session Time at some Cinema in some Section for this High Demand have some Price",
259
+ "role_id": "04d8962a-2f11-48dc-a362-4a358254b672",
260
+ "is_list": true
261
+ }
262
+ ]
263
+ },
264
+ "Hour": {
265
+ "is_main": false,
266
+ "id": "179e9694-0b4b-4b01-a507-a99aaab1f837",
267
+ "functions": [
268
+ {
269
+ "title": "all Session Time",
270
+ "type": "Session Time",
271
+ "where": "some Session Time is at this Hour",
272
+ "role_id": "7db969e4-7ee5-49d8-96da-d83fe1956d99",
273
+ "is_list": true
274
+ }
275
+ ]
276
+ },
277
+ "Minute": {
278
+ "is_main": false,
279
+ "id": "4d11c849-e48c-4ae1-837a-8293b0d900cf",
280
+ "functions": [
281
+ {
282
+ "title": "all Session Time",
283
+ "type": "Session Time",
284
+ "where": "some Session Time is at this Minute",
285
+ "role_id": "d880838d-04ab-470b-9d7c-16da10d7178f",
286
+ "is_list": true
287
+ }
288
+ ]
289
+ },
290
+ "Month": {
291
+ "is_main": false,
292
+ "id": "b12f5702-1fee-49e2-803b-189f9e4e39e4",
293
+ "functions": [
294
+ {
295
+ "title": "Month Nr",
296
+ "type": "Month Nr",
297
+ "where": "this Month has one Month Nr",
298
+ "role_id": "9c1f49c2-480c-4833-b537-57a6243484c9"
299
+ },
300
+ {
301
+ "title": "all Session Time",
302
+ "type": "Session Time",
303
+ "where": "some Session Time is in this Month",
304
+ "role_id": "b304af3b-48f2-4d26-a5fe-c817a4d80f61",
305
+ "is_list": true
306
+ }
307
+ ]
308
+ },
309
+ "Month Nr": {
310
+ "is_main": false,
311
+ "id": "93849031-c190-4873-aa2b-26eabe0c5753",
312
+ "functions": [
313
+ {
314
+ "title": "Month",
315
+ "type": "Month",
316
+ "where": "this Month Nr is of one Month",
317
+ "role_id": "a2411673-6646-4ccb-b839-ec25f34e051f"
318
+ }
319
+ ]
320
+ },
321
+ "Name": {
322
+ "is_main": false,
323
+ "id": "b93d67f4-1456-45fc-b0a3-119801fd33c6",
324
+ "functions": [
325
+ {
326
+ "title": "Cinema",
327
+ "type": "Cinema",
328
+ "where": "this Name is of one Cinema",
329
+ "role_id": "728f6929-95eb-4209-8b67-4bd7011673b9"
330
+ },
331
+ {
332
+ "title": "all Film",
333
+ "type": "Film",
334
+ "where": "some Film has this Name",
335
+ "role_id": "b5dadae8-131d-4879-9dc6-b49f10e565fc",
336
+ "is_list": true
337
+ },
338
+ {
339
+ "title": "Person",
340
+ "type": "Person",
341
+ "where": "this Name is of one Person",
342
+ "role_id": "718386a3-2188-4eb1-821e-2f68da978eba"
343
+ }
344
+ ]
345
+ },
346
+ "Number": {
347
+ "is_main": false,
348
+ "id": "b6f4a4cf-008e-4701-88f0-607d9a67e827",
349
+ "functions": [
350
+ {
351
+ "title": "all Places Paid",
352
+ "type": "Places Paid",
353
+ "where": "this Number of places for some Booking have been paid for by some Payment Method",
354
+ "role_id": "7290ceef-c1bf-4c62-82e8-44b791e1fce9",
355
+ "is_list": true
356
+ },
357
+ {
358
+ "title": "all Booking",
359
+ "type": "Booking",
360
+ "where": "some Person booked some Session for this Number of places",
361
+ "role_id": "ff573479-1d89-43b9-bf2f-8d216a2f2427",
362
+ "is_list": true
363
+ }
364
+ ]
365
+ },
366
+ "Payment Method": {
367
+ "is_main": false,
368
+ "id": "4b47d949-d8ee-4a52-b90e-c7d874dc3607",
369
+ "functions": [
370
+ {
371
+ "title": "all Places Paid",
372
+ "type": "Places Paid",
373
+ "where": "some Number of places for some Booking have been paid for by this Payment Method",
374
+ "role_id": "b1e46b2c-a009-44ee-9878-0e50e7ff3b00",
375
+ "is_list": true
376
+ },
377
+ {
378
+ "title": "Payment Method Code",
379
+ "type": "Payment Method Code",
380
+ "where": "this Payment Method has one Payment Method Code",
381
+ "role_id": "6a90d5c3-a558-431e-841b-9c0f8e3f90cd"
382
+ }
383
+ ]
384
+ },
385
+ "Payment Method Code": {
386
+ "is_main": false,
387
+ "id": "e603fcce-15c1-417b-abb8-83fc2ee7b9b8",
388
+ "functions": [
389
+ {
390
+ "title": "Payment Method",
391
+ "type": "Payment Method",
392
+ "where": "this Payment Method Code is of one Payment Method",
393
+ "role_id": "7a325060-edd1-4d79-a340-9445f3a0b371"
394
+ }
395
+ ]
396
+ },
397
+ "Person": {
398
+ "is_main": true,
399
+ "id": "671c68c6-37ed-4b68-a13f-185c707d2723",
400
+ "functions": [
401
+ {
402
+ "title": "all Booking",
403
+ "type": "Booking",
404
+ "where": "this Person booked some Session for some Number of places",
405
+ "role_id": "b667dc7a-c502-4daa-880b-cc478cf7889e",
406
+ "is_list": true
407
+ },
408
+ {
409
+ "title": "Encrypted Password",
410
+ "type": "Encrypted Password",
411
+ "where": "this Person has one Encrypted Password",
412
+ "role_id": "76130fdb-b155-4395-bbbc-25b8e88f97bd"
413
+ },
414
+ {
415
+ "title": "Person ID",
416
+ "type": "Person ID",
417
+ "where": "this Person has one Person ID",
418
+ "role_id": "22f57f64-bdbd-4ec0-a6e1-ee530e97420f"
419
+ },
420
+ {
421
+ "title": "Login Name",
422
+ "type": "Name",
423
+ "where": "this Person has one login-Name",
424
+ "role_id": "4fd2d692-f7d9-46c6-8591-70a8ff04be48"
425
+ }
426
+ ]
427
+ },
428
+ "Person ID": {
429
+ "is_main": false,
430
+ "id": "f3948d0a-e28b-4bc7-ab76-3cbea11fc691",
431
+ "functions": [
432
+ {
433
+ "title": "Person",
434
+ "type": "Person",
435
+ "where": "this Person ID is of one Person",
436
+ "role_id": "2d53d562-c21c-46fc-9f92-b952660f7276"
437
+ }
438
+ ]
439
+ },
440
+ "Places Paid": {
441
+ "is_main": true,
442
+ "id": "a01df44f-a2f3-47de-b30e-efab4b0f2329",
443
+ "functions": [
444
+ {
445
+ "title": "involving Number",
446
+ "type": "Number",
447
+ "where": "this Number of places for some Booking have been paid for by some Payment Method"
448
+ },
449
+ {
450
+ "title": "involving Booking",
451
+ "type": "Booking",
452
+ "where": "this Booking applied some Payment Method for some Number of places"
453
+ },
454
+ {
455
+ "title": "involving Payment Method",
456
+ "type": "Payment Method",
457
+ "where": "some Number of places for some Booking have been paid for by this Payment Method"
458
+ }
459
+ ]
460
+ },
461
+ "Price": {
462
+ "is_main": false,
463
+ "id": "28a2475c-abb5-49f5-acfa-d2e1139402db",
464
+ "functions": [
465
+ {
466
+ "title": "all Ticket Pricing",
467
+ "type": "Ticket Pricing",
468
+ "where": "tickets on some Session Time at some Cinema in some Section for some High Demand have this Price",
469
+ "role_id": "583317d7-efe2-47e7-b4b4-e88c28c27cae",
470
+ "is_list": true
471
+ }
472
+ ]
473
+ },
474
+ "Row": {
475
+ "is_main": false,
476
+ "id": "c9ed4a1f-7f0c-48ae-84ba-4965996f44ab",
477
+ "functions": [
478
+ {
479
+ "title": "Row Nr",
480
+ "type": "Row Nr",
481
+ "where": "this Row has one Row Nr",
482
+ "role_id": "dcb84d91-c3b4-43b8-b7c4-835e8c436fb6"
483
+ },
484
+ {
485
+ "title": "Cinema",
486
+ "type": "Cinema",
487
+ "where": "this Row is in one Cinema",
488
+ "role_id": "55adc89d-4e60-4985-ac7b-2472edbd19ee"
489
+ },
490
+ {
491
+ "title": "all Seat",
492
+ "type": "Seat",
493
+ "where": "this Row contains some Seat",
494
+ "role_id": "25b88796-5efc-4e13-bab0-7e054b5e99c7",
495
+ "is_list": true
496
+ }
497
+ ]
498
+ },
499
+ "Row Nr": {
500
+ "is_main": false,
501
+ "id": "3ba0e6b1-9bd9-4036-be56-8adf8847b9ed",
502
+ "functions": [
503
+ {
504
+ "title": "all Row",
505
+ "type": "Row",
506
+ "where": "this Row Nr is of some Row",
507
+ "role_id": "c6a899b0-9555-48fe-b612-2d43b333b89b",
508
+ "is_list": true
509
+ }
510
+ ]
511
+ },
512
+ "Seat": {
513
+ "is_main": true,
514
+ "id": "931fd695-2b08-4443-b884-c2d7c7f77a7b",
515
+ "functions": [
516
+ {
517
+ "title": "all Booking",
518
+ "type": "Booking",
519
+ "where": "this Seat is allocated to some Booking",
520
+ "role_id": "e91fe05a-fe74-4ac3-8419-e981dddd4e01",
521
+ "is_list": true
522
+ },
523
+ {
524
+ "title": "Seat Number",
525
+ "type": "Seat Number",
526
+ "where": "this Seat has one Seat Number",
527
+ "role_id": "34d4691a-5939-46a8-a3dd-4935e86ca61b"
528
+ },
529
+ {
530
+ "title": "Row",
531
+ "type": "Row",
532
+ "where": "this Seat is in one Row",
533
+ "role_id": "e91d3765-3200-440a-a669-126cffc91a5d"
534
+ },
535
+ {
536
+ "title": "Section",
537
+ "type": "Section",
538
+ "where": "this Seat is in one Section",
539
+ "role_id": "c4ea54d2-228a-40b1-89b9-dace498e246c"
540
+ }
541
+ ]
542
+ },
543
+ "Seat Number": {
544
+ "is_main": false,
545
+ "id": "033e04da-febb-4bc1-b311-a4901d5fce8d",
546
+ "functions": [
547
+ {
548
+ "title": "all Seat",
549
+ "type": "Seat",
550
+ "where": "this Seat Number is of some Seat",
551
+ "role_id": "5f98a46d-b4f1-4f35-b601-3cea5b4157c5",
552
+ "is_list": true
553
+ }
554
+ ]
555
+ },
556
+ "Section": {
557
+ "is_main": false,
558
+ "id": "726a012a-baad-496d-8745-6cd081b9fcec",
559
+ "functions": [
560
+ {
561
+ "title": "all Booking",
562
+ "type": "Booking",
563
+ "where": "some Booking is for seats in this Section",
564
+ "role_id": "5862426d-e222-43c5-a5e7-3c11db5fe03e",
565
+ "is_list": true
566
+ },
567
+ {
568
+ "title": "all Cinema",
569
+ "type": "Cinema",
570
+ "where": "this Section of some Cinema uses allocated seating",
571
+ "role_id": "b6b973d0-29a4-41da-b0f1-27a408d4c8a2",
572
+ "is_list": true
573
+ },
574
+ {
575
+ "title": "all Seat",
576
+ "type": "Seat",
577
+ "where": "this Section contains some Seat",
578
+ "role_id": "96199371-ffc2-45fc-b7ee-33e797983d70",
579
+ "is_list": true
580
+ },
581
+ {
582
+ "title": "Section Name",
583
+ "type": "Section Name",
584
+ "where": "this Section has one Section Name",
585
+ "role_id": "3199f1a2-6618-4861-9b9e-5cb6e5e20921"
586
+ },
587
+ {
588
+ "title": "all Ticket Pricing",
589
+ "type": "Ticket Pricing",
590
+ "where": "tickets on some Session Time at some Cinema in this Section for some High Demand have some Price",
591
+ "role_id": "c64a5122-d929-4428-bd86-e8423cb3643d",
592
+ "is_list": true
593
+ }
594
+ ]
595
+ },
596
+ "Section Name": {
597
+ "is_main": false,
598
+ "id": "fd4e9f78-2368-4241-bb3b-da1d022ef3d8",
599
+ "functions": [
600
+ {
601
+ "title": "Section",
602
+ "type": "Section",
603
+ "where": "this Section Name is of one Section",
604
+ "role_id": "456fb742-109c-4a66-92e4-b49c8aac8f0d"
605
+ }
606
+ ]
607
+ },
608
+ "Session": {
609
+ "is_main": true,
610
+ "id": "c2011033-2587-4008-ab3a-58b6a64ba437",
611
+ "functions": [
612
+ {
613
+ "title": "involving Cinema",
614
+ "type": "Cinema",
615
+ "where": "this Cinema shows some Film on some Session Time"
616
+ },
617
+ {
618
+ "title": "involving Film",
619
+ "type": "Film",
620
+ "where": "this Film is showing on some Session Time at some Cinema"
621
+ },
622
+ {
623
+ "title": "involving Session Time",
624
+ "type": "Session Time",
625
+ "where": "some Cinema shows some Film on this Session Time"
626
+ },
627
+ {
628
+ "title": "all Booking",
629
+ "type": "Booking",
630
+ "where": "some Person booked this Session for some Number of places",
631
+ "role_id": "2c0b410a-4267-4d87-be3f-7419463d4e73",
632
+ "is_list": true
633
+ },
634
+ {
635
+ "title": "Session is high-demand",
636
+ "type": "boolean",
637
+ "where": "this Session is high-demand",
638
+ "role_id": "f70a1899-fe35-43c8-b63f-dd78ec5cf276"
639
+ },
640
+ {
641
+ "title": "Session uses allocated seating",
642
+ "type": "boolean",
643
+ "where": "this Session uses allocated seating",
644
+ "role_id": "1be3e1fb-b4f9-4759-9416-03a7f23558b2"
645
+ }
646
+ ]
647
+ },
648
+ "Session Time": {
649
+ "is_main": false,
650
+ "id": "9ffd4176-df3d-42c8-a575-21a29d542fec",
651
+ "functions": [
652
+ {
653
+ "title": "all Session",
654
+ "type": "Session",
655
+ "where": "some Cinema shows some Film on this Session Time",
656
+ "role_id": "a9e36c81-49fb-40df-ae29-711b4bada13c",
657
+ "is_list": true
658
+ },
659
+ {
660
+ "title": "Hour",
661
+ "type": "Hour",
662
+ "where": "this Session Time is at one Hour",
663
+ "role_id": "fecb3350-0d22-44f2-960f-8bcb1ee07d93"
664
+ },
665
+ {
666
+ "title": "Minute",
667
+ "type": "Minute",
668
+ "where": "this Session Time is at one Minute",
669
+ "role_id": "521d25ed-8382-4ab9-bb8f-b0017e08892d"
670
+ },
671
+ {
672
+ "title": "Month",
673
+ "type": "Month",
674
+ "where": "this Session Time is in one Month",
675
+ "role_id": "b9307922-9864-45ea-b569-28d4ebef6b25"
676
+ },
677
+ {
678
+ "title": "Year",
679
+ "type": "Year",
680
+ "where": "this Session Time is in one Year",
681
+ "role_id": "72e517bb-8920-43f9-8923-e1aab8b57549"
682
+ },
683
+ {
684
+ "title": "Day",
685
+ "type": "Day",
686
+ "where": "this Session Time is on one Day",
687
+ "role_id": "f707dafb-46fd-4b57-a043-4ccfd1e38fca"
688
+ },
689
+ {
690
+ "title": "all Ticket Pricing",
691
+ "type": "Ticket Pricing",
692
+ "where": "tickets on this Session Time at some Cinema in some Section for some High Demand have some Price",
693
+ "role_id": "00e984a1-2712-48aa-8d54-e6a5529cfb91",
694
+ "is_list": true
695
+ }
696
+ ]
697
+ },
698
+ "Ticket Pricing": {
699
+ "is_main": true,
700
+ "id": "2d29e9f8-8c2d-4c68-8aa5-341eb7afaa9a",
701
+ "functions": [
702
+ {
703
+ "title": "involving Session Time",
704
+ "type": "Session Time",
705
+ "where": "tickets on this Session Time at some Cinema in some Section for some High Demand have some Price"
706
+ },
707
+ {
708
+ "title": "involving Cinema",
709
+ "type": "Cinema",
710
+ "where": "tickets on some Session Time at this Cinema in some Section for some High Demand have some Price"
711
+ },
712
+ {
713
+ "title": "involving Section",
714
+ "type": "Section",
715
+ "where": "tickets on some Session Time at some Cinema in this Section for some High Demand have some Price"
716
+ },
717
+ {
718
+ "title": "involving High Demand",
719
+ "type": "High Demand",
720
+ "where": "tickets on some Session Time at some Cinema in some Section for this High Demand have some Price"
721
+ },
722
+ {
723
+ "title": "involving Price",
724
+ "type": "Price",
725
+ "where": "tickets on some Session Time at some Cinema in some Section for some High Demand have this Price"
726
+ }
727
+ ]
728
+ },
729
+ "Year": {
730
+ "is_main": false,
731
+ "id": "58f5e53f-85ad-49ae-9793-b4788badae10",
732
+ "functions": [
733
+ {
734
+ "title": "all Film",
735
+ "type": "Film",
736
+ "where": "some Film was made in this Year",
737
+ "role_id": "fab3ccbd-99d5-4b40-ac80-3688cda9c16d",
738
+ "is_list": true
739
+ },
740
+ {
741
+ "title": "all Session Time",
742
+ "type": "Session Time",
743
+ "where": "some Session Time is in this Year",
744
+ "role_id": "291e361c-1f5a-436e-a495-363dd1b5210f",
745
+ "is_list": true
746
+ },
747
+ {
748
+ "title": "Year Nr",
749
+ "type": "Year Nr",
750
+ "where": "this Year has one Year Nr",
751
+ "role_id": "a1ed2457-b659-4cc5-9860-ae850474ee3b"
752
+ }
753
+ ]
754
+ },
755
+ "Year Nr": {
756
+ "is_main": false,
757
+ "id": "cbad7e71-989e-4226-8ce2-606cb197288b",
758
+ "functions": [
759
+ {
760
+ "title": "Year",
761
+ "type": "Year",
762
+ "where": "this Year Nr is of one Year",
763
+ "role_id": "91faff78-c224-456e-87f5-1f5f7d74bfdc"
764
+ }
765
+ ]
766
+ }
767
+ }
768
+ }