This theory defines a generic ontology. Concepts in this ontolgy can be shared in several different tasks. Only temporal concepts are defined at present. This theory is based on Ontolingua V 3.0
Frame-Ontology Kif-Relations Kif-Sets Kif-Lists Kif-Numbers
Job-Assignment-Task
Day-Name Day-Number Duration Hour-Number Integer-Range Minute-Number Month-Name Month-Number Real-Range Second-Number Temporal-Measure Time-Point Time-Range Year-Number
The following constants were used from included theories:
All constants that were mentioned were defined.
An integer range is a class of integers specified by lower and upper bounds. Instances of an integer-range are integers.
Slots Of Instances:
(<=> (Integer-Range ?Class) (And (Class ?Class) (Subclass-Of ?Class Integer) (Value-Cardinality ?Class I-Lower-Bound 1) (Value-Cardinality ?Class I-Upper-Bound 1) (Forall (?I) (=> (Instance-Of ?I ?Class) (And (=< (I-Lower-Bound ?Class) ?I) (=< ?I (I-Upper-Bound ?Class)) )))))
(I-LOWER-BOUND r) denotes the integer lower bound of range r.
(I-UPPER-BOUND r) denotes the integer upper bound of range r.
An real range is a class of real numbers specified by lower and upper bounds. Instances of an real-range are real numbers.
Slots Of Instances:
(<=> (Real-Range ?Class) (And (Class ?Class) (Subclass-Of ?Class Real-Number) (Value-Cardinality ?Class R-Lower-Bound 1) (Value-Cardinality ?Class R-Upper-Bound 1) (Forall (?I) (=> (Instance-Of ?I ?Class) (And (=< (R-Lower-Bound ?Class) ?I) (=< ?I (R-Upper-Bound ?Class)) )))))
(R-LOWER-BOUND r) denotes the real lower bound of range r.
(R-UPPER-BOUND r) denotes the real upper bound of range r.
TIME-RANGE denotes a certain period of time. It consists of a start time, an end time. A start time must proceed an end time. Relations between TIME-RANGEs are defined after James Allen's interval relations.
(=> (Time-Range ?Time-Range) (Tp= (Tp+ (Time-Range.Start-Time ?Time-Range) (Time-Range.Duration ?Time-Range) ) (Time-Range.End-Time ?Time-Range) ))
(TR-START-TIME 'tr) denotes a start time of a time range tr.
(TR-END-TIME 'tr) denotes an end time of a time range tr.
(TR-END-DURATION 'tr) denotes a duration of a time range tr.
a time range ?tr1 preceeds a time ranage ?tr2.
(<=> (Before ?Tr1 ?Tr2) (Tp< (Time-Range.End-Time ?Tr1) (Time-Range.Start-Time ?Tr2)) )
a time range ?tr1 succeeds a time range ?tr2.
(<=> (After ?Tr1 ?Tr2) (Tp< (Time-Range.End-Time ?Tr2) (Time-Range.Start-Time ?Tr1)) )
a time range ?tr1 ends at the same time a time range ?tr2 starts.
(<=> (Meets ?Tr1 ?Tr2) (Tp= (Time-Range.Start-Time ?Tr1) (Time-Range.Start-Time ?Tr2)) )
a time range ?tr1 is identical to a time range ?tr2.
(<=> (Equals ?Tr1 ?Tr2) (And (Tp= (Time-Range.Start-Time ?Tr1) (Time-Range.Start-Time ?Tr2) ) (Tp= (Time-Range.End-Time ?Tr1) (Time-Range.End-Time ?Tr2)) ))
a time range ?tr1 is properly included in a time range ?tr2.
(<=> (During ?Tr1 ?Tr2) (And (Tp> (Time-Range.Start-Time ?Tr1) (Time-Range.Start-Time ?Tr2) ) (Tp< (Time-Range.End-Time ?Tr1) (Time-Range.End-Time ?Tr2)) ))
a time range ?tr1 and a time range ?tr2 overlaps.
(<=> (Overlaps ?Tr1 ?Tr2) (And (Tp< (Time-Range.Start-Time ?Tr1) (Time-Range.Start-Time ?Tr2) ) (Tp< (Time-Range.Start-Time ?Tr2) (Time-Range.End-Time ?Tr1) ) (Tp< (Time-Range.End-Time ?Tr1) (Time-Range.End-Time ?Tr2)) ))
a time range ?tr1 and a time range ?tr2 starts at the same time and a duration of ?tr1 is shorter than that of ?tr2.
(<=> (Starts ?Tr1 ?Tr2) (And (Tp= (Time-Range.Start-Time ?Tr1) (Time-Range.Start-Time ?Tr2) ) (Tp< (Time-Range.End-Time ?Tr1) (Time-Range.End-Time ?Tr2)) ))
a time range ?tr1 and a time range ?tr2 ends at the same time and a duration of ?tr1 is shorter than that of ?tr2.
(<=> (Finishes ?Tr1 ?Tr2) (And (Tp> (Time-Range.Start-Time ?Tr1) (Time-Range.Start-Time ?Tr2) ) (Tp= (Time-Range.End-Time ?Tr1) (Time-Range.End-Time ?Tr2)) ))
(<=> (Before= ?Tr1 ?Tr2) (Or (Before ?Tr1 ?Tr2) (Meets ?Tr1 ?Tr2)))
(<=> (After= ?Tr1 ?Tr2) (Or (After ?Tr1 ?Tr2) (Meets ?Tr2 ?Tr1)))
(<=> (During= ?Tr1 ?Tr2) (Or (During ?Tr1 ?Tr2) (Starts ?Tr1 ?Tr2) (Finishes ?Tr1 ?Tr2) (Equals ?Tr1 ?Tr2) ))
(<=> (Overlaps= ?Tr1 ?Tr2) (Or (Overlaps ?Tr1 ?Tr2) (Meets ?Tr1 ?Tr2)) )
(<=> (Start= ?Tr1 ?Tr2) (Or (Starts ?Tr1 ?Tr2) (Equals ?Tr1 ?Tr2)))
(<=> (Finishes= ?Tr1 ?Tr2) (Or (Finishes ?Tr1 ?Tr2) (Equals ?Tr1 ?Tr2)) )
time ranges ?tr1 and ?tr2 do not overlap
(<=> (Disjoint-Tr ?Tr1 ?Tr2) (Or (Before ?Tr1 ?Tr2) (Before ?Tr2 ?Tr1)) )
TR+ denotes a time range ?tr2 whose length is longer that ?tr1 by a duration ?duration.
(<=> (Tr+ ?Tr1 ?Duration ?Tr2) (And (= (Time-Range.Start-Time ?Tr1) (Time-Range.Start-Time ?Tr2) ) (= (Tp+ (Time-Range.End-Time ?Tr1) ?Duration) (Time-Range.End-Time ?Tr2) )))
TIME denotes a cetain point of time. It consists of year, month, day, hour, minute, second, and a unit of time. Any details smaller than a unit of a time are not defined. For example, if a unit of time is 2 hour, values of time-minute and time-second are meaningless.
YEAR-NUMBER deontes a year of A.D.
MONTH-NUMBER deontes a month of a year.
(= (I-Upper-Bound Month-Number) 12) (= (I-Lower-Bound Month-Number) 1)
MONTH-NAME denotes a name of a month of a year.
DAY-NUMBER denotes a day of a month.
(= (I-Upper-Bound Day-Number) 31) (= (I-Lower-Bound Day-Number) 1)
DAY-NAME denotes a name of a day of a week.
HOUR-NUMBER denotes an hour of a day.
(= (I-Upper-Bound Hour-Number) 23) (= (I-Lower-Bound Hour-Number) 0)
MINUTE-NUMBER denotes a minute of a hour.
(= (I-Upper-Bound Minute-Number) 59) (= (I-Lower-Bound Minute-Number) 0)
SECOND-NUMBER denotes a second of a minute.
(= (R-Upper-Bound Second-Number) 59) (= (R-Lower-Bound Second-Number) 0)
TIME-POINT.YEAR denotes a year of a time point.
TIME-POINT.MONTH denotes a month of a time point.
TIME-POINT.MONTH-NAME denotes a name of a month of a time point.
TIME-POINT.DAY denotes a day of a time point.
TIME-POINT.DAY-NAME denotes a name of a day of a time point.
TIME-POINT.HOUR denotes an hour of a time point.
TIME-POINT.MINUTE denotes a minute of a time point.
TIME-SECOND denotes a second of a time point.
TIME-UNIT denotes a unit of a time point.
a time point ?tp1 is equal to a time point ?tp2.
(<=> (Tp= ?Tp1 ?Tp2) (And (= (Time-Point.Year ?Tp1) (Time-Point.Year ?Tp2)) (= (Time-Point.Month ?Tp1) (Time-Point.Month ?Tp2)) (= (Time-Point.Day ?Tp1) (Time-Point.Day ?Tp2)) (= (Time-Point.Hour ?Tp1) (Time-Point.Hour ?Tp2)) (= (Time-Point.Minute ?Tp1) (Time-Point.Minute ?Tp2)) (= (Time-Point.Second ?Tp1) (Time-Point.Second ?Tp2)) ))
a time point ?tp1 preceeds a time point ?tp2.
(<=> (Tp< ?Tp1 ?Tp2) (Or (< (Time-Point.Year ?Tp1) (Time-Point.Year ?Tp2)) (And (= (Time-Point.Year ?Tp1) (Time-Point.Year ?Tp2)) (Or (< (Time-Point.Month ?Tp1) (Time-Point.Month ?Tp2)) (And (= (Time-Point.Month ?Tp1) (Time-Point.Month ?Tp2) ) (Or (< (Time-Point.Day ?Tp1) (Time-Point.Day ?Tp2) ) (And (= (Time-Point.Day ?Tp1) (Time-Point.Day ?Tp2) ) (Or (< (Time-Point.Hour ?Tp1) (Time-Point.Hour ?Tp2) ) (And (= (Time-Point.Hour ?Tp1) (Time-Point.Hour ?Tp2) ) (Or (< (Time-Point.Minute ?Tp1) (Time-Point.Minute ?Tp2)) (And (= (Time-Point.Minute ?Tp1) (Time-Point.Minute ?Tp2)) (Or (< (Time-Point.Second ?Tp1) (Time-Point.Second ?Tp2))))))))))))))
inverse of TP<
A difference between tow time points ?tp1 and ?tp2 is aduration ?duration.
(Nth-Domain Tp+ 3 Time-Point) (Nth-Domain Tp+ 2 Duration) (Nth-Domain Tp+ 1 Time-Point)
DURATION denotes a period of time. It consists of a value and a measure
DURATION.VALUE returns a length of a duration in a cetain measure.
DURATION.MEASURE returns a mesure of a length of a duration.
Two duration is the same length.
A duration ?dr1 is shorter than a duration ?dr2.
(Nth-Domain Dr+ 3 Duration) (Nth-Domain Dr+ 2 Duration) (Nth-Domain Dr+ 1 Duration)
TEMPORAL-MEASURE denotes a measure of a length of a temporal interval.