560 likes | 577 Views
Ontology of time for describing temporal content of web pages and services. Supports reasoning about time and integrates with TimeML for NL text analysis.
E N D
Ontologies for the Semantic Web:Time and Space Jerry R. Hobbs USC/ISI Marina del Rey, CA
Aims of DAML-Time DAML (Semantic Web) Ontology of time for describing temporal content of web pages temporal properties of web pages temporal properties of web services Maps easily into other temporal theories/ontologies (e.g., Cyc, SUMO, PSL, ...) Connects easily with various temporal resources Supports reasoning about time Integrated with TimeML for annotation and analysis of NL text
Examples E-Commerce: Need book by next Tuesday Ships books within five business days ? Genealogy: Marriage record for ancestor: year Find birth records for same name, between 15 and 45 years before
Coverage of Temporal Ontology Topological relations Durations Clock and Calendar Temporal Aggregates 5. Deictic Time 6. Vague Temporal Concepts
Time: Topology instants interval start inside end x y before(x,y) before is anti-reflexive, anti-symmetric, transitive start before inside before end
Interval Relations in Terms of before, starts, ends T1 t2 t1 t3 t4 T2 (A T1,T2)[int-overlaps(T1,T2) <--> [proper-interval(T1) & proper-interval(T2) & (E t2,t3)[ends(t2,T1) & begins(t3,T2) & before(t3,t2) & (A t1)[begins(t1,T1) --> before(t1,t3)] & (A t4)[ends(t4,T2) --> before(t2,t4)]]]]
The Interval Algebra (Allen & Ferguson, 1997) before meets overlaps Relations between this and start, end, and before starts equals during finishes
Controversial Issuesand What to do about Them Are the end points of an interval a partof the interval? Can there be intervals of zero length? Is an interval of zero length an instant? ==> Avoid these issues; keep ontology silent. (Many problems arise when trying to identify 0-D and 1-D entities) Is time totally ordered? Are there points at infinity? ==> Optional extensions with triggers Total-order() --> (A t1,t2)[before(t1,t2) v t1=t2 v before(t2,t1)]
Events and Time Temporal ontology is not an ontology of events, e.g., no aspect, event decomposition, etc. Predicates to interface events with time: at-time(e,t) during(e,T) time-span-of(T,e) Or event ontology can provide its own means: holds(e,t) p(x,t) etc. Or in temporal ontology, temporal thing that covers both intervals and events.
Events in the Temporal Ontology TemporalThing InstantThings TemporalEntities Events IntervalThings Instants InstantEvents Intervals IntervalEvents Then temporal predicates are generalized to TemporalThing, InstantThing, IntervalThing
Units of Duration duration(T, *Second*) = n means interval T is n seconds long duration(T,*Second*) = 60*duration(T,*Minute*) duration(T,*Minute*) = 60*duration(T,*Hour*) duration(T,*Hour*) = 24*duration(T,*Day*) duration(T,*Day*) = 7*duration(T,*Week*) duration(T,*Day*) = ??*duration(T,*Month*) duration(T,*Month*) = 12*duration(T,*Year*)
Duration Descriptions Interval durationDescriptionOf DurationDescription: Seconds: Minutes: Hours: Days: Weeks: Months: Years: Many equivalent DurationDescriptions
Temporal Arithmetic duration-description(T,y,m,w,d,h,n,s+60) <--> duration-description(T,y,m,w,d,h,n+1,s) duration-description(T,y,m,w,d,h,n+60,s) <--> duration-description(T,y,m,w,d,h+1,n,s) duration-description(T,y,m,w,d,h+24,n,s) <--> duration-description(T,y,m,w,d+1,h,n,s) duration-description(T,y,m,w,d+7,h,n,s) <--> duration-description(T,y,m,w+1,d,h,n,s) duration-description(T,y,m,w,d+??,h,n,s) <--> duration-description(T,y,m+1,w,d,h,n,s) duration-description(T,y,m+12,w,d,h,n,s) <--> duration-description(T,y+1,m,w,d,h,n,s) Canonical description of duration
Concatenation and "Hath" Concatenation(x,S): x is concatenation of intervals in S x S Concatenation(T1,{T2,T3}) --> duration(T1,u) = duration(T2,u) + duration(T3,u) Hath(n,u,x): n units of type u comprises x September(x,y) --> Hath(30,*Day*,x) minute(x) --> Hath(60,*Second*,x) x u u u u |S|=n
Clock and Calendar Time zones: Not geographical regions, but legal entities Property of hours days months years C.E. CE(z) = Common Era in time zone z Various ways of saying minit(y,n,x) <--> minitFn(n,x) = y <--> clock-int(y,n,*Minute*,x) <--> y is the nth minute in x A subset of intervals that correspond to clock or calendar designations, e.g., August 2003
Days of the Week dayofweek(y,n,x) <--> cal-int(y,n,*Day*,x) & (E x1,n1) cal-int(x,n1,*Week*,x1) dayofweek(d,1,w) <--> Sunday(d,w) Tuesday(1-Jan-2000) anchors cycle of weeks
Months and Leap Years cal-int(m,1,*Month*,y) <--> January(m,y) January(m,y) --> Hath(31,*Day*,m) leapyear(y) <--> yr(y,n,CE(z)) & 400 | n v [4|n & ~100|n] February(m,y) & ~leapyear(y) --> Hath(S,28,*Day*,y)
Month as a Unit of Duration Need months as units of duration since since charges are often by the month. one month nth day nth day But: January 31 + 1 month = February 28 January 30 + 1 month = February 28 February 28 + 1 month = March 28 or March 31? January 31 + 2 months = March 31 January 30 + 2 months = March 30 So [January 30 + 1 month] + 1 month =/= January 30 + 2 months
Clock and Calendar weekendday(d,w) <--> Saturday(d,w) v Sunday(d,w) da(d,4,m) & July(m,y) --> holiday(d,USA) business-day(d,g) <--> ~(E w)[weekendday(d,w)] & ~holiday(d,g)
Time Stamps Time Stamps: time-of(t,y,m,d,h,n,s,z) <--> in-interval(t,secFn(s,minFn(n,hrFn(h,daFn(d,monFn(m,yrFn(y,CE(z)))))))) If t is 4:25:38 pm PDT, January 28, 2003 then time-of(t,2003,1,28,16,25,38,*PDT*) Mapping onto ISO 8601 standard Relate to duration descriptions so temporal arithmetic can be done on dates.
Temporal Aggregates “five business days” “every third Monday in 2001” “every morning for the last four years” “four consecutive Sundays” “the first nine months of 1997” “three weekdays after January 10” “the fourth of six days of voting”
Temporal Aggregates temporal sequence: set of nonoverlapping instants and/or intervals ordered by before first(s), nth(s,n) futurep(p,u) = s <--> (A t)[member(t,s) <--> (E t1,t2)[p(t) & now(t1,u) & begins(t2,t) & before(t1,t2)]] (sequence of all the p’s after now)
Deictic Time now(t,u): instant/interval t is now in utterance/document u today(d,u) <--> now(t,u) & in-interval(t,d) & day(d,n,x) past(t,u) <--> now(t1,u) & before(t,t1) ago(t,T,u) <--> now(t1,u) & interval-betw(t,t1) = T
Vague Temporal Concepts Vague Temporal Concepts: recently, soon, a little while, .... Where text annotation can help immensely: what durations do people intend? She had recently [3 mos] bought a laptop. In recent [5 yrs] years farmers have been enjoying record yields. The recent [1 wk] computer crash was costly. Need data on what these terms mean.
Convergence TimeML (ARDA AQUAINT program) Annotation of NL corpora Development of algorithms for annotation For QA, MT, etc. DAML-Time (DARPA DAML program) Expressing temporal content and capabilities of Web sites and services Most information on the Web is in natural language TimeML <--> DAML-Time
Example Query: I want the latest book by John McCarthy by next Tuesday. Author: John McCarthy et al. Book: Formalizing Common Sense Date: 1998 Price: $24.95 Author: John McCarthy Book: LISP 1.5 Date: 1962 Price: $16.95 Delivery within 5 business days Author: John McCarthy et al. Book: Defending AI Research Date: 1996 Price: $21.95
Example Query: I want the latest book by John McCarthy by next Tuesday. Price is no object. Author: John McCarthy et al. Book: Formalizing Common Sense Date: 1998 Price: $24.95 Delivery within 5 business days Author: John McCarthy et al. Book: Defending AI Research Date: 1996 Price: $21.95 Author: John McCarthy Book: LISP 1.5 Date: 1962 Price: $16.95
TimeML Annotation of time and events in natural language text. Time stamping of events. Ordering of events wrt each other. Anchoring of deictic temporal expressions. Identifying signals of temporal information. Facilitates reasoning about persistence of events. Creation of TIMEBANK, gold standard of 300 articles.
An Annotation Delivery within five business days. <EVENT eid="e1" class="OCCURRENCE" tense=”NONE" aspect="NONE"> Delivery </EVENT> <MAKEINSTANCE eiid="ei1" eventID="e1" signalID="s1" /> <SIGNAL sid="s1"> within </SIGNAL> <TIMEX3 tid="t1" type="DURATION"> five business days </TIMEX3> <TLINK eventInstanceID="ei1" relatedToTime="t1” relType="IS_INCLUDED"/>
Time Expressions in TimeML <TIMEX3 tid="t1" type="DURATION"> five business days </TIMEX3> Dates, times, durations functionInDocument: Creation_Time, ... (Anchors deictic expressions like “now”, “next Tuesday”) Follows ISO 8601 time standard
Events in TimeML <EVENT eid="e1" class="OCCURRENCE" tense=”NONE" aspect="NONE"> Delivery </EVENT> Class: Occurrence: delivery State: on order Reporting: announce I-Action: attempt, offer I-State: believe, want Aspectual: begin, continue Perception: see, watch Tense: Past, Present, Future, None Aspect: Progressive, Perfective, Perfective_Progressive, None
Links in TimeML <TLINK eventInstanceID="ei1" relatedToTime="t1” relType="IS_INCLUDED"/> TLINK: interval relations SLINK: Modal: could Factive: forgot Counterfactive: prevent Evidential: said, saw Negative evidential: denied Negative: not ALINK: Initiation: started to read Culmination: finished reading Termination: stopped reading Continuation: kept reading
TLINK Relations <TLINK eventInstanceID="ei1" relatedToTime="t1” relType="IS_INCLUDED"/> Identical Simultaneous Before After Immediately before Immediately after Including Is Included Overlaps Holding Beginning Begun by Ending Ended by
TimeML: Annotation Scheme:An Example The top commander of a Cambodian resistance force said Thursday he hassenta team to recover the remains of a British mine removal expert kidnapped and presumed killed by Khmer Rouge guerrillas two years ago. resist command recover sent Thursday said now 2 years presumed remove kidnap killed remain
Example “next Tuesday”: Tuesday(first(futurep(cal-week,u))) “five business days”: nth(futurep(business-day,u),5) delivery 5 business days order ? next Tuesday
Summary of DAML-Time/TimeML TimeML annotation of text Algorithms for automatic TimeML annotation of text Interpret annotations in DAML-Time Reason in DAML-Time to match requests with services
DAML-Space:A Effort towards an Ontology of Space with contributions from Rusty Bobrow, Murray Burke, Dan Connolly, Dejing Dou, George Ferguson, Andrew Gordon, Pete Haglich, Pat Hayes, Adam Pease, Steve Reed, Richard Waldinger and others
Context The Semantic Web requires common ontologies with wide acceptance and use. DAML-S: an ontology of services Development began February 2001 About a dozen people in inner circle Some people have explored using it Institutional status at W3C Version 0.9 just released DAML-Time: a temporal ontology Development began February 2002 Most work by 3 people Abstract theory 90% complete Mapping between DAML-Time and TimeML Several sites “about to” use it Want to build on this experience for a spatial ontology.
Aims A widely available ontology of geographical and other spatial properties and relations Provide convenient markup and query capabilities for spatial information in Web resources Adequate abstract coverage of most spatial applications (not necessarily efficient) Link with special purpose reasoning engines for spatial theories and large-scale GIS databases Link with various ontological resources (e.g., OpenCyc, SUMO, ...) and annotation schemes Link with various standards for geographical information (OpenGIS, GML, ...)
Structure of Effort Cohn Hayes & Chaudhri Abstract Theory of Space (FOL) etc Complete or Partial Realization in DAML / OWL / RuleML / ... SUMO OpenCyc NLP Extraction Techniques Existing Standards Annotation Standards
Some Principles Delimiting the effort: Not a theory of physical objects, properties of materials, qualitative physics Link with numerical computation, don’t axiomatize it Link with large geographical DBs, don’t duplicate them Navigate past controversial issues by Keeping silent on issue Provide easily exercised options Use textbook logic for abstract theory; DAML/OWL-ize predicate and function declarations Provide simple, useful entry subontologies
Topics SPACETIME Topology Topology Dimension -- Orientation & Shape -- Length, area, volume Duration Lat/long, elevation Clock & calendar Geopolitical subdivisions -- Granularity Granularity Aggregates, distributions Temporal aggregates
Topology Points, arcs, regions, volumes Closed loops and surfaces Ordering relations & “between” in arcs; directions on lines and loops Connectedness, continuity Boundaries & surfaces, interior & exterior, directed boundaries; “airspace above” Disjoint, touching, bordering, overlapping, containing regions (RCC8); location at Holes NOT open and closed sets NOT pathological topologies
Dimension and Orientation Abstract characterization of dimension, projections on component dimensions Links w topological notions of dimension Frames of reference: earth-based, person-based, vehicle-based, force-based Relative orientations: parallel, perpendicular Cartesian vs polar coordinate systems, bearing & range Transformations between coordinate systems Degrees of freedom Qualitative trigonometry: granularities on orientations 2 1/2 dimensions: elevation as 2nd class dimension, system mostly thought of as planar Elevation from sea level vs ground level Planar vs spherical geometry
Shape 2D vs 3D shapes Linking w shape descriptions in geographical databases Shape descriptors: round, tall, narrow, convex,... Relative shapes: rounder, sharper, ... Same shape as, negative-shape, fits-in Symmetry Links w functionality of shape In artifacts, shape is almost always functional In natural objects, shape often has consequences ? Texture
Size Length, distance, area, and volume Precise measures Alternate descriptions of size English-metric conversions Coarse granularities: order of magnitude, half order of magnitude, implied precision, qualitative measures (large, medium, small) relative to comparison set Encoding uncertainty: bounded error, egg yolk theories Uncertainty of location vs imprecise regions
Granularity A city can be viewed as a point, a region, or a volume. How should these different perspectives be accommodated? One approach: City is an entity with 3D, 2D, and 0D realizations. User can pick which one(s) to use. Build granularity considerations into spatial ontology from the beginning, not as an add-on.
Spatial Aggregates What are the most common ways of describing spatial aggregates? A qualitative theory of distributions. ? Texture
Geologic/Geopolitical Regions Latitude and Longitude Natural geographical regions: Land masses: continent, island, ... Bodies of water: ocean, lake, river, ... Terrain features: mountain, valley, forest, desert, ... Political regions: Countries Political subdivisions: state, province, county, ... Municipalities: city, town, village, ... Residences and street addresses Other: Indian reservations, regulatory zones, ...