@@ -151,11 +151,12 @@ standard library package Occurrences {
151151 */
152152
153153 /* timeCoincidentOccurrences occurrences happen during each other. */
154- feature thisOccurrence: Occurrence[1] subsets that;
155- feature thatOccurrence: Occurrence[1] subsets self;
154+ feature thatOccurrence: Occurrence[1] subsets longerOccurrence;
155+ feature thisOccurrence: Occurrence[1] subsets shorterOccurrence;
156+
156157 connector :HappensDuring
157- from shorterOccurrence references thatOccurrence [1]
158- to longerOccurrence references thisOccurrence [1];
158+ from shorterOccurrence references thisOccurrence [1]
159+ to longerOccurrence references thatOccurrence [1];
159160 }
160161
161162 feature spaceEnclosedOccurrences: Occurrence[1..*] subsets occurrences {
@@ -166,8 +167,8 @@ standard library package Occurrences {
166167 */
167168
168169 /* spaceEnclosedOccurrences is transitive. */
169- feature smallerSpace : Occurrence[1] subsets that;
170- feature largerSpace : Occurrence[1] subsets self;
170+ feature largerSpace : Occurrence[1] subsets that;
171+ feature smallerSpace : Occurrence[1] subsets self;
171172 subset smallerSpace.spaceEnclosedOccurrences subsets largerSpace.spaceEnclosedOccurrences;
172173 }
173174
@@ -189,12 +190,20 @@ standard library package Occurrences {
189190 binding startShot[1] = endShot[1];
190191 }
191192
192- feature spaceTimeCoincidentOccurrences: Occurrence[1..*] subsets spaceTimeEnclosedOccurrences inverse of spaceTimeCoincidentOccurrences {
193+ feature spaceTimeCoincidentOccurrences: Occurrence[1..*] subsets timeCoincidentOccurrences, spaceEnclosedOccurrences inverse of spaceTimeCoincidentOccurrences {
193194 doc
194195 /*
195196 * Occurrences that this one completely includes in both space and time,
196197 * and vice-versa, including this one.
197198 */
199+
200+ /* spaceTimeCoincidentOccurrences occurrences are inside of each other. */
201+ feature redefines thatOccurrence subsets largerSpace;
202+ feature redefines thisOccurrence subsets smallerSpace;
203+
204+ connector :InsideOf
205+ from largerSpace references thatOccurrence [1]
206+ to smallerSpace references thisOccurrence [1];
198207 }
199208
200209 feature outsideOfOccurrences: Occurrence[0..*] subsets withoutOccurrences inverse of outsideOfOccurrences {
@@ -750,17 +759,17 @@ standard library package Occurrences {
750759 end feature largerOccurrence: Occurrence[1..*] redefines longerOccurrence, largerSpace;
751760 }
752761
753- assoc all WithinBoth specializes Within {
762+ assoc all WithinBoth specializes Within, HappensWhile {
754763 doc
755764 /*
756765 * WithinBoth asserts that two occurrences are Within each other, that is, they occupy the
757766 * same four dimensional region. Note that this means every Occurrence is WithinBoth with
758767 * itself and transitive.
759768 */
760769
761- end feature thisOccurrence: Occurrence[1..*] redefines smallerOccurrence
770+ end feature thisOccurrence redefines smallerOccurrence redefines HappensWhile::thisOccurrence
762771 subsets thatOccurrence.spaceTimeCoincidentOccurrences;
763- end feature thatOccurrence: Occurrence[1..*] redefines largerOccurrence
772+ end feature thatOccurrence redefines largerOccurrence redefines HappensWhile::thatOccurrence
764773 subsets thisOccurrence.spaceTimeCoincidentOccurrences;
765774 }
766775
0 commit comments