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,789 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <ormRoot:ORM2 xmlns:orm="http://schemas.neumont.edu/ORM/2006-04/ORMCore" xmlns:ormDiagram="http://schemas.neumont.edu/ORM/2006-04/ORMDiagram" xmlns:ormRoot="http://schemas.neumont.edu/ORM/2006-04/ORMRoot">
3
+ <orm:ORMModel id="_5C9E6929-BDA5-4082-9230-20590A15F661" Name="WaiterTips">
4
+ <orm:Objects>
5
+ <orm:EntityType id="_57141FDB-D80D-428D-88E3-B195C7634307" Name="Waiter" _ReferenceMode="Nr">
6
+ <orm:PlayedRoles>
7
+ <orm:Role ref="_D9A21D43-FF05-4E67-B77B-AFDF8822C64F" />
8
+ <orm:Role ref="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" />
9
+ <orm:Role ref="_35BE7217-0143-4144-8918-11A34CE36B7B" />
10
+ </orm:PlayedRoles>
11
+ <orm:PreferredIdentifier ref="_E425FABB-B473-4B5B-9088-164CD033E1AC" />
12
+ </orm:EntityType>
13
+ <orm:ValueType id="_E18AE076-7432-450E-9E9C-54CFB99E49BC" Name="WaiterNr">
14
+ <orm:PlayedRoles>
15
+ <orm:Role ref="_C7681322-B79E-4E4C-8949-4D6CA02AB652" />
16
+ </orm:PlayedRoles>
17
+ <orm:ConceptualDataType id="_99FE556A-BBBA-4BC2-ADD0-037436C3DCFE" ref="_DCFCEE2B-AAF6-4E26-84A4-105348C80CDC" Scale="0" Length="0" />
18
+ </orm:ValueType>
19
+ <orm:EntityType id="_A773D128-BBA2-4973-BADA-F30564C7EC34" Name="Amount" _ReferenceMode="AUD">
20
+ <orm:PlayedRoles>
21
+ <orm:Role ref="_4497C46F-7671-4F09-B8F0-7292DF3BF664" />
22
+ <orm:Role ref="_7682B9D5-2BAC-4BA6-AAB6-3311A5CB642B" />
23
+ <orm:Role ref="_ABBCCE14-6665-4C47-9C63-A52E967212D0" />
24
+ </orm:PlayedRoles>
25
+ <orm:PreferredIdentifier ref="_759FBF3F-3746-4DCE-B298-C9D01722B780" />
26
+ </orm:EntityType>
27
+ <orm:ValueType id="_585BC747-2EBD-4A21-88B8-F70F3B6C2246" Name="AUDValue">
28
+ <orm:PlayedRoles>
29
+ <orm:Role ref="_C6EA0D19-E7F5-4D13-A631-7B2C84271130" />
30
+ </orm:PlayedRoles>
31
+ <orm:ConceptualDataType id="_C4ECE504-637D-4AD3-8A85-634C55EFC4B7" ref="_6E85FFD7-1195-425A-8933-81F4387447ED" Scale="0" Length="0" />
32
+ </orm:ValueType>
33
+ <orm:EntityType id="_98B9B73E-37D2-4648-AE32-481693FBE4A0" Name="Meal" _ReferenceMode="Id">
34
+ <orm:PlayedRoles>
35
+ <orm:Role ref="_28E1E4E2-186F-48FF-A1CE-7E1EEBF3EE78" />
36
+ <orm:Role ref="_F1617316-B197-44A0-8239-F44F7CC23E01" />
37
+ <orm:Role ref="_32B877CB-2006-4303-8B52-F8E9348043EA" />
38
+ </orm:PlayedRoles>
39
+ <orm:PreferredIdentifier ref="_CCDD646D-D9A2-46DE-98D7-B1C44DC0A226" />
40
+ </orm:EntityType>
41
+ <orm:ValueType id="_D4CD69FD-AD3D-44AE-B306-0A4B5CB7DD5A" Name="MealId">
42
+ <orm:PlayedRoles>
43
+ <orm:Role ref="_A272CD6C-336B-4458-8428-995B3F31B700" />
44
+ </orm:PlayedRoles>
45
+ <orm:ConceptualDataType id="_37543F26-FD4D-44CF-9F94-F6E4BDDFABFF" ref="_003382D9-D573-4B14-85BB-57EFF2E51C2E" Scale="0" Length="0" />
46
+ </orm:ValueType>
47
+ <orm:ObjectifiedType id="_7CB3A76B-18EA-4A1E-AD05-B27E08162D3C" Name="Service" _ReferenceMode="">
48
+ <orm:PlayedRoles>
49
+ <orm:Role ref="_CAD5049A-F038-4600-A6A7-99AE3092CFF2" />
50
+ <orm:Role ref="_8F80BA10-6143-4200-A0E0-901BA9384FDE" />
51
+ <orm:Role ref="_5C53904B-FBB2-42A3-B220-98A0D5DFE82A" />
52
+ </orm:PlayedRoles>
53
+ <orm:PreferredIdentifier ref="_76D04477-6CC2-4241-A527-BA433FEA5238" />
54
+ <orm:NestedPredicate id="_DB4CDF62-59AB-43F3-A9B4-A6A4789A76DA" ref="_CE89D5CF-A33E-408F-9B20-CD4F7CBCE30D" />
55
+ </orm:ObjectifiedType>
56
+ <orm:ObjectifiedType id="_5B2E927E-3419-454F-BAF6-B4BE6FBC907C" Name="WaiterTip" _ReferenceMode="">
57
+ <orm:PlayedRoles>
58
+ <orm:Role ref="_EB25FA3A-A167-43FA-A412-8032BC41F270" />
59
+ <orm:Role ref="_917F53D3-D05C-4DBA-B9B3-99A29F57C370" />
60
+ <orm:Role ref="_1A2B8E9C-C918-4745-8174-1F3EFDBD55B1" />
61
+ </orm:PlayedRoles>
62
+ <orm:PreferredIdentifier ref="_D7DB35B4-EF2B-4F3D-85DE-91AF4C6CA61E" />
63
+ <orm:NestedPredicate id="_4222A2A8-55E4-4F97-863C-B0FBD03AEDEB" ref="_0A3CED9A-8579-4D44-AB11-89E430BE7801" IsImplied="true" />
64
+ </orm:ObjectifiedType>
65
+ </orm:Objects>
66
+ <orm:Facts>
67
+ <orm:Fact id="_90AD2442-4587-4B8F-AC3C-0D665B1C43A9" _Name="WaiterHasWaiterNr">
68
+ <orm:FactRoles>
69
+ <orm:Role id="_D9A21D43-FF05-4E67-B77B-AFDF8822C64F" _IsMandatory="true" _Multiplicity="ZeroToOne" Name="">
70
+ <orm:RolePlayer ref="_57141FDB-D80D-428D-88E3-B195C7634307" />
71
+ </orm:Role>
72
+ <orm:Role id="_C7681322-B79E-4E4C-8949-4D6CA02AB652" _IsMandatory="false" _Multiplicity="ExactlyOne" Name="">
73
+ <orm:RolePlayer ref="_E18AE076-7432-450E-9E9C-54CFB99E49BC" />
74
+ </orm:Role>
75
+ </orm:FactRoles>
76
+ <orm:ReadingOrders>
77
+ <orm:ReadingOrder id="_C6F12220-930A-4143-B4DB-B088912A39BA">
78
+ <orm:Readings>
79
+ <orm:Reading id="_F51985AF-8D1D-4D37-ABDE-B6CC1FEA6181">
80
+ <orm:Data>{0} has {1}</orm:Data>
81
+ <orm:ExpandedData>
82
+ <orm:RoleText RoleIndex="0" FollowingText=" has " />
83
+ </orm:ExpandedData>
84
+ </orm:Reading>
85
+ </orm:Readings>
86
+ <orm:RoleSequence>
87
+ <orm:Role ref="_D9A21D43-FF05-4E67-B77B-AFDF8822C64F" />
88
+ <orm:Role ref="_C7681322-B79E-4E4C-8949-4D6CA02AB652" />
89
+ </orm:RoleSequence>
90
+ </orm:ReadingOrder>
91
+ <orm:ReadingOrder id="_A2ADBD58-20B7-4EC2-AEB2-22CBBD92A8FA">
92
+ <orm:Readings>
93
+ <orm:Reading id="_42D3F420-09EC-4049-8BEB-893AD3D82733">
94
+ <orm:Data>{0} is of {1}</orm:Data>
95
+ <orm:ExpandedData>
96
+ <orm:RoleText RoleIndex="0" FollowingText=" is of " />
97
+ </orm:ExpandedData>
98
+ </orm:Reading>
99
+ </orm:Readings>
100
+ <orm:RoleSequence>
101
+ <orm:Role ref="_C7681322-B79E-4E4C-8949-4D6CA02AB652" />
102
+ <orm:Role ref="_D9A21D43-FF05-4E67-B77B-AFDF8822C64F" />
103
+ </orm:RoleSequence>
104
+ </orm:ReadingOrder>
105
+ </orm:ReadingOrders>
106
+ <orm:InternalConstraints>
107
+ <orm:UniquenessConstraint ref="_E425FABB-B473-4B5B-9088-164CD033E1AC" />
108
+ <orm:UniquenessConstraint ref="_D6B59997-785E-4D43-86D1-24544C911A6F" />
109
+ <orm:MandatoryConstraint ref="_B7FC58C5-B251-4F3B-8BFD-983B6A93ABF1" />
110
+ </orm:InternalConstraints>
111
+ </orm:Fact>
112
+ <orm:Fact id="_DF3CA0A7-9A3E-4180-875E-33F6AACDC266" _Name="AmountHasAUDValue">
113
+ <orm:FactRoles>
114
+ <orm:Role id="_4497C46F-7671-4F09-B8F0-7292DF3BF664" _IsMandatory="true" _Multiplicity="ZeroToOne" Name="">
115
+ <orm:RolePlayer ref="_A773D128-BBA2-4973-BADA-F30564C7EC34" />
116
+ </orm:Role>
117
+ <orm:Role id="_C6EA0D19-E7F5-4D13-A631-7B2C84271130" _IsMandatory="false" _Multiplicity="ExactlyOne" Name="">
118
+ <orm:RolePlayer ref="_585BC747-2EBD-4A21-88B8-F70F3B6C2246" />
119
+ </orm:Role>
120
+ </orm:FactRoles>
121
+ <orm:ReadingOrders>
122
+ <orm:ReadingOrder id="_06918A8A-BDCC-408F-AD97-0C245450CCE0">
123
+ <orm:Readings>
124
+ <orm:Reading id="_35ECF1B0-A148-43D3-AC8F-6D0FA2FDF978">
125
+ <orm:Data>{0} has {1}</orm:Data>
126
+ <orm:ExpandedData>
127
+ <orm:RoleText RoleIndex="0" FollowingText=" has " />
128
+ </orm:ExpandedData>
129
+ </orm:Reading>
130
+ </orm:Readings>
131
+ <orm:RoleSequence>
132
+ <orm:Role ref="_4497C46F-7671-4F09-B8F0-7292DF3BF664" />
133
+ <orm:Role ref="_C6EA0D19-E7F5-4D13-A631-7B2C84271130" />
134
+ </orm:RoleSequence>
135
+ </orm:ReadingOrder>
136
+ <orm:ReadingOrder id="_A3BCFF93-1C6A-419D-8D96-901A5F9FE149">
137
+ <orm:Readings>
138
+ <orm:Reading id="_C9C27883-0248-40CA-AE75-B4127F106CE6">
139
+ <orm:Data>{0} is of {1}</orm:Data>
140
+ <orm:ExpandedData>
141
+ <orm:RoleText RoleIndex="0" FollowingText=" is of " />
142
+ </orm:ExpandedData>
143
+ </orm:Reading>
144
+ </orm:Readings>
145
+ <orm:RoleSequence>
146
+ <orm:Role ref="_C6EA0D19-E7F5-4D13-A631-7B2C84271130" />
147
+ <orm:Role ref="_4497C46F-7671-4F09-B8F0-7292DF3BF664" />
148
+ </orm:RoleSequence>
149
+ </orm:ReadingOrder>
150
+ </orm:ReadingOrders>
151
+ <orm:InternalConstraints>
152
+ <orm:UniquenessConstraint ref="_759FBF3F-3746-4DCE-B298-C9D01722B780" />
153
+ <orm:UniquenessConstraint ref="_83EB3652-CBD3-48EB-ACE4-D61FFBC407B2" />
154
+ <orm:MandatoryConstraint ref="_1A5AC719-D164-4876-85ED-385B65EF9F2A" />
155
+ </orm:InternalConstraints>
156
+ </orm:Fact>
157
+ <orm:Fact id="_BBCA0EA7-78A0-4D6D-AC8F-2FE4907E647B" _Name="MealHasMealId">
158
+ <orm:FactRoles>
159
+ <orm:Role id="_28E1E4E2-186F-48FF-A1CE-7E1EEBF3EE78" _IsMandatory="true" _Multiplicity="ZeroToOne" Name="">
160
+ <orm:RolePlayer ref="_98B9B73E-37D2-4648-AE32-481693FBE4A0" />
161
+ </orm:Role>
162
+ <orm:Role id="_A272CD6C-336B-4458-8428-995B3F31B700" _IsMandatory="false" _Multiplicity="ExactlyOne" Name="">
163
+ <orm:RolePlayer ref="_D4CD69FD-AD3D-44AE-B306-0A4B5CB7DD5A" />
164
+ </orm:Role>
165
+ </orm:FactRoles>
166
+ <orm:ReadingOrders>
167
+ <orm:ReadingOrder id="_BE6A8A16-7D95-4ECF-BDBB-84ED5A489E9C">
168
+ <orm:Readings>
169
+ <orm:Reading id="_9857213F-BF75-4228-9912-A1486FCBF554">
170
+ <orm:Data>{0} has {1}</orm:Data>
171
+ <orm:ExpandedData>
172
+ <orm:RoleText RoleIndex="0" FollowingText=" has " />
173
+ </orm:ExpandedData>
174
+ </orm:Reading>
175
+ </orm:Readings>
176
+ <orm:RoleSequence>
177
+ <orm:Role ref="_28E1E4E2-186F-48FF-A1CE-7E1EEBF3EE78" />
178
+ <orm:Role ref="_A272CD6C-336B-4458-8428-995B3F31B700" />
179
+ </orm:RoleSequence>
180
+ </orm:ReadingOrder>
181
+ <orm:ReadingOrder id="_EDFB86EF-3F66-4858-BD26-EC87DBE780E8">
182
+ <orm:Readings>
183
+ <orm:Reading id="_F4055E53-58AA-404A-B4FD-BC3B9A0F847E">
184
+ <orm:Data>{0} is of {1}</orm:Data>
185
+ <orm:ExpandedData>
186
+ <orm:RoleText RoleIndex="0" FollowingText=" is of " />
187
+ </orm:ExpandedData>
188
+ </orm:Reading>
189
+ </orm:Readings>
190
+ <orm:RoleSequence>
191
+ <orm:Role ref="_A272CD6C-336B-4458-8428-995B3F31B700" />
192
+ <orm:Role ref="_28E1E4E2-186F-48FF-A1CE-7E1EEBF3EE78" />
193
+ </orm:RoleSequence>
194
+ </orm:ReadingOrder>
195
+ </orm:ReadingOrders>
196
+ <orm:InternalConstraints>
197
+ <orm:UniquenessConstraint ref="_CCDD646D-D9A2-46DE-98D7-B1C44DC0A226" />
198
+ <orm:UniquenessConstraint ref="_392E714A-B2AC-4C49-AF16-3BD064B8E72D" />
199
+ <orm:MandatoryConstraint ref="_4C6A2327-5C5B-431F-8A8F-4515F4D73A73" />
200
+ </orm:InternalConstraints>
201
+ </orm:Fact>
202
+ <orm:Fact id="_CE89D5CF-A33E-408F-9B20-CD4F7CBCE30D" _Name="Service">
203
+ <orm:FactRoles>
204
+ <orm:Role id="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" _IsMandatory="false" _Multiplicity="ZeroToMany" Name="">
205
+ <orm:RolePlayer ref="_57141FDB-D80D-428D-88E3-B195C7634307" />
206
+ </orm:Role>
207
+ <orm:Role id="_F1617316-B197-44A0-8239-F44F7CC23E01" _IsMandatory="false" _Multiplicity="ZeroToMany" Name="">
208
+ <orm:RolePlayer ref="_98B9B73E-37D2-4648-AE32-481693FBE4A0" />
209
+ </orm:Role>
210
+ </orm:FactRoles>
211
+ <orm:ReadingOrders>
212
+ <orm:ReadingOrder id="_2EB8C485-2A59-4BD9-8BA5-20819657CA42">
213
+ <orm:Readings>
214
+ <orm:Reading id="_2053357E-6A31-41EC-AB1D-DDF6534972BA">
215
+ <orm:Data>{0} served {1}</orm:Data>
216
+ <orm:ExpandedData>
217
+ <orm:RoleText RoleIndex="0" FollowingText=" served " />
218
+ </orm:ExpandedData>
219
+ </orm:Reading>
220
+ </orm:Readings>
221
+ <orm:RoleSequence>
222
+ <orm:Role ref="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" />
223
+ <orm:Role ref="_F1617316-B197-44A0-8239-F44F7CC23E01" />
224
+ </orm:RoleSequence>
225
+ </orm:ReadingOrder>
226
+ </orm:ReadingOrders>
227
+ <orm:InternalConstraints>
228
+ <orm:UniquenessConstraint ref="_76D04477-6CC2-4241-A527-BA433FEA5238" />
229
+ </orm:InternalConstraints>
230
+ </orm:Fact>
231
+ <orm:ImpliedFact id="_011A648C-279C-4A01-81CA-CC9F361C0C5E" _Name="WaiterIsInvolvedInService">
232
+ <orm:FactRoles>
233
+ <orm:RoleProxy id="_EE9610DE-054A-49E1-80CD-C3413071C1D1">
234
+ <orm:Role ref="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" />
235
+ </orm:RoleProxy>
236
+ <orm:Role id="_CAD5049A-F038-4600-A6A7-99AE3092CFF2" _IsMandatory="true" _Multiplicity="ZeroToMany" Name="">
237
+ <orm:RolePlayer ref="_7CB3A76B-18EA-4A1E-AD05-B27E08162D3C" />
238
+ </orm:Role>
239
+ </orm:FactRoles>
240
+ <orm:ReadingOrders>
241
+ <orm:ReadingOrder id="_371F2C8A-6CC6-4220-9577-187901A21AE2">
242
+ <orm:Readings>
243
+ <orm:Reading id="_BE838D56-D561-46C2-9730-2D801C695A23">
244
+ <orm:Data>{0} is involved in {1}</orm:Data>
245
+ <orm:ExpandedData>
246
+ <orm:RoleText RoleIndex="0" FollowingText=" is involved in " />
247
+ </orm:ExpandedData>
248
+ </orm:Reading>
249
+ </orm:Readings>
250
+ <orm:RoleSequence>
251
+ <orm:Role ref="_EE9610DE-054A-49E1-80CD-C3413071C1D1" />
252
+ <orm:Role ref="_CAD5049A-F038-4600-A6A7-99AE3092CFF2" />
253
+ </orm:RoleSequence>
254
+ </orm:ReadingOrder>
255
+ <orm:ReadingOrder id="_3136BC11-C5B3-4EDF-916D-A23453FE60D0">
256
+ <orm:Readings>
257
+ <orm:Reading id="_50A1E6B4-FE81-4AB8-B4D4-39D80758F64D">
258
+ <orm:Data>{0} involves {1}</orm:Data>
259
+ <orm:ExpandedData>
260
+ <orm:RoleText RoleIndex="0" FollowingText=" involves " />
261
+ </orm:ExpandedData>
262
+ </orm:Reading>
263
+ </orm:Readings>
264
+ <orm:RoleSequence>
265
+ <orm:Role ref="_CAD5049A-F038-4600-A6A7-99AE3092CFF2" />
266
+ <orm:Role ref="_EE9610DE-054A-49E1-80CD-C3413071C1D1" />
267
+ </orm:RoleSequence>
268
+ </orm:ReadingOrder>
269
+ </orm:ReadingOrders>
270
+ <orm:InternalConstraints>
271
+ <orm:MandatoryConstraint ref="_305748F6-26E8-4F9B-AAB6-3FE78E025EC3" />
272
+ <orm:UniquenessConstraint ref="_6F0B043D-3096-426B-8A9E-46DACAA2F2C6" />
273
+ </orm:InternalConstraints>
274
+ <orm:ImpliedByObjectification ref="_DB4CDF62-59AB-43F3-A9B4-A6A4789A76DA" />
275
+ </orm:ImpliedFact>
276
+ <orm:ImpliedFact id="_EA2AEB08-7AAF-4BEF-91E8-8C33A4071D30" _Name="MealIsInvolvedInService">
277
+ <orm:FactRoles>
278
+ <orm:RoleProxy id="_59CB0F5F-3CBB-4BB4-AE41-059ED1C028EA">
279
+ <orm:Role ref="_F1617316-B197-44A0-8239-F44F7CC23E01" />
280
+ </orm:RoleProxy>
281
+ <orm:Role id="_8F80BA10-6143-4200-A0E0-901BA9384FDE" _IsMandatory="true" _Multiplicity="ZeroToMany" Name="">
282
+ <orm:RolePlayer ref="_7CB3A76B-18EA-4A1E-AD05-B27E08162D3C" />
283
+ </orm:Role>
284
+ </orm:FactRoles>
285
+ <orm:ReadingOrders>
286
+ <orm:ReadingOrder id="_1CF69FDE-F169-4E50-B5AB-EB8E48097D7E">
287
+ <orm:Readings>
288
+ <orm:Reading id="_B3BD5A69-3D47-466C-8B5C-9AF3BD253CA9">
289
+ <orm:Data>{0} is involved in {1}</orm:Data>
290
+ <orm:ExpandedData>
291
+ <orm:RoleText RoleIndex="0" FollowingText=" is involved in " />
292
+ </orm:ExpandedData>
293
+ </orm:Reading>
294
+ </orm:Readings>
295
+ <orm:RoleSequence>
296
+ <orm:Role ref="_59CB0F5F-3CBB-4BB4-AE41-059ED1C028EA" />
297
+ <orm:Role ref="_8F80BA10-6143-4200-A0E0-901BA9384FDE" />
298
+ </orm:RoleSequence>
299
+ </orm:ReadingOrder>
300
+ <orm:ReadingOrder id="_01A8E543-E586-46DE-8D70-1A5A2D5A635F">
301
+ <orm:Readings>
302
+ <orm:Reading id="_B4CF5DAE-ECD5-435A-8A05-FCCB126C9310">
303
+ <orm:Data>{0} involves {1}</orm:Data>
304
+ <orm:ExpandedData>
305
+ <orm:RoleText RoleIndex="0" FollowingText=" involves " />
306
+ </orm:ExpandedData>
307
+ </orm:Reading>
308
+ </orm:Readings>
309
+ <orm:RoleSequence>
310
+ <orm:Role ref="_8F80BA10-6143-4200-A0E0-901BA9384FDE" />
311
+ <orm:Role ref="_59CB0F5F-3CBB-4BB4-AE41-059ED1C028EA" />
312
+ </orm:RoleSequence>
313
+ </orm:ReadingOrder>
314
+ </orm:ReadingOrders>
315
+ <orm:InternalConstraints>
316
+ <orm:MandatoryConstraint ref="_6B9EEABC-6A50-4870-A668-8FDC2B1C943B" />
317
+ <orm:UniquenessConstraint ref="_F9EB1F4C-E0AB-4A12-948F-B7309FAC4842" />
318
+ </orm:InternalConstraints>
319
+ <orm:ImpliedByObjectification ref="_DB4CDF62-59AB-43F3-A9B4-A6A4789A76DA" />
320
+ </orm:ImpliedFact>
321
+ <orm:Fact id="_0A3CED9A-8579-4D44-AB11-89E430BE7801" _Name="WaiterTip">
322
+ <orm:FactRoles>
323
+ <orm:Role id="_35BE7217-0143-4144-8918-11A34CE36B7B" _IsMandatory="false" _Multiplicity="Unspecified" Name="">
324
+ <orm:RolePlayer ref="_57141FDB-D80D-428D-88E3-B195C7634307" />
325
+ </orm:Role>
326
+ <orm:Role id="_32B877CB-2006-4303-8B52-F8E9348043EA" _IsMandatory="false" _Multiplicity="Unspecified" Name="">
327
+ <orm:RolePlayer ref="_98B9B73E-37D2-4648-AE32-481693FBE4A0" />
328
+ </orm:Role>
329
+ <orm:Role id="_ABBCCE14-6665-4C47-9C63-A52E967212D0" _IsMandatory="false" _Multiplicity="Unspecified" Name="">
330
+ <orm:RolePlayer ref="_A773D128-BBA2-4973-BADA-F30564C7EC34" />
331
+ </orm:Role>
332
+ </orm:FactRoles>
333
+ <orm:ReadingOrders>
334
+ <orm:ReadingOrder id="_20000547-7E1B-443E-93E5-4F98C4AB0452">
335
+ <orm:Readings>
336
+ <orm:Reading id="_15AB7026-264F-49D2-9E13-71D0D00A9CA5">
337
+ <orm:Data>{0} for serving {1} reported a tip of {2}</orm:Data>
338
+ <orm:ExpandedData>
339
+ <orm:RoleText RoleIndex="0" FollowingText=" for serving " />
340
+ <orm:RoleText RoleIndex="1" FollowingText=" reported a tip of " />
341
+ </orm:ExpandedData>
342
+ </orm:Reading>
343
+ </orm:Readings>
344
+ <orm:RoleSequence>
345
+ <orm:Role ref="_35BE7217-0143-4144-8918-11A34CE36B7B" />
346
+ <orm:Role ref="_32B877CB-2006-4303-8B52-F8E9348043EA" />
347
+ <orm:Role ref="_ABBCCE14-6665-4C47-9C63-A52E967212D0" />
348
+ </orm:RoleSequence>
349
+ </orm:ReadingOrder>
350
+ </orm:ReadingOrders>
351
+ <orm:InternalConstraints>
352
+ <orm:UniquenessConstraint ref="_D7DB35B4-EF2B-4F3D-85DE-91AF4C6CA61E" />
353
+ </orm:InternalConstraints>
354
+ </orm:Fact>
355
+ <orm:ImpliedFact id="_4284983F-7E24-4725-A566-09C543477E0E" _Name="WaiterIsInvolvedInWaiterTip">
356
+ <orm:FactRoles>
357
+ <orm:RoleProxy id="_476E8915-893F-4B37-BEBD-B1796211A9A2">
358
+ <orm:Role ref="_35BE7217-0143-4144-8918-11A34CE36B7B" />
359
+ </orm:RoleProxy>
360
+ <orm:Role id="_EB25FA3A-A167-43FA-A412-8032BC41F270" _IsMandatory="true" _Multiplicity="ZeroToMany" Name="">
361
+ <orm:RolePlayer ref="_5B2E927E-3419-454F-BAF6-B4BE6FBC907C" />
362
+ </orm:Role>
363
+ </orm:FactRoles>
364
+ <orm:ReadingOrders>
365
+ <orm:ReadingOrder id="_F32CE337-4D5F-48B2-A69B-D80669AC4267">
366
+ <orm:Readings>
367
+ <orm:Reading id="_BA7126D3-1956-4437-A816-73390E006118">
368
+ <orm:Data>{0} is involved in {1}</orm:Data>
369
+ <orm:ExpandedData>
370
+ <orm:RoleText RoleIndex="0" FollowingText=" is involved in " />
371
+ </orm:ExpandedData>
372
+ </orm:Reading>
373
+ </orm:Readings>
374
+ <orm:RoleSequence>
375
+ <orm:Role ref="_476E8915-893F-4B37-BEBD-B1796211A9A2" />
376
+ <orm:Role ref="_EB25FA3A-A167-43FA-A412-8032BC41F270" />
377
+ </orm:RoleSequence>
378
+ </orm:ReadingOrder>
379
+ <orm:ReadingOrder id="_4DCB84F4-7C32-49A0-AB93-6262EB67B926">
380
+ <orm:Readings>
381
+ <orm:Reading id="_CAC765B2-B14D-40F3-81D8-B154F90E57C0">
382
+ <orm:Data>{0} involves {1}</orm:Data>
383
+ <orm:ExpandedData>
384
+ <orm:RoleText RoleIndex="0" FollowingText=" involves " />
385
+ </orm:ExpandedData>
386
+ </orm:Reading>
387
+ </orm:Readings>
388
+ <orm:RoleSequence>
389
+ <orm:Role ref="_EB25FA3A-A167-43FA-A412-8032BC41F270" />
390
+ <orm:Role ref="_476E8915-893F-4B37-BEBD-B1796211A9A2" />
391
+ </orm:RoleSequence>
392
+ </orm:ReadingOrder>
393
+ </orm:ReadingOrders>
394
+ <orm:InternalConstraints>
395
+ <orm:MandatoryConstraint ref="_C2D6DD0B-47D2-4755-9B0B-538CC727B392" />
396
+ <orm:UniquenessConstraint ref="_810C6C15-B1DD-4699-951A-88F0699EC5BA" />
397
+ </orm:InternalConstraints>
398
+ <orm:ImpliedByObjectification ref="_4222A2A8-55E4-4F97-863C-B0FBD03AEDEB" />
399
+ </orm:ImpliedFact>
400
+ <orm:ImpliedFact id="_BFA38DBE-BEFE-4057-AB15-19BE781C19BA" _Name="MealIsInvolvedInWaiterTip">
401
+ <orm:FactRoles>
402
+ <orm:RoleProxy id="_D18B2A92-64DF-4D8E-931F-7E357B900560">
403
+ <orm:Role ref="_32B877CB-2006-4303-8B52-F8E9348043EA" />
404
+ </orm:RoleProxy>
405
+ <orm:Role id="_917F53D3-D05C-4DBA-B9B3-99A29F57C370" _IsMandatory="true" _Multiplicity="ZeroToMany" Name="">
406
+ <orm:RolePlayer ref="_5B2E927E-3419-454F-BAF6-B4BE6FBC907C" />
407
+ </orm:Role>
408
+ </orm:FactRoles>
409
+ <orm:ReadingOrders>
410
+ <orm:ReadingOrder id="_1FDF632B-03FC-4B4D-B9AE-7150083BEF55">
411
+ <orm:Readings>
412
+ <orm:Reading id="_4A4931B2-981E-4205-9C55-70155CDFC8A5">
413
+ <orm:Data>{0} is involved in {1}</orm:Data>
414
+ <orm:ExpandedData>
415
+ <orm:RoleText RoleIndex="0" FollowingText=" is involved in " />
416
+ </orm:ExpandedData>
417
+ </orm:Reading>
418
+ </orm:Readings>
419
+ <orm:RoleSequence>
420
+ <orm:Role ref="_D18B2A92-64DF-4D8E-931F-7E357B900560" />
421
+ <orm:Role ref="_917F53D3-D05C-4DBA-B9B3-99A29F57C370" />
422
+ </orm:RoleSequence>
423
+ </orm:ReadingOrder>
424
+ <orm:ReadingOrder id="_217E5546-8BCE-4115-B4B3-BE3B3EF14FBB">
425
+ <orm:Readings>
426
+ <orm:Reading id="_A7DE1DF8-637E-45A4-9A57-F72EAD7AC77B">
427
+ <orm:Data>{0} involves {1}</orm:Data>
428
+ <orm:ExpandedData>
429
+ <orm:RoleText RoleIndex="0" FollowingText=" involves " />
430
+ </orm:ExpandedData>
431
+ </orm:Reading>
432
+ </orm:Readings>
433
+ <orm:RoleSequence>
434
+ <orm:Role ref="_917F53D3-D05C-4DBA-B9B3-99A29F57C370" />
435
+ <orm:Role ref="_D18B2A92-64DF-4D8E-931F-7E357B900560" />
436
+ </orm:RoleSequence>
437
+ </orm:ReadingOrder>
438
+ </orm:ReadingOrders>
439
+ <orm:InternalConstraints>
440
+ <orm:MandatoryConstraint ref="_4C9407FF-4A4A-4F1B-AB66-AC1A1E4D5253" />
441
+ <orm:UniquenessConstraint ref="_008DA0F0-2256-4A9A-8E65-EA3A8846F07C" />
442
+ </orm:InternalConstraints>
443
+ <orm:ImpliedByObjectification ref="_4222A2A8-55E4-4F97-863C-B0FBD03AEDEB" />
444
+ </orm:ImpliedFact>
445
+ <orm:ImpliedFact id="_893A6530-6E55-4B7A-A53A-1A73C97D9742" _Name="AmountIsInvolvedInWaiterTip">
446
+ <orm:FactRoles>
447
+ <orm:RoleProxy id="_23519000-850F-48E8-B5B5-1E87692C2E4D">
448
+ <orm:Role ref="_ABBCCE14-6665-4C47-9C63-A52E967212D0" />
449
+ </orm:RoleProxy>
450
+ <orm:Role id="_1A2B8E9C-C918-4745-8174-1F3EFDBD55B1" _IsMandatory="true" _Multiplicity="ZeroToMany" Name="">
451
+ <orm:RolePlayer ref="_5B2E927E-3419-454F-BAF6-B4BE6FBC907C" />
452
+ </orm:Role>
453
+ </orm:FactRoles>
454
+ <orm:ReadingOrders>
455
+ <orm:ReadingOrder id="_E9BCD65D-8EA4-4EE8-BF53-C14EAC7CAD4F">
456
+ <orm:Readings>
457
+ <orm:Reading id="_4AEEBCF7-1A7E-4525-8E08-64175EC96612">
458
+ <orm:Data>{0} is involved in {1}</orm:Data>
459
+ <orm:ExpandedData>
460
+ <orm:RoleText RoleIndex="0" FollowingText=" is involved in " />
461
+ </orm:ExpandedData>
462
+ </orm:Reading>
463
+ </orm:Readings>
464
+ <orm:RoleSequence>
465
+ <orm:Role ref="_23519000-850F-48E8-B5B5-1E87692C2E4D" />
466
+ <orm:Role ref="_1A2B8E9C-C918-4745-8174-1F3EFDBD55B1" />
467
+ </orm:RoleSequence>
468
+ </orm:ReadingOrder>
469
+ <orm:ReadingOrder id="_591AB54C-4C15-447B-8C7E-3F27F934DDE8">
470
+ <orm:Readings>
471
+ <orm:Reading id="_6EB56A15-C285-4DAB-BF89-69FD2C8BF2D6">
472
+ <orm:Data>{0} involves {1}</orm:Data>
473
+ <orm:ExpandedData>
474
+ <orm:RoleText RoleIndex="0" FollowingText=" involves " />
475
+ </orm:ExpandedData>
476
+ </orm:Reading>
477
+ </orm:Readings>
478
+ <orm:RoleSequence>
479
+ <orm:Role ref="_1A2B8E9C-C918-4745-8174-1F3EFDBD55B1" />
480
+ <orm:Role ref="_23519000-850F-48E8-B5B5-1E87692C2E4D" />
481
+ </orm:RoleSequence>
482
+ </orm:ReadingOrder>
483
+ </orm:ReadingOrders>
484
+ <orm:InternalConstraints>
485
+ <orm:MandatoryConstraint ref="_474B57FD-7C63-40D6-8AB8-3ECEE8CB3F7D" />
486
+ <orm:UniquenessConstraint ref="_1690A63E-FF66-4E9F-953F-783DCA57F52A" />
487
+ </orm:InternalConstraints>
488
+ <orm:ImpliedByObjectification ref="_4222A2A8-55E4-4F97-863C-B0FBD03AEDEB" />
489
+ </orm:ImpliedFact>
490
+ <orm:Fact id="_53E2B634-D966-4172-B009-8D7E94EB5E4F" _Name="ServiceEarnedATipOfAmount">
491
+ <orm:FactRoles>
492
+ <orm:Role id="_5C53904B-FBB2-42A3-B220-98A0D5DFE82A" _IsMandatory="false" _Multiplicity="ZeroToMany" Name="">
493
+ <orm:RolePlayer ref="_7CB3A76B-18EA-4A1E-AD05-B27E08162D3C" />
494
+ </orm:Role>
495
+ <orm:Role id="_7682B9D5-2BAC-4BA6-AAB6-3311A5CB642B" _IsMandatory="false" _Multiplicity="ZeroToOne" Name="">
496
+ <orm:RolePlayer ref="_A773D128-BBA2-4973-BADA-F30564C7EC34" />
497
+ </orm:Role>
498
+ </orm:FactRoles>
499
+ <orm:ReadingOrders>
500
+ <orm:ReadingOrder id="_9857BE8D-9C32-4B8D-9518-6597166E50DD">
501
+ <orm:Readings>
502
+ <orm:Reading id="_CA3FC3A8-614F-4C78-A4E9-E4A965ED8CEF">
503
+ <orm:Data>{0} earned a tip of {1}</orm:Data>
504
+ <orm:ExpandedData>
505
+ <orm:RoleText RoleIndex="0" FollowingText=" earned a tip of " />
506
+ </orm:ExpandedData>
507
+ </orm:Reading>
508
+ </orm:Readings>
509
+ <orm:RoleSequence>
510
+ <orm:Role ref="_5C53904B-FBB2-42A3-B220-98A0D5DFE82A" />
511
+ <orm:Role ref="_7682B9D5-2BAC-4BA6-AAB6-3311A5CB642B" />
512
+ </orm:RoleSequence>
513
+ </orm:ReadingOrder>
514
+ </orm:ReadingOrders>
515
+ <orm:InternalConstraints>
516
+ <orm:UniquenessConstraint ref="_9560BC09-5325-40A2-ADEE-D1773F9A6AE8" />
517
+ </orm:InternalConstraints>
518
+ </orm:Fact>
519
+ </orm:Facts>
520
+ <orm:Constraints>
521
+ <orm:UniquenessConstraint id="_E425FABB-B473-4B5B-9088-164CD033E1AC" Name="InternalUniquenessConstraint1" IsInternal="true">
522
+ <orm:RoleSequence>
523
+ <orm:Role id="_529335D4-2EC1-4E9F-BA05-367E86D37711" ref="_C7681322-B79E-4E4C-8949-4D6CA02AB652" />
524
+ </orm:RoleSequence>
525
+ <orm:PreferredIdentifierFor ref="_57141FDB-D80D-428D-88E3-B195C7634307" />
526
+ </orm:UniquenessConstraint>
527
+ <orm:UniquenessConstraint id="_D6B59997-785E-4D43-86D1-24544C911A6F" Name="InternalUniquenessConstraint2" IsInternal="true">
528
+ <orm:RoleSequence>
529
+ <orm:Role id="_BF903B7E-C7B9-4681-AD47-A3DA5C5CE7F4" ref="_D9A21D43-FF05-4E67-B77B-AFDF8822C64F" />
530
+ </orm:RoleSequence>
531
+ </orm:UniquenessConstraint>
532
+ <orm:MandatoryConstraint id="_B7FC58C5-B251-4F3B-8BFD-983B6A93ABF1" Name="SimpleMandatoryConstraint1" IsSimple="true">
533
+ <orm:RoleSequence>
534
+ <orm:Role id="_CE853C89-4A81-44BE-81BC-23C0A251EBC4" ref="_D9A21D43-FF05-4E67-B77B-AFDF8822C64F" />
535
+ </orm:RoleSequence>
536
+ </orm:MandatoryConstraint>
537
+ <orm:MandatoryConstraint id="_CA0541F7-BB87-4B33-A357-661E54FD049D" Name="ImpliedMandatoryConstraint1" IsImplied="true">
538
+ <orm:RoleSequence>
539
+ <orm:Role id="_E1862407-CB97-44F9-8C19-DDF9CBEC5163" ref="_C7681322-B79E-4E4C-8949-4D6CA02AB652" />
540
+ </orm:RoleSequence>
541
+ <orm:ImpliedByObjectType ref="_E18AE076-7432-450E-9E9C-54CFB99E49BC" />
542
+ </orm:MandatoryConstraint>
543
+ <orm:UniquenessConstraint id="_759FBF3F-3746-4DCE-B298-C9D01722B780" Name="InternalUniquenessConstraint3" IsInternal="true">
544
+ <orm:RoleSequence>
545
+ <orm:Role id="_A428C45F-66C8-40B5-81CF-F400EEC5A926" ref="_C6EA0D19-E7F5-4D13-A631-7B2C84271130" />
546
+ </orm:RoleSequence>
547
+ <orm:PreferredIdentifierFor ref="_A773D128-BBA2-4973-BADA-F30564C7EC34" />
548
+ </orm:UniquenessConstraint>
549
+ <orm:UniquenessConstraint id="_83EB3652-CBD3-48EB-ACE4-D61FFBC407B2" Name="InternalUniquenessConstraint4" IsInternal="true">
550
+ <orm:RoleSequence>
551
+ <orm:Role id="_868AE704-2078-45C4-AFCF-50D1953CA320" ref="_4497C46F-7671-4F09-B8F0-7292DF3BF664" />
552
+ </orm:RoleSequence>
553
+ </orm:UniquenessConstraint>
554
+ <orm:MandatoryConstraint id="_1A5AC719-D164-4876-85ED-385B65EF9F2A" Name="SimpleMandatoryConstraint2" IsSimple="true">
555
+ <orm:RoleSequence>
556
+ <orm:Role id="_067A8ACF-4E28-43CA-9D1F-AABF1A0F529C" ref="_4497C46F-7671-4F09-B8F0-7292DF3BF664" />
557
+ </orm:RoleSequence>
558
+ </orm:MandatoryConstraint>
559
+ <orm:MandatoryConstraint id="_769EC78A-0100-4973-BDA7-8820CA1FB3A7" Name="ImpliedMandatoryConstraint2" IsImplied="true">
560
+ <orm:RoleSequence>
561
+ <orm:Role id="_400892D1-9FC4-4C36-B69C-57B99F8FE4E5" ref="_C6EA0D19-E7F5-4D13-A631-7B2C84271130" />
562
+ </orm:RoleSequence>
563
+ <orm:ImpliedByObjectType ref="_585BC747-2EBD-4A21-88B8-F70F3B6C2246" />
564
+ </orm:MandatoryConstraint>
565
+ <orm:UniquenessConstraint id="_CCDD646D-D9A2-46DE-98D7-B1C44DC0A226" Name="InternalUniquenessConstraint5" IsInternal="true">
566
+ <orm:RoleSequence>
567
+ <orm:Role id="_3F2FC783-F2D5-4976-BECA-B01A545C566E" ref="_A272CD6C-336B-4458-8428-995B3F31B700" />
568
+ </orm:RoleSequence>
569
+ <orm:PreferredIdentifierFor ref="_98B9B73E-37D2-4648-AE32-481693FBE4A0" />
570
+ </orm:UniquenessConstraint>
571
+ <orm:UniquenessConstraint id="_392E714A-B2AC-4C49-AF16-3BD064B8E72D" Name="InternalUniquenessConstraint6" IsInternal="true">
572
+ <orm:RoleSequence>
573
+ <orm:Role id="_D09B48C7-8DE3-4229-A731-A3997C872E06" ref="_28E1E4E2-186F-48FF-A1CE-7E1EEBF3EE78" />
574
+ </orm:RoleSequence>
575
+ </orm:UniquenessConstraint>
576
+ <orm:MandatoryConstraint id="_4C6A2327-5C5B-431F-8A8F-4515F4D73A73" Name="SimpleMandatoryConstraint3" IsSimple="true">
577
+ <orm:RoleSequence>
578
+ <orm:Role id="_E6B63866-0D6E-4383-84BD-8CE53E3B92A2" ref="_28E1E4E2-186F-48FF-A1CE-7E1EEBF3EE78" />
579
+ </orm:RoleSequence>
580
+ </orm:MandatoryConstraint>
581
+ <orm:MandatoryConstraint id="_23EC2BF8-501E-4D74-8D71-A21066BD583E" Name="ImpliedMandatoryConstraint3" IsImplied="true">
582
+ <orm:RoleSequence>
583
+ <orm:Role id="_2FC232AA-4302-4C74-AB7C-38A2566F564D" ref="_A272CD6C-336B-4458-8428-995B3F31B700" />
584
+ </orm:RoleSequence>
585
+ <orm:ImpliedByObjectType ref="_D4CD69FD-AD3D-44AE-B306-0A4B5CB7DD5A" />
586
+ </orm:MandatoryConstraint>
587
+ <orm:MandatoryConstraint id="_5FF1D090-9DBC-4FA8-AE6C-0450C1351226" Name="ImpliedMandatoryConstraint4" IsImplied="true">
588
+ <orm:RoleSequence>
589
+ <orm:Role id="_FA551E64-1470-4543-9009-1C716E6B8913" ref="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" />
590
+ <orm:Role id="_D98A8238-ADFB-4049-A598-171ECF8D4D35" ref="_35BE7217-0143-4144-8918-11A34CE36B7B" />
591
+ </orm:RoleSequence>
592
+ <orm:ImpliedByObjectType ref="_57141FDB-D80D-428D-88E3-B195C7634307" />
593
+ </orm:MandatoryConstraint>
594
+ <orm:MandatoryConstraint id="_0EB1F6DE-5DA3-478F-B378-D257A8D65D72" Name="ImpliedMandatoryConstraint5" IsImplied="true">
595
+ <orm:RoleSequence>
596
+ <orm:Role id="_602DE22C-0FB5-46EF-8A69-C36115F3BE23" ref="_F1617316-B197-44A0-8239-F44F7CC23E01" />
597
+ <orm:Role id="_B1699796-AB35-4520-A5E4-67EEC37F75A5" ref="_32B877CB-2006-4303-8B52-F8E9348043EA" />
598
+ </orm:RoleSequence>
599
+ <orm:ImpliedByObjectType ref="_98B9B73E-37D2-4648-AE32-481693FBE4A0" />
600
+ </orm:MandatoryConstraint>
601
+ <orm:UniquenessConstraint id="_76D04477-6CC2-4241-A527-BA433FEA5238" Name="InternalUniquenessConstraint7" IsInternal="true">
602
+ <orm:RoleSequence>
603
+ <orm:Role id="_2A8A1BC4-59FF-4CBB-860A-90106B5CB43C" ref="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" />
604
+ <orm:Role id="_8BBA9A0D-A974-4EB1-BB59-9AE29E2B6B4B" ref="_F1617316-B197-44A0-8239-F44F7CC23E01" />
605
+ </orm:RoleSequence>
606
+ <orm:PreferredIdentifierFor ref="_7CB3A76B-18EA-4A1E-AD05-B27E08162D3C" />
607
+ </orm:UniquenessConstraint>
608
+ <orm:MandatoryConstraint id="_305748F6-26E8-4F9B-AAB6-3FE78E025EC3" Name="SimpleMandatoryConstraint4" IsSimple="true">
609
+ <orm:RoleSequence>
610
+ <orm:Role id="_AA24DB5E-E442-4EAE-95D0-86A9E51A8FD6" ref="_CAD5049A-F038-4600-A6A7-99AE3092CFF2" />
611
+ </orm:RoleSequence>
612
+ </orm:MandatoryConstraint>
613
+ <orm:UniquenessConstraint id="_6F0B043D-3096-426B-8A9E-46DACAA2F2C6" Name="InternalUniquenessConstraint8" IsInternal="true">
614
+ <orm:RoleSequence>
615
+ <orm:Role id="_B4C7F84E-BC57-4BD8-B603-AEF8918FD855" ref="_CAD5049A-F038-4600-A6A7-99AE3092CFF2" />
616
+ </orm:RoleSequence>
617
+ </orm:UniquenessConstraint>
618
+ <orm:MandatoryConstraint id="_6B9EEABC-6A50-4870-A668-8FDC2B1C943B" Name="SimpleMandatoryConstraint5" IsSimple="true">
619
+ <orm:RoleSequence>
620
+ <orm:Role id="_B4667C3A-06B3-484F-952A-F835D2DEB168" ref="_8F80BA10-6143-4200-A0E0-901BA9384FDE" />
621
+ </orm:RoleSequence>
622
+ </orm:MandatoryConstraint>
623
+ <orm:UniquenessConstraint id="_F9EB1F4C-E0AB-4A12-948F-B7309FAC4842" Name="InternalUniquenessConstraint9" IsInternal="true">
624
+ <orm:RoleSequence>
625
+ <orm:Role id="_278D1A46-DA92-480F-8BA7-1E7501745B4F" ref="_8F80BA10-6143-4200-A0E0-901BA9384FDE" />
626
+ </orm:RoleSequence>
627
+ </orm:UniquenessConstraint>
628
+ <orm:MandatoryConstraint id="_C2D6DD0B-47D2-4755-9B0B-538CC727B392" Name="SimpleMandatoryConstraint6" IsSimple="true">
629
+ <orm:RoleSequence>
630
+ <orm:Role id="_0443D0B7-7765-4A1D-AA6D-291F10BABADE" ref="_EB25FA3A-A167-43FA-A412-8032BC41F270" />
631
+ </orm:RoleSequence>
632
+ </orm:MandatoryConstraint>
633
+ <orm:UniquenessConstraint id="_810C6C15-B1DD-4699-951A-88F0699EC5BA" Name="InternalUniquenessConstraint10" IsInternal="true">
634
+ <orm:RoleSequence>
635
+ <orm:Role id="_A4CC38D0-4FE1-4B4A-AE00-21EA138B9B56" ref="_EB25FA3A-A167-43FA-A412-8032BC41F270" />
636
+ </orm:RoleSequence>
637
+ </orm:UniquenessConstraint>
638
+ <orm:MandatoryConstraint id="_4C9407FF-4A4A-4F1B-AB66-AC1A1E4D5253" Name="SimpleMandatoryConstraint7" IsSimple="true">
639
+ <orm:RoleSequence>
640
+ <orm:Role id="_C58137AC-DB1C-46D9-96CC-552CF0E048AF" ref="_917F53D3-D05C-4DBA-B9B3-99A29F57C370" />
641
+ </orm:RoleSequence>
642
+ </orm:MandatoryConstraint>
643
+ <orm:UniquenessConstraint id="_008DA0F0-2256-4A9A-8E65-EA3A8846F07C" Name="InternalUniquenessConstraint11" IsInternal="true">
644
+ <orm:RoleSequence>
645
+ <orm:Role id="_9AE85C54-43C5-47F0-8201-3DE65B938D30" ref="_917F53D3-D05C-4DBA-B9B3-99A29F57C370" />
646
+ </orm:RoleSequence>
647
+ </orm:UniquenessConstraint>
648
+ <orm:MandatoryConstraint id="_474B57FD-7C63-40D6-8AB8-3ECEE8CB3F7D" Name="SimpleMandatoryConstraint8" IsSimple="true">
649
+ <orm:RoleSequence>
650
+ <orm:Role id="_18044A98-262B-43C9-AC52-CBDFF4BFCE6B" ref="_1A2B8E9C-C918-4745-8174-1F3EFDBD55B1" />
651
+ </orm:RoleSequence>
652
+ </orm:MandatoryConstraint>
653
+ <orm:UniquenessConstraint id="_1690A63E-FF66-4E9F-953F-783DCA57F52A" Name="InternalUniquenessConstraint12" IsInternal="true">
654
+ <orm:RoleSequence>
655
+ <orm:Role id="_E6740606-3BC7-46F2-BE78-E0CFDF3A2557" ref="_1A2B8E9C-C918-4745-8174-1F3EFDBD55B1" />
656
+ </orm:RoleSequence>
657
+ </orm:UniquenessConstraint>
658
+ <orm:UniquenessConstraint id="_D7DB35B4-EF2B-4F3D-85DE-91AF4C6CA61E" Name="InternalUniquenessConstraint13" IsInternal="true">
659
+ <orm:RoleSequence>
660
+ <orm:Role id="_1470586D-79AE-40CD-93F2-77C019F7698E" ref="_35BE7217-0143-4144-8918-11A34CE36B7B" />
661
+ <orm:Role id="_71FD9DA7-BE39-4689-9512-3705711F6287" ref="_32B877CB-2006-4303-8B52-F8E9348043EA" />
662
+ </orm:RoleSequence>
663
+ <orm:PreferredIdentifierFor ref="_5B2E927E-3419-454F-BAF6-B4BE6FBC907C" />
664
+ </orm:UniquenessConstraint>
665
+ <orm:MandatoryConstraint id="_8DD07961-428F-4985-91D0-563357862C8E" Name="ImpliedMandatoryConstraint6" IsImplied="true">
666
+ <orm:RoleSequence>
667
+ <orm:Role id="_690E1217-1ABA-4684-8D5A-261133AC85AE" ref="_5C53904B-FBB2-42A3-B220-98A0D5DFE82A" />
668
+ </orm:RoleSequence>
669
+ <orm:ImpliedByObjectType ref="_7CB3A76B-18EA-4A1E-AD05-B27E08162D3C" />
670
+ </orm:MandatoryConstraint>
671
+ <orm:MandatoryConstraint id="_B8801CAA-13BB-4E70-8A16-D8D55E0348A8" Name="ImpliedMandatoryConstraint7" IsImplied="true">
672
+ <orm:RoleSequence>
673
+ <orm:Role id="_F03F08A9-06C0-47F0-815A-829C0AF133DA" ref="_7682B9D5-2BAC-4BA6-AAB6-3311A5CB642B" />
674
+ <orm:Role id="_96565BC3-535F-4472-8CED-2526AB48DC65" ref="_ABBCCE14-6665-4C47-9C63-A52E967212D0" />
675
+ </orm:RoleSequence>
676
+ <orm:ImpliedByObjectType ref="_A773D128-BBA2-4973-BADA-F30564C7EC34" />
677
+ </orm:MandatoryConstraint>
678
+ <orm:UniquenessConstraint id="_9560BC09-5325-40A2-ADEE-D1773F9A6AE8" Name="InternalUniquenessConstraint14" IsInternal="true">
679
+ <orm:RoleSequence>
680
+ <orm:Role id="_3C1947BD-CC26-48CB-AFA8-7116789B3E50" ref="_5C53904B-FBB2-42A3-B220-98A0D5DFE82A" />
681
+ </orm:RoleSequence>
682
+ </orm:UniquenessConstraint>
683
+ <orm:EqualityConstraint id="_BF8C615D-BDFD-472E-B834-AF93EBD02908" Name="EqualityConstraint1">
684
+ <orm:RoleSequences>
685
+ <orm:RoleSequence id="_4C6CA38B-5253-4F89-A064-D9B5D44D61E0">
686
+ <orm:Role id="_ECF02C13-4324-4316-9CC4-39270CE8243C" ref="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" />
687
+ <orm:Role id="_D8D5260B-5E9C-4785-8D41-D79FEAF651EF" ref="_F1617316-B197-44A0-8239-F44F7CC23E01" />
688
+ <orm:Role id="_779CA228-C8DC-40D6-8EA7-21DD3CB9E366" ref="_7682B9D5-2BAC-4BA6-AAB6-3311A5CB642B" />
689
+ <orm:JoinRule>
690
+ <orm:JoinPath id="_B4E55028-BD3B-41B9-B3CB-9B6BE0ED1165">
691
+ <orm:PathComponents>
692
+ <orm:RolePath id="_19936D48-AF2F-4283-9295-BABEEEE62604">
693
+ <orm:RootObjectType id="_AA7BDBE9-9CD8-4302-9D89-8BB6FFC8EE01" ref="_57141FDB-D80D-428D-88E3-B195C7634307" />
694
+ <orm:PathedRoles>
695
+ <orm:PathedRole id="_B2B3C44B-0BE6-487E-AA56-9ABD72ED39AB" ref="_2CE47270-0CCC-4E39-AD4F-13E0F595E579" Purpose="PostInnerJoin" />
696
+ <orm:PathedRole id="_AC289936-C2C2-4E2F-9EE6-A21D40F58DC3" ref="_F1617316-B197-44A0-8239-F44F7CC23E01" Purpose="SameFactType" />
697
+ <orm:PathedRole id="_90900F70-640D-432B-B385-CB176DB8EE69" ref="_F1617316-B197-44A0-8239-F44F7CC23E01" Purpose="PostInnerJoin" />
698
+ <orm:PathedRole id="_0382CE24-7DE7-4DFD-B4B0-8C5383F5DFCA" ref="_8F80BA10-6143-4200-A0E0-901BA9384FDE" Purpose="SameFactType" />
699
+ <orm:PathedRole id="_D67E2050-D7AD-42EB-BC9C-C5D52CB06DBB" ref="_5C53904B-FBB2-42A3-B220-98A0D5DFE82A" Purpose="PostInnerJoin" />
700
+ <orm:PathedRole id="_2A806174-766B-446B-B4CA-48E294EFD43C" ref="_7682B9D5-2BAC-4BA6-AAB6-3311A5CB642B" Purpose="SameFactType" />
701
+ </orm:PathedRoles>
702
+ </orm:RolePath>
703
+ </orm:PathComponents>
704
+ <orm:JoinPathProjections>
705
+ <orm:JoinPathProjection id="_245F08BD-3DC2-4B3B-83A2-B4CFA20C1CB2" ref="_19936D48-AF2F-4283-9295-BABEEEE62604">
706
+ <orm:ConstraintRoleProjection id="_02BDC4CD-0E38-469F-AE0F-A635DA6B31E0" ref="_ECF02C13-4324-4316-9CC4-39270CE8243C">
707
+ <orm:ProjectedFrom>
708
+ <orm:PathRoot ref="_AA7BDBE9-9CD8-4302-9D89-8BB6FFC8EE01" />
709
+ </orm:ProjectedFrom>
710
+ </orm:ConstraintRoleProjection>
711
+ <orm:ConstraintRoleProjection id="_8A7DCD9A-875A-4F0B-83EA-3F996731E22E" ref="_D8D5260B-5E9C-4785-8D41-D79FEAF651EF">
712
+ <orm:ProjectedFrom>
713
+ <orm:PathedRole ref="_AC289936-C2C2-4E2F-9EE6-A21D40F58DC3" />
714
+ </orm:ProjectedFrom>
715
+ </orm:ConstraintRoleProjection>
716
+ <orm:ConstraintRoleProjection id="_BC4A9DEC-C63B-4E65-BF07-86B3E4CF361B" ref="_779CA228-C8DC-40D6-8EA7-21DD3CB9E366">
717
+ <orm:ProjectedFrom>
718
+ <orm:PathedRole ref="_2A806174-766B-446B-B4CA-48E294EFD43C" />
719
+ </orm:ProjectedFrom>
720
+ </orm:ConstraintRoleProjection>
721
+ </orm:JoinPathProjection>
722
+ </orm:JoinPathProjections>
723
+ </orm:JoinPath>
724
+ </orm:JoinRule>
725
+ </orm:RoleSequence>
726
+ <orm:RoleSequence id="_ED068696-8C8B-42A3-89B6-49BC6C086D7B">
727
+ <orm:Role id="_4ECBA623-A54B-4FA6-88D6-AB90431C7F25" ref="_35BE7217-0143-4144-8918-11A34CE36B7B" />
728
+ <orm:Role id="_99C698B1-DC14-4797-89EB-46BBBB85F87D" ref="_32B877CB-2006-4303-8B52-F8E9348043EA" />
729
+ <orm:Role id="_56CFCC38-F3C4-4C96-A2A0-5E85A724AC1F" ref="_ABBCCE14-6665-4C47-9C63-A52E967212D0" />
730
+ </orm:RoleSequence>
731
+ </orm:RoleSequences>
732
+ </orm:EqualityConstraint>
733
+ </orm:Constraints>
734
+ <orm:DataTypes>
735
+ <orm:SignedIntegerNumericDataType id="_DCFCEE2B-AAF6-4E26-84A4-105348C80CDC" />
736
+ <orm:AutoCounterNumericDataType id="_003382D9-D573-4B14-85BB-57EFF2E51C2E" />
737
+ <orm:MoneyNumericDataType id="_6E85FFD7-1195-425A-8933-81F4387447ED" />
738
+ </orm:DataTypes>
739
+ <orm:ReferenceModeKinds>
740
+ <orm:ReferenceModeKind id="_5416315D-499E-44E1-BC36-B99C75118157" FormatString="{1}" ReferenceModeType="General" />
741
+ <orm:ReferenceModeKind id="_21A34225-EC19-4F11-A732-80DDB3EBE9A8" FormatString="{0}{1}" ReferenceModeType="Popular" />
742
+ <orm:ReferenceModeKind id="_FAEFA1A5-BCBE-4D2F-8039-7A3FB640D77C" FormatString="{1}Value" ReferenceModeType="UnitBased" />
743
+ </orm:ReferenceModeKinds>
744
+ </orm:ORMModel>
745
+ <ormDiagram:ORMDiagram id="_002D3C6A-C615-4938-A321-3A08C4BDA9CB" IsCompleteView="false" Name="WaiterTips" BaseFontName="Tahoma" BaseFontSize="0.0972222238779068">
746
+ <ormDiagram:Shapes>
747
+ <ormDiagram:ObjectTypeShape id="_4E98BAE7-8100-4754-AA73-A9DD35117F9E" IsExpanded="true" AbsoluteBounds="0.5, 1.3316080448217693, 0.49002673745155334, 0.35900605320930479">
748
+ <ormDiagram:Subject ref="_57141FDB-D80D-428D-88E3-B195C7634307" />
749
+ </ormDiagram:ObjectTypeShape>
750
+ <ormDiagram:ObjectTypeShape id="_F731D4C9-C892-4440-8B45-F1A5966A30B2" IsExpanded="true" AbsoluteBounds="2.7916666269302373, 2.0075000794728597, 0.54808476090431213, 0.35900605320930479">
751
+ <ormDiagram:Subject ref="_A773D128-BBA2-4973-BADA-F30564C7EC34" />
752
+ </ormDiagram:ObjectTypeShape>
753
+ <ormDiagram:ObjectTypeShape id="_7EDC2028-4BE7-4B76-BA04-D708AB6DDE93" IsExpanded="true" AbsoluteBounds="2.2637067472127574, 1.3316080448217693, 0.39147531509399414, 0.35900605320930479">
754
+ <ormDiagram:Subject ref="_98B9B73E-37D2-4648-AE32-481693FBE4A0" />
755
+ </ormDiagram:ObjectTypeShape>
756
+ <ormDiagram:FactTypeShape id="_CF7483FD-740E-4F0B-B633-2EF3F98C0987" IsExpanded="true" AbsoluteBounds="1.3541665871938071, 1.3231666269302371, 0.51388888899236917, 0.30588888899236916">
757
+ <ormDiagram:RelativeShapes>
758
+ <ormDiagram:ReadingShape id="_7A872781-DD32-4B4A-A085-E74CD1F5D1E2" IsExpanded="true" AbsoluteBounds="1.3541665871938071, 1.6938070292249325, 0.32378923892974854, 0.12950302660465241">
759
+ <ormDiagram:Subject ref="_2EB8C485-2A59-4BD9-8BA5-20819657CA42" />
760
+ </ormDiagram:ReadingShape>
761
+ <ormDiagram:ObjectifiedFactTypeNameShape id="_DB411192-955F-4E8B-AF1D-DE816ED3745A" IsExpanded="true" AbsoluteBounds="1.3541665871938071, 1.1289120870232585, 0.42903417348861694, 0.12950302660465241">
762
+ <ormDiagram:Subject ref="_7CB3A76B-18EA-4A1E-AD05-B27E08162D3C" />
763
+ </ormDiagram:ObjectifiedFactTypeNameShape>
764
+ </ormDiagram:RelativeShapes>
765
+ <ormDiagram:Subject ref="_CE89D5CF-A33E-408F-9B20-CD4F7CBCE30D" />
766
+ </ormDiagram:FactTypeShape>
767
+ <ormDiagram:FactTypeShape id="_F8CD88F3-5CE0-491B-A1C0-29890CD278D1" IsExpanded="true" AbsoluteBounds="2.18749996026357, 0.5, 0.5438888889923692, 0.31388888899236916">
768
+ <ormDiagram:RelativeShapes>
769
+ <ormDiagram:ReadingShape id="_2EF90BED-6CAB-430F-95BD-C20906B74A54" IsExpanded="true" AbsoluteBounds="2.18749996026357, 0.87864040229469542, 1.5946090221405029, 0.12950302660465241">
770
+ <ormDiagram:Subject ref="_20000547-7E1B-443E-93E5-4F98C4AB0452" />
771
+ </ormDiagram:ReadingShape>
772
+ </ormDiagram:RelativeShapes>
773
+ <ormDiagram:Subject ref="_0A3CED9A-8579-4D44-AB11-89E430BE7801" />
774
+ </ormDiagram:FactTypeShape>
775
+ <ormDiagram:FactTypeShape id="_E406CA04-3F2D-4C3A-A457-3E173DC10CEC" IsExpanded="true" AbsoluteBounds="1.9895833730697632, 2.0312500000000004, 0.38388888899236917, 0.24388888899236916">
776
+ <ormDiagram:RelativeShapes>
777
+ <ormDiagram:ReadingShape id="_14064E49-E0C4-4FCF-8303-3ACCCF8AC058" IsExpanded="true" AbsoluteBounds="1.9895833730697632, 2.3398904022946958, 0.68201130628585815, 0.12950302660465241">
778
+ <ormDiagram:Subject ref="_9857BE8D-9C32-4B8D-9518-6597166E50DD" />
779
+ </ormDiagram:ReadingShape>
780
+ </ormDiagram:RelativeShapes>
781
+ <ormDiagram:Subject ref="_53E2B634-D966-4172-B009-8D7E94EB5E4F" />
782
+ </ormDiagram:FactTypeShape>
783
+ <ormDiagram:ExternalConstraintShape id="_1AA7AF0F-467B-4776-8163-ECF9D512AEF1" IsExpanded="true" AbsoluteBounds="1.9479167064030967, 1.07000003973643, 0.16, 0.16">
784
+ <ormDiagram:Subject ref="_BF8C615D-BDFD-472E-B834-AF93EBD02908" />
785
+ </ormDiagram:ExternalConstraintShape>
786
+ </ormDiagram:Shapes>
787
+ <ormDiagram:Subject ref="_5C9E6929-BDA5-4082-9230-20590A15F661" />
788
+ </ormDiagram:ORMDiagram>
789
+ </ormRoot:ORM2>