the telic atelic distinction in temporal databases n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
The Telic\Atelic Distinction in Temporal Databases PowerPoint Presentation
Download Presentation
The Telic\Atelic Distinction in Temporal Databases

Loading in 2 Seconds...

play fullscreen
1 / 70

The Telic\Atelic Distinction in Temporal Databases - PowerPoint PPT Presentation


  • 99 Views
  • Uploaded on

The TelicAtelic Distinction in Temporal Databases. Paolo Terenziani Institute of Computer Science, DISIT, Univ. Piemonte Orientale “A. Avogadro”, Viale Teresa Michel 11, Alessandria, Italy terenz@mfn.unipmn.it. Acknowledgements: R.T. Snodgrass

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

The Telic\Atelic Distinction in Temporal Databases


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
the telic atelic distinction in temporal databases
The Telic\Atelic Distinction in Temporal Databases

Paolo Terenziani

Institute of Computer Science,

DISIT, Univ. Piemonte Orientale “A. Avogadro”,

Viale Teresa Michel 11, Alessandria, Italy

terenz@mfn.unipmn.it

  • Acknowledgements:
  • R.T. Snodgrass
  • A. Bottrighi, V. Khatri, G. Molino, S. Ram, M.Torchio
  • L. Lesmo, P. Torasso

Tucson, November 8th, 2012

the telic atelic distinction in temporal databases1
The Telic\Atelic Distinction in Temporal Databases
  • Summary:
  • Telic\atelic dichotomy (Linguistics)
  • (Data) semantics of relational temporal databases
  • The impact of the dichotomy on TDBs
  • New data model (semantics)
  • New query language (semantics: relational algebra)
  • Extensions to SQL & implementations
  • Conceptual modeling
  • Conclusions & open issues
the telic atelic distinction
The Telic\Atelic Distinction

Aristotle’s “Categories”

Telic facts: facts with a goal or culmination

(e.g., John build a house)

Atelic facts: facts without goal\culmination

(e.g., John slept)

(in Greek, “telos”=“goal”, “a” as a prefix indicates negation)

  • Studied\used in
  • Philosophy
  • Linguistics
  • Cognitive Science
  • - Logics, Artificial Intelligence
the telic atelic distinction1
The Telic\Atelic Distinction

Deeply rooted in the Western culture

E.g., from Cognitive studies:

the aktionsart distinctions (and, in particular, the telic/atelic distinction) play a fundamental role in the acquisition of verbal paradigms by children:

- [Bloom et al. 1980]: English,

- [Bronckart & Sinclair, 1973]: French,

- [Aksu, 1978]: Turkish.

the telic atelic distinction2
The Telic\Atelic Distinction

WHY SHOULD WE CARE?

Moens and Steedman:

“Effective exchange of information

between people and machines

is easier

if the data structures that are used to organize the information in the machine

correspond in a natural way

to the conceptual structures people use to organize the same information”

… BUT ALSO “MORE PRACTICAL” REASONS

(current TDBs cannot cope correctly with telic facts!!)

the telic atelic distinction in linguistics
The Telic\Atelic Distinction in Linguistics

Linguistic sentences can be classified into different aktionsart classes according to their linguistic behavior and to their semantic properties

E.g., [Vendler, 1967]

Activities (e.g., “John slept”)

Accomplishments (e.g., “John built a house”)

Achievements (e.g., “John reached the top of the mountain”)

States (e.g., “John had fever”)

the telic atelic distinction in linguistics1
The Telic\Atelic Distinction in Linguistics

Different linguistic behavior

E.g., progressive form

Activities (e.g., “John was sleeping”)

Accomplishments (e.g., “John was building a house”)

Achievements (e.g., “John was reaching the top”)

States (e.g., “John was having fever”)

the telic atelic distinction in linguistics2
The Telic\Atelic Distinction in Linguistics

Semantic properties

E.g., [Dowty, 1986] states vs. accomplishments:

(1) A sentence  is stative if it follows from the truth of  at an interval I that  is true at all subintervals of I (e.g., if John was asleep from 1:00 to 2:00 PM, then he was asleep at all subintervals of this interval: be asleep is a stative).

(2) A sentence  is an accomplishment/achievement (or kinesis) if it follows from the truth of  at an interval I that  is false at all subintervals of I (e.g., if John built a house in exactly the interval from September 1 until June 1, then it is false that he built a house in any subinterval of this interval: building a house is an accomplishment/achievement)

the telic atelic distinction in linguistics3
The Telic\Atelic Distinction in Linguistics

Semantic properties

Property 1 of states (and activities): downward inheritance.

Property 2 of states (and activities): upward inheritance.

E.g., if John was asleep from1:00 to 2:00 and from 2:00 to 3:00, then he was asleep from 1:00 to 3:00

NOTICE: neither Property 1 nor Property 2 holds for TELIC sentences (accomplishments)

the telic atelic distinction in linguistics4
The Telic\Atelic Distinction in Linguistics

Language is FLEXIBLE

“Basic” sentences can be classified as activities, accomplishments, achievements, and states

Languages provides linguistic tools to switch from one class to the other [Verkuyl], [Moens & Steedman]

e.g., when applied to an accomplishment, the progressive form converts it into an activity, since it strips out its culmination

(i) “John built a house” is TELIC

(ii) “John was building a house” is ATELIC

(indeed, the culmination is not implied by (ii))

the telic atelic distinction impact on temporal relational dbs
The Telic\Atelic Distinction IMPACT ON TEMPORAL RELATIONAL DBs

Definition (Telic\Atelic facts).

Atelic facts(data) are facts (data) for which both downward and upward inheritance hold;

Telic factsare facts for which neither downward nor upward inheritance hold.

the telic atelic distinction impact on temporal relational dbs1
The Telic\Atelic Distinction IMPACT ON TEMPORAL RELATIONAL DBs
  • three distinctions:
  • Representation versus semantics of the language (concrete vs. abstract databases [Chomicki, 1994])
  • Data language versus query language.
  • Data semantics versus query semantics
data semantics bcdm bitemporal conceptual data model jensen snodgrass 96
DATA SEMANTICSBCDM (Bitemporal Conceptual Data Model [Jensen & Snodgrass, 96])
  • Temporal Domains
  • Time is linear and totally ordered
  • Chronons are the basic time unit
  • Time domains are isomorphic to subsets of the domain of Natural numbers

DVT = {t1,t2, …, tk} (valid time)

DTT = {t’1,t’2, …, t’h}  {UC} (transaction time)

DTT  DVT (bitemporalchronons)

slide14
BCDM
  • Data
  • Attribute names: DA={A1, A2, …, An}
  • Attribute domains DD={D1, D2, …, Dn}
  • Schema of a bitemporal relation:
  • R = Ai1, Ai2, …, Aij T
  • Domain of a bitemporal relation:
  • Di1 Di2 … Dij DTT  DVT
  • Tuple of a relation r(R):
  • x = (a1, a2, …, aj | tB)
slide15
BCDM

Example.

Relation Employee with Schema: (name,salary,T)

“Andrea was earning 60K at valid times 10, 11, 12”

Such a tuple has been inserted into Employee at time 12, and is current now (say now=13)”

(Andrea, 60k | {(12,10), (12,11), (12,12),(13,10), (13,11), (13,12), ……})

VT

12

11

10

12

13

TT

slide16
BCDM

Example.

Relation Employee with Schema: (name,salary,T)

“Andrea was earning 60K at valid times 10, 11, 12

Such a tuple has been inserted into Employee at time 12, and is current now (say now=13)”

(Andrea, 60k | {(12,10), (12,11), (12,12),(13,10), (13,11), (13,12), (UC,10), (UC,11), (UC,12)})

VT

12

11

10

12

13

UC

TT

slide17
BCDM

Bitemporal relation: set of bitemporaltuples.

Constraint: Value equivalent tuples are not allowed.

(Bitemporal) DB: set of (bitemporal) relations

slide18
BCDM

Data Semantics (another viewpoint)

(12,10)  {<Andrea,60K>}

(12,11)  {<Andrea, 60K>}

(12,12)  {<Andrea, 60K>, <John,50K>}

(12,13)  {<John,50K>}

(13,10)  {<Andrea,60K>}

(13,11)  {<Andrea, 60K>}

……..

(UC,12)  {<Andrea, 60K>}

slide19
BCDM

HENCEFORTH: focus on VALID TIME

10  {<Andrea,60K>}

 {<Andrea,60K>}

 {<Andrea,60K>, <John, 50K>}

13  {<John, 50K>}

slide20
BCDM

PROPERTIES

Consistent extension (of “classical” SQL DB)

A temporal DB is a set of “classical” DBs, one for each bitemporalchronon

bcdm al
BCDM & al.

POINT-BASED Data Semantics

A temporal database is a function from time points to a standard (non-temporal) database

“SNAPSHOT semantics”

bcdm query semantics
BCDMQUERY semantics

Algebraic Operators

(E.g. Union)

r1B r2 = {z | (∃xr1∃yr2 x[A]=y[A]=z[A] ∧ z[T]=x[T]  y[T]) 

(∃xr1 x[A]=z[A] ∧ (∃yr2 y[A]=z[A]) ∧ z[T]=x[T]) 

(∃yr2 y[A]=z[A] ∧ (∃xr1 x[A]=z[A]) ∧ z[T]=y[T])}

  • Coalescing!
slide23
BCDM

Reducibility

ρtT

rT

ρtT (rT)

opT

op

op(ρtT (rT))

ρtT

=

ρtT(opT (rT))

opT (rT)

an example of implementation tsql2 snodgrass et al 1995
An example of implementation: TSQL2(Snodgrass et al., 1995)

Temporal attribute T  four temporal attributes

(TTS, TTE, VTS, VTE)

Attribute value: a timestamp or UC

Bitemporaltuple: A1,….An| TTS, TTE, VTS, VTE

Bitemporal relation: set of bitemporaltuples

an example of implementation tsql2 snodgrass et al 19951
An example of implementation: TSQL2(Snodgrass et al., 1995)

TSQL2

SEMANTICS

BCDM

10  {<Andrea,60K>}

 {<Andrea,60K>}

 {<Andrea,60K>, <John, 50K>}

13  {<John, 50K>}

bcdm tsql2 al vs telic atelic
BCDM (TSQL2 & al.) vs. TELIC\ATELIC

TSQL2

SEMANTICS

10  {<Andrea,60K>}

 {<Andrea,60K>}

 {<Andrea,60K>}

Downward inheritance:

([10,12])  (10)  (11)  (12)

bcdm tsql2 al vs telic atelic1
BCDM (TSQL2 & al.) vs. TELIC\ATELIC

TSQL2

SEMANTICS

10  {<Andrea,60K>}

 {<Andrea, 60K>}

 {<Andrea, 60K>}

 {<Andrea, 60K>}

Upward inheritance:

([10,11])  ([12,13])  ([10,11]  [12,13])

bcdm tsql2 al vs telic atelic2
BCDM (TSQL2 & al.) vs. TELIC\ATELIC

Current temporal databases adopt BCDM semantics

Naturally support Upward and Downward inheritance

Naturally support ATELIC facts (data)

WHAT ABOUT TELIC FACTS (DATA)

?

telic facts bcdm point based semantics
TELIC FACTS & BCDM (point-based) semantics

E.g. Sue had an administration of 500 mg of cyclophosphamide (a cancer drug) starting at 1 and ending at 3 (inclusive)

1  {<Sue, cyclophosphamide, 500>}

2  {<Sue, cyclophosphamide, 500>}

3  {<Sue, cyclophosphamide, 500>}

Downward inheritance is (erroneously) enforced!

How many administrations? What is their duration? How many mg. administered?

telic facts bcdm point based semantics1
TELIC FACTS & BCDM (point-based) semantics

E.g. Sue had

- an administration of 500 mg of cyclophosphamide starting at 1 and ending at 3 (inclusive), and

- an administration of 500 mg of cyclophosphamide at 4

1  {<Sue, cyclophosphamide, 500>}

2  {<Sue, cyclophosphamide, 500>}

3  {<Sue, cyclophosphamide, 500>}

4  {<Sue, cyclophosphamide, 500>}

Upward inheritance is (erroneously) enforced!

How many administrations? What is their duration? How many mg. administered?

telic facts bcdm point based semantics2
TELIC FACTS & BCDM (point-based) semantics

1  {<Sue, cyclophosphamide, 500>}

2  {<Sue, cyclophosphamide, 500>}

3  {<Sue, cyclophosphamide, 500>}

4  {<Sue, cyclophosphamide, 500>}

As well known in Linguistics (and Artificial Intelligence, Logics)

POINT-BASED SEMANTICS IS NOT EXPRESSIVE ENOUGH TO COPE WITH TELIC FACTS (DATA)

syntax vs semantics of data
SYNTAX vs. SEMANTICS of data

NOTICE: this discussion is INDEPENDENT OF THE IMPLEMENTATION (representation syntax)

  • <Sue, cyclophosphamide, 500 || {1,2,3,4}> ADM
  • <Sue, cyclophosphamide, 500 || {[1–3],[4–4]}> ADM
  • <Sue, cyclophosphamide, 500 || [1–3]> ADM and
  • <Sue, cyclophosphamide, 500 || [4–4]> ADM
  • For instance, TSQL2 uses time intervals in the representation
syntax vs semantics of data1
SYNTAX vs. SEMANTICS of data

But they are merely a compact representation for a set of point, since the semantics is

1  {<Sue, cyclophosphamide, 500>}

2  {<Sue, cyclophosphamide, 500>}

3  {<Sue, cyclophosphamide, 500>}

4  {<Sue, cyclophosphamide, 500>}

syntax vs semantics of data2
SYNTAX vs. SEMANTICS of data

Needless to remember that …

Answers to query must be provided

on the basis of the SEMANTICS of data

(independently of the representation syntax)

1  {<Sue, cyclophosphamide, 500>}

2  {<Sue, cyclophosphamide, 500>}

3  {<Sue, cyclophosphamide, 500>}

4  {<Sue, cyclophosphamide, 500>}

How many administrations? What is their duration? How many mg. administered?

telic facts bcdm point based semantics3
TELIC FACTS & BCDM (point-based) semantics

As predicted, e.g., by the Linguistic literature

POINT-BASED (snapshot, BCDM, …) SEMANTICS IS NOT ADEQUATE (expressive enough) TO COPE WITH TELIC FACTS

INTERVAL-BASED SEMANTICS IS NEEDED !!

semantics for telic facts
SEMANTICS for TELIC FACTS

E.g. Sue had

- an administration of 500 mg of cyclophosphamide starting at 1 and ending at 3 (inclusive), and

- an administration of 500 mg of cyclophosphamide at 4

[1,3]  {<Sue, cyclophosphamide, 500>}

[4,4]  {<Sue, cyclophosphamide, 500>}

INTERVAL-BASED SEMANTICS: function from INTERVALS to facts

semantics for telic facts interval based semantics
SEMANTICS for TELIC FACTS:INTERVAL-BASED SEMANTICS

INTERVALS ARE PRIMITIVE AND ATOMIC NOTIONS (i.e., NOT A NOTATION FOR A SET OF TIME POINTS !!!)

semantics for telic facts interval based semantics1
SEMANTICS for TELIC FACTS:INTERVAL-BASED SEMANTICS

DiSIT has

- A 50K contract with IBM from 1 to 12

- A 50K contract with IBM from 7 to 18

[1,12]  {<DiSIT,IBM,50K>}

[7,18]  {<DiSIT,IBM,50K>}

interval based semantics vs telic atelic
INTERVAL-BASED SEMANTICS vs. TELIC\ATELIC

[1,3]  {<Sue, cyclophosphamide, 500>}

[4,4]  {<Sue, cyclophosphamide, 500>}

Does not imply (mean) that Sue had a (complete) cyclophosphamide administration, e.g., at 2

The administration was exactly from 1 to 3 (and nowhere else)

NO downward inheritance:

([1,3]) ↛(1) ([1,3]) ↛(2) ([1,3]) ↛(3)

interval based semantics vs telic atelic1
INTERVAL-BASED SEMANTICS vs. TELIC\ATELIC

[1,3]  {<Sue, cyclophosphamide, 500>}

[4,4]  {<Sue, cyclophosphamide, 500>}

Does not imply (mean) that Sue had a (complete) cyclophosphamide administration from 1 to 4

She had two distinct administrations!

NO upward inheritance:

([1,3])  ([4,4]) ↛([1,4])

data semantics for temporal databases
(DATA) SEMANTICS FOR TEMPORAL DATABASES

Both ATELIC and TELIC facts EXISTin (our way of looking at) REALITY[Aristotle] …

POINT-BASED semantics is needed for ATELIC facts

INTERVAL-BASED semantics is needed for TELIC facts

Two-sorted data model, where

- Atelic relations have a POINT-BASED semantics

- Telic relations have an INTERVAL-BASED semantics

(independently of the chosen implementation\representation)

P. Terenziani, Proc. TIME’00, pp. 191-199, 2000.

P. Terenziani, R.T. Snodgrass, IEEE TKDE 16(5), pp. 540- 551, 2004.

possible criticism too complex for users
POSSIBLE CRITICISM: TOO COMPLEX FOR USERS !?

Additional complexity (if any) is due to ADDITIONAL EXPRESSIVENESS

Such an additional expressiveness is needed to cope with the human way of looking at the world

“Effective exchange of information

between people and machines

is easier

if the data structures that are used to organize the information in the machine

correspond in a natural way

to the conceptual structures people use to organize the same information”

possible criticism too complex for users1
POSSIBLE CRITICISM: TOO COMPLEX FOR USERS !?

Criteria to distinguish between atelic and telic relations

Do I want upward and downward inheritance

for (facts in) this relation?

NO

YES

TELIC

ATELIC

query semantics algebra
QUERY SEMANTICS(ALGEBRA)
  • Queries must operate on:
  • Atelic relations
  • Telic relations
  • Telic and Atelic relations together
  • From Natural Language:
  • Flexibility is needed (conversion from\to telic\atelic)
atelic algebra
ATELIC ALGEBRA

e.g., BCDM

r1A r2 = {z | (∃xr1∃yr2 x[A]=y[A]=z[A] ∧ z[T]=x[T]  y[T]) 

(∃xr1 x[A]=z[A] ∧ (∃yr2 y[A]=z[A]) ∧ z[T]=x[T]) 

(∃yr2 y[A]=z[A] ∧ (∃xr1 x[A]=z[A]) ∧ z[T]=y[T])}

Union between atelic relations

Standard union between two sets of time points

atelic algebra1
ATELIC ALGEBRA

UNION supports upward inheritance (COALESCING)

A

10  {<Andrea,60K>}

 {<Andrea, 60K>}

12  {<Andrea, 60K>}

13  {<Andrea, 60K>}

10  {<Andrea,60K>}

 {<Andrea, 60K>}

 {<Andrea, 60K>}

 {<Andrea, 60K>}

telic algebra
TELIC ALGEBRA

Terenziani & Snodgrass, TKDE 2004

r1T r2 = {z | (∃xr1∃yr2 x[A]=y[A]=z[A] ∧ z[T]=x[T]  y[T]) 

(∃xr1 x[A]=z[A] ∧ (∃yr2 y[A]=z[A]) ∧ z[T]=x[T]) 

(∃yr2 y[A]=z[A] ∧ (∃xr1 x[A]=z[A]) ∧ z[T]=y[T])}

Union between telic relations

Standard union between two sets of time intervals

E.g., {[10,15], [20,25]}  {[5,30], [20,40]} =

{[5,30],[10,15], [20,25], [20,40]}

telic algebra1
TELIC ALGEBRA

TELIC UNION does not support upward inheritance

T

[4,4]  {<Sue, cycloph, 500>}

[1,3]  {<Sue, cycloph, 500>}

[1,3]  {<Sue, cycloph, 500>}

[4,4]  {<Sue, cycloph, 500>}

telic algebra2
TELIC ALGEBRA

In principle: a polymorphic adaptation of a “consensus” atelic algebra (e.g., BCDM algebra)

where set operators on temporal elements operate on sets of time intervals instead that on sets of time points

However, both commonsense and semantic restrictions might\should be considered in the definition of both atelic and telic operators

atelic telic algebra
ATELIC\TELIC ALGEBRA

Ex.1 TELIC CARTESIAN PRODUCT

Atelic Cartesian Product involves the INTERSECTION of temporal elements (i.e., of sets of time points - semantic level)

Its polymorphic TELIC adaptation would involve the INTERSECTION of sets of time intervals, giving in output only common time intervals

e.g., {[10,15], [20,30]}  {[10,15], [18, 40]} = {[10,15]}

Is such an operation useful \ commonsense \ meaningless for users?

atelic telic algebra1
ATELIC\TELIC ALGEBRA

Ex.2 TEMPORAL SELECTION (e.g., duration)

All existing temporal algebrae are atelic. Indeed, most of them provide temporal selection (e.g., query about duration)

But is duration something that can be evaluated “point-by-point” (snapshot-by-snapshot, i.e., in an atelic context) ?

Indeed, duration regards the duration of minimal intervals covering convex sets of points!

Thus, duration is about TIME INTERVALS, and thus regards the TELIC context.

atelic telic algebra2
ATELIC\TELIC ALGEBRA
  • In a two-sorted domain with both atelic and telic relation, we need
  • A way of asking telic queries (e.g., queries about duration) on atelic data (and viceversa)
  • A way of querying both telic and atelic data in the same query

NOTICE: the flexibility of moving from an atelic to a telic view of data, and viceversa, is provided in all natural languages!

SOLUTION (Terenziani & Snodgrass, TKDE 2004):

CONVERSION OPERATORS

atelic telic algebra conversion operators
ATELIC\TELIC ALGEBRACONVERSION OPERATORS

OPERATORS BETWEEN TIMEs:

to-interval({1,2,3,4,7,8,9,11})  {[1,4],[7,9],[11,11]}

to-point({[1,3],[4,4],[7,10]})  {1,2,3,4,7,8,9,10}

NOTICE:

to-interval(to-point({[1,3],[4,4],[7,10]}))  {[1,3],[4,4],[7,10]}

There is a loss of information when moving from intervals to points!

atelic telic algebra conversion operators1
ATELIC\TELIC ALGEBRACONVERSION OPERATORS

OPERATORS BETWEEN RELATIONSs:

to-telic.

Converts an atelic relation into a telic one, by leaving the non-temporal parts unchanged, and by applying the “to-interval” conversion to the temporal component of tuples

to-atelic.

Converts a telic relation into an atelic one, by leaving the non-temporal parts unchanged, and by applying the “to-point” conversion to the temporal component of tuples

atelic telic algebra examples
ATELIC\TELIC ALGEBRAExamples

10  {<Andrea,60K>}

 {<Andrea,60K>}

 {<Andrea,60K>, <John, 50K>}

13  {<John, 50K>}

Ex.1 “Who had a salary greater than 40K for at least 3 consecutive years, and what was her salary?”

Tduration 3 (to-telic(ASalary>40(EMPA)))

atelic telic algebra examples1
ATELIC\TELIC ALGEBRAExamples

r’=(ASalary>40(EMPA)

10  {<Andrea,60K>}

 {<Andrea,60K>}

 {<Andrea,60K>, <John, 50K>}

13  {<John, 50K>}

r”=(to-telic(r’))

[10 ,12]  {<Andrea,60K>}

[12,13]  {<John, 50K>}

Tduration 3 (r”)

[10 ,12]  {<Andrea,60K>}

atelic telic algebra examples2
ATELIC\TELIC ALGEBRAExamples

Ex.2 “Who had a (complete) drug administration before the time when Andrea earned 50K?”

TName(ADMINTBEFORE (to-telic(Name=Andrea, Salary=50K (EMPA)))

atelic telic algebra examples phone calls ph
ATELIC\TELIC ALGEBRAExamples: Phone calls (PH)

[10,12]  {<John,Mary>}

[12,14]  {<Sue,Ann>}

[13,15]  {<John,Mary>}

[14,16]  {<Eric,Paul>}

[15,16]  {<Sue,Ann>}

“Who made a (complete) phone call while John was calling Mary?”

atelic

telic

telic

TCaller(PHONETDURING

(to-telic(to-atelic(Caller=John, Called=Mary (PHONET)))))

slide59

[10,12]  {<John,Mary>}

[12,14]  {<Sue,Ann>}

[13,15]  {<John,Mary>}

[14,16]  {<Eric,Paul>}

[15,16]  {<Sue,Ann>}

[10,12]  {<John,Mary>}

[12,14]  {<Sue,Ann>}

[13,15]  {<John,Mary>}

[14,16]  {<Eric,Paul>}

[15,16]  {<Sue,Ann>}

PHT

PHT

r= Caller=John, Called=Mary (PHT)

[10,12]  {<John,Mary>}

[13,15]  {<John,Mary>}

r’= to-atelic(r)

10  {<John,Mary>}

11 {<John,Mary>}

12 {<John,Mary>}

13 {<John,Mary>}

14 {<John,Mary>}

15 {<John,Mary>}

[10,12]  {<John,Mary>}

[12,14]  {<Sue,Ann>}

[13,15]  {<John,Mary>}

r”= to-telic(r)

[10,15]  {<John,Mary>}

DURING

possible criticism too complex for users2
POSSIBLE CRITICISM: TOO COMPLEX FOR USERS !?

Additional complexity (if any) is due to ADDITIONAL EXPRESSIVENESS

Such an expressiveness is present in

ALL NATURAL LANGUAGES

“Effective exchange of information

between people and machines

is easier

if the data structures that are used to organize the information in the machine

correspond in a natural way

to the conceptual structures people use to organize the same information”

telic atelic extensions to sql e g tsql2
Telic\Atelic extensions to SQL (e.g., TSQL2)

Terenziani, Snodgrass et al., Artificial Intelligence in Medicine 39(2)

113-126, 2007.

  • if no explicit indication is provided, temporal data are atelic.
  • definition of telic tables: “AS TELIC” clause in the TSQL2
  • CREATE TABLE statement.
  • -by default, the result of queries is an atelic relation;
  • - telic queries: prepend the keyword “TELIC” (i.e., “TELIC SELECT”).
  • - Conversionsfunctions
implementation hint
Implementation (Hint)
  • NOTICE 1: current temporal databases support the ATELIC view
  • NOTICE 2: current non-temporal databases
  • (and current treatment of non-temporal data in temporal databases)
  • support the TELIC view, in that neither upward nor downward
  • inheritance are supported
implementation hint1
Implementation (Hint)
  • Starting from a temporal database, we have
  • The atelic treatment for free
  • The telic treatment by managing telic temporal tables as
  • non-temporal ones
  • Conversions functions must be added
conceptual temporal models
Conceptual Temporal Models

Khatri, Ram, Snodgrass, Terenziani. IEEE TKDE. ISSN:1041-4347. 2012.

Annotation-based temporal model

capturing “what” semantics using a conventional conceptual model;

annotations to differentiate between telic and atelic data semantics

(non-sequenced) temporal constraints as metadata

conceptual temporal models1
Conceptual Temporal Models

Syntax of the annotations.

annotation ::= є | temporal annotation

temporal annotation ::= є | valid time / transaction time

valid time ::= state (g) | event (g) | -

state ::= telic state | atelic state

transaction time ::= T | Transaction | -

telic state ::= Acc | Accomplishment

atelic state ::= S | State | Atelic State

event ::= E | Event

conceptual temporal models2
Conceptual Temporal Models

Semantics of the annotations

conceptual temporal models3
Conceptual Temporal Models

Semantics of the annotations

  • Axiom 1: maximal_period and telic_period
  • Telic periods (i.e., the valid times of VT_ACCOMPLISHMENTs) are well-formed.eS(VT_ACCOMPLISHMENT), pVT_ACCOMPLISHMENT(e, telic_period), begin(e, p) < end(e, p)
  • Maximal temporal periods (i.e., the valid time of VT_STATEs) are well-formed.eS(VT_STATE), pVT_STATE(e, maximal_ period), begin(e, p) < end (e, p)
  • Maximal temporal periods (i.e., the valid time of VT_STATEs) cannot overlap in time. Such a constraint does not hold for telic periods.eS(VT_STATE), p1, p2 VT_STATE(e, maximal_ period),
  • begin(e, p1) < begin(e, p2)  end (e, p1) < begin (e, p2)
conceptual temporal models4
Conceptual Temporal Models

Semantics of the annotations

  • Downward and upward inheritance (apply to VT_STATE)
  • VT_Down
  • e, p1, p2, VT_STATE(e) VT_STATE.hold(e, p1) p2p1VT_STATE.hold(e, p2)
  • VT_Up
  • e, p1, p2, VT_STATE(e) VT_STATE.hold(e, p1) VT_STATE.hold(e, p2) 
  • (MEETS(p1, p2) MEETS-1(p1, p2) OVERLAPS(p1, p2) OVERLAPS-1(p1, p2)
  • FINISHED(p1, p2) FINISHED-1(p1, p2) DURING(p1, p2)
  • DURING-1(p1, p2) STARTS(p1, p2) STARTS-1(p1, p2) EQUALS(p1, p2) ) VT_STATE.hold(e, p1 p2)
conceptual temporal models5
Conceptual Temporal Models

Semantics of composition

Interaction of temporal/non-temporal attribute/relationship

with temporal/non-temporal entity class

conclusions
Conclusions

The telic\atelic dichotomy seems to be an intrinsic part of human way

of dealing with reality (speaking, modeling, …)

Not coping with such a dichotomy leads to modeling errors

in temporal databases

  • New approach to cope with the telic\atelic dichotomy
    • In the data model
    • In the relational algebra
    • In a SQL-like query language
    • In conceptual modeling

Future work (open challenges):

- temporal indeterminacy

- aggregation

- data warehousing

- spatial data