wultiple g—lend—r ƒupp ort

for gonvention—l h—t—˜—se w—n—gement

ƒystems

I

wi™h—el hF ƒo o

P

‚i™h—rd „F ƒno dgr—ss

„‚ WPEHU

pe˜ru—ry PVD IWWP

e˜str—™t

‡e prop ose — solution to the pro˜lem of supp orting — timeEst—mp —ttri˜ute dom—in in

™onvention—l rel—tion—l d—t—˜—se m—n—gement systemsF sn ™ontr—st to existing prop os—lsD

whi™h —ssume th—t — single interpret—tion of is su™ient for —ll users —nd —ppli™—tionsD

we develop — gener—l solution th—t supp orts multiple interpret—tions of timeF „he m—in

™on™ept underlying this prop os—l is th—t the univers—l —sp e™ts of time —re sep—r—ted from

the user dep endent —sp e™tsD —t ˜ oth the query l—ngu—ge —nd the —r™hite™tur—l levelsF „he

user dep endent —sp e™ts —re en™—psul—ted in ™—lend—rs —nd ™—lendri™ systemsD e—™h of whi™h

—re extendi˜le ˜y lo ™—l site p ersonnelF sn this w—yDthe—v—il—˜le time supp ort ™—n ˜ e

™ustomized to lo ™—l requirementsF ‡e ˜riey des™ri˜ e mo di™—tions to ƒvP th—t supp ort

multiple ™—lend—rs —nd ™—lendri™ systemsF „hese mo di™—tions redu™e the ™omplexityof

the l—ngu—ge while simult—neously in™re—sing its expressive p owerF pin—llyD we des™ri˜ e

— set of to ols th—t —id in the gener—tion of ™—lend—rs —nd ™—lendri™ systemsF „his work

™—n ˜ e viewed —s — limited ˜ut pr—™ti™—l —ppli™—tion of rese—r™h into extensi˜le d—t—˜—se

m—n—gement systemsF

I

hep—rtment of gomputer ƒ™ien™e

niversity of erizon—

„u™sonD e VSUPI

sood™sF—rizon—Fedu

P

hep—rtment of gomputer ƒ™ien™e

niversity of erizon—

„u™sonD e VSUPI rtsd™sF—rizon—Fedu

wultiple g—lend—r ƒupp ort

for gonvention—l h—t—˜—se w—n—gement ƒystems I

gontents

I sntro du™tion I

P €hysi™—l „imeD g—lend—rsD —nd g—lendri™ ƒystems I

PFI €hysi™—l „ime XX XXX XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X I

PFP g—lend—rs X XXX XXX XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X P

PFQ g—lendri™ ƒystems XX XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X Q

PFR ƒumm—ry X XXX XXX XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X R

Q ƒv v—ngu—ge wo di™—ti ons R

QFI h—t— „yp es XXX XXX XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X R

QFP g—lendri™ ƒystem —nd €rop erty ƒele™tion XXX XXX XXX XXX XX XXX XXX X T

QFPFI g—lendri™ ƒystem ƒp e™i™—tion XX XXX XXX XXX XXX XX XXX XXX X T

QFPFP €rop erty ƒp e™i™—tion XX XX XXX XXX XXX XXX XXX XX XXX XXX X U

QFQ fuiltEin pun™tions XX XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X V

QFR erithmeti™ ixpressions XX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X V

QFS gomp—rison ixpressions XX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X V

QFT eggreg—te pun™tions X XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X W

QFU ƒumm—ry X XXX XXX XXX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X W

R ƒystem er™hite™ture W

RFI yverview XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX W

RFP „imeEst—mp eh„ ƒupp ort X XXX XX XXX XXX XXX XXX XXX XX XXX XXX X II

RFQ niform g—lendri™ ƒupp ort XXX XX XXX XXX XXX XXX XXX XX XXX XXX X II

RFR uery €ro ™essing ƒu˜system XX XX XXX XXX XXX XXX XXX XX XXX XXX X IP

RFRFI ƒem—nti™ en—lysis X XXX XX XXX XXX XXX XXX XXX XX XXX XXX X IQ

RFRFP ‚unEtime ƒystem XX XXX XX XXX XXX XXX XXX XXX XX XXX XXX X IQ

RFS g—lendri™ ƒystem h—t— ƒtru™tures X XXX XXX XXX XXX XXX XX XXX XXX X IR

RFT g—lend—rs XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX IR

RFU qener—ting g—lend—rs —nd g—lendri™ ƒystems X XXX XXX XXX XX XXX XXX X IU

RFV er™hite™tur—l smpli™—tions of ixtensi˜ility XXX XXX XXX XXX XX XXX XXX X IW

S ‚el—ted ‡ork IW

T gon™lusions —nd puture ‡ork PI

U e™knowledgements PP

V fi˜liogr—phy PP i

I sntro du™tion

„he v—gunit— workshop on rese—r™h in d—t—˜—se systems identied the need for d—t—˜—se

m—n—gement systems to supp ort time ‘ƒil˜ ers™h—tz et —lF IWWH“F „he workshop rep ort notes

th—t no ™onsensus exists in supp ort of —ny p—rti™ul—r temp or—l mo delY the very n—ture of time

implies dierent interpret—tions dep endin g on the user9s p ersp e™tiveF

sn this p—p erD we prop ose — solution to the pro˜lem of supp orting — timeEst—mp —ttri˜ute

dom—in in ™onvention—l rel—tion—l d—t—˜—se m—n—gement systems @hfwƒsAF yur motiv—tion

is th—t timeD p erh—ps more th—n —ny other d—t— dom—inD is su˜ je™t to userEinterpret—tion|the

hfwƒ must ˜ e ™—p—˜le of —™™ommo d—ting the interpret—tion of time —ppli™—˜l e to — user or —

siteF gonvention—l rel—tion—l d—t—˜—se m—n—gement systems do not —ddress this pro˜lem —t —llY

inste—d they imp ose — single interpret—tion of time —t ˜ oth the query l—ngu—ge —nd —r™hite™tur—l

levelsF ‡e — gener—l solution th—tD in ee™tD intern—tion—lizes the timeEst—mp —ttri˜ute

dom—in provided ˜y — hfwƒF „his work is —lso —ppli™—˜le to time represent—tion in temp or—l

d—t—˜—se m—n—gement systems ‘ƒno dgr—ss 8 ehn IWVT“F

„he fo ™us of this p—p er is on —r™hite™tur—l requirements for time v—lue supp ortD though

we —lso —ddress query l—ngu—ge issuesF ‡e present — summ—ry of mo di™—tions to ƒv ‘welton

IWWH“to supp ort temp or—l d—t—D —nd then develop —n underlyin g system —r™hite™tureF „he m—in

™on™ept underlying the design is the sep—r—tion of the univers—l —sp e™ts of time from those th—t

—re user dep endentF „he supp ort for these —sp e™ts of time is p—rtitioned —t ˜ oth the query

l—ngu—ge —nd the —r™hite™tur—l levelsF „his sep—r—tion —llows ™ustomiz—tion of userEdep ende nt

time —sp e™ts ˜y lo ™—l site p ersonnelF

„he prop os—l employs — limited notion of extensi˜ilityF er™hite™tur—l supp ort is provided

for —ddition —nd mo di™—tion of the d—t—˜—se m—n—gement system ™omp onents th—t imp ose —

p—rti™ul—r interpret—tion on temp or—l v—luesF ‡e prop ose — limitedD ˜ut pr—™ti™—lD —ppli™—tion

of the te™hniques prop osed for extensi˜le d—t—˜—se m—n—gement systems ‘f—tory et —lF IWVVD

g—rey 8 r——s IWWHD g—rey et —lF IWVTD r——s et —lF IWWHD ƒtone˜r—ker et —lF IWWH“F yur

—ppro—™h is rel—ted to th—t of extensi˜le systems supp orting —˜str—™t d—t— typ es @eh„sAF

roweverD we ˜ elieve th—t eh„s —lone —re in—dequ—te for the temp or—l extensions develop ed

hereD —nd we —rgue why in ƒe™tion SF

„he p—p er is org—nized —s followsF ƒe™tion P dis™usses gener—l —˜str—™tions used to deE

s™ri˜ e time —nd its use in so ™ietyD motiv—ting the ˜—si™ d—t— mo del we prop oseF ƒe™tion Q

˜riey des™ri˜ es ƒv ™onstru™ts supp orting the ™on™epts of ƒe™tion PF „he prim—ry fo ™us of

this p—p erD — system —r™hite™ture supp orting the prop osed l—ngu—ge fe—turesD is des™ri˜ ed in

ƒe™tion RF „he n—l two se™tions dis™uss —re—s of rel—ted rese—r™hD summ—rize the ™ontri˜utions

of this p—p erD —nd identify —re—s of future rese—r™hF

P €hysi™—l „imeD g—lend—rsD —nd g—lendri™ ƒystems

„his se™tion des™ri˜ es the ˜—si™ mo del of time we prop oseF ‡e rst ex—mine how time is

represented intern—lly within the hfwƒD —nd then intro du™e the ™on™epts of ™—lend—rs —nd

™—lendri™ systemsF

PFI €hysi™—l „ime

‡e —ssume the ™ontinuous timeEline is qu—ntized into ™hronons of xed dur—tionD —nd the

gr—nul—rity of — time v—lue —t the query l—ngu—ge level is ex—™tly one ™hrononF „he set of I

™hronons form — niteD line—rD —nd tot—llyEordered set of time v—lues with — dened identity

rel—tionF

sn — physi™—l rel—tionD time v—lues —re represented ˜y timeEst—mpsDnumeri™v—lues repreE

senting ™hrononsF yp er—tions on time v—lues —re p erformed ˜y exe™uting —n—logous op er—tions

on timeEst—mps ™orresp onding to those temp or—l v—luesF „he ex—™t sem—nti™s of this intern—l

represent—tion —re des™ri˜ ed elsewhere ‘hyreson 8ƒno dgr—ss IWWP“D ˜ut the det—ils —re not

relev—nt hereF

‡e note th—t timeEst—mpsD while h—ving — pre™ise sem—nti™s tied to physi™—l ™lo ™ksD —re

indep end ent of —n interpret—tion implied ˜y — user p ersp e™tiveF ƒu™h —n interpret—tionD of

whi™h there ™ould ˜ e sever—lD —re provided ˜y ™—lend—rsD whi™h we now des™ri˜ eF

PFP g—lend—rs

e ™—lend—r is — hum—n —˜str—™tion of the physi™—l timeElineF yne ™—lend—r f—mili—r to m—ny

is the qregori—n ™—lend—rD ˜—sed on the rot—tion of the i—rth on its —xis —nd its revolution

—round the ƒunF ƒome western ™ultures h—ve used the qregori—n ™—lend—r sin™e the l—te ITth

™entury to me—sure the p—ss—ge of timeF es —nother ex—mpleD ssl—mi™s gener—lly use — lun—r

™—lend—rD ˜—sed on the —mount of time required for the wo on to rot—te —round the i—rthF

„he qregori—n —nd lun—r ™—lend—rs —re ex—mples of d—ily —nd monthly ™—lend—rsD ˜utD

in gener—lD — ™—lend—r ™—n me—sure time using —ny wellEdened time unitF por ex—mpleD —n

employee time ™—rd ™—n ˜ e reg—rded —s — ™—lend—r whi™h me—sures time in eight in™rements

—nd is only dened for ve d—ys of e—™h weekF ‡e note th—t m—ny dierent ™—lend—rs existD

—nd th—t no ™—lend—r is inherently ’˜ etter4 th—n —notherY the v—lue of — p—rti™ul—r ™—lend—r is

wholly determined ˜y the p opul—tion th—t uses itF „—˜le I lists sever—l ex—mple ™—lend—rsF

hes™ription

g—lend—r

‚evised univers—l ™o ordin—ted time

„gP

gommon western sol—r with

qregori—n

gommon e—stern lun—r

vun—r

‡estern sol—r with ye—rs —nd d—ys

tuli—n

PTH d—y ™y™les

wesoE—meri™—n

‰e—r ™onsists of semesters

e™—demi™

pin—n™i—l ye—r ˜ egins —t xew ‰e—r

gommon pis™—l

pin—n™i—l ye—r st—rts in p—ll

e™—demi™ pis™—l

pin—n™i—l ye—r st—rts in y™to˜ er

peder—l pis™—l

V hour d—ys —nd S d—y

„ime ™—rd

PR hour d—y divided into three shifts of V

QEshift ‡ork h—y

„ime ˜—sed on r—dio—™tive de™—y

g—r˜ onEIR

„ime ˜—sed on geologi™ pro ™esses

qeologi™

„—˜le IX gommon g—lend—rs

‡e emph—size th—t the us—ge of — ™—lend—r dep ends on the ™ultur—lD leg—lD —nd even ˜usiE

ness orient—tion of the userF por ex—mpleD ˜usiness enterprises gener—lly p erform —™™ounting

rel—tive to some s™—l ye—rF roweverD the denition of s™—l ye—r v—ries dep ending on the

enterpriseF niversities m—y h—ve their s™—l ™—lend—r ™oin™ide with the —™—demi™ ye—r in orE

der to simplify —™™ountingF yther institutions use the more ™ommon h—lfEye—rly or qu—rterly

denitions of s™—l ye—rF P

g—lend—rs h—vetwo typ es of ™h—r—™teristi™sD intrinsi™ ™h—r—™teristi™s th—t dene the uniE

vers—l qu—lities of the ™—lend—rD —nd extrinsi™ ™h—r—™teristi™s th—t dene the userEdep ende nt or

v—rying qu—lities of the ™—lend—rF

„he intrinsi™ ™h—r—™teristi™s of — ™—lend—r dene the intrinsi™ sem—nti™s of the ™—lend—r

or ™omp onents th—t dep end dire™tly on su™h sem—nti™sF por ex—mpleD the dur—tion of time

units @eFgFD weekD monthA—nd their interrel—tionships —re intrinsi™ ™omp onents of — ™—lend—rF

pun™tions p erforming ™—lend—r dened ™omput—tions —re —lso intrinsi™F por ex—mpleD in the

qregori—n ™—lend—r one ™ould ™onstru™t — eld extr—™tion fun™tionD n—me ofD th—t returns

the n—me of the month of — given d—teF ƒimil—rlyD — fun™tion h—rvest moon d—te ™ould ˜ e

used to ™ompute the d—te of the h—rvest mo on in — given ye—rF

„he extrinsi™ ™h—r—™teristi™sD termed propertiesD of — ™—lend—r v—ry dep endi ng on the

orient—tion of the userD —s dis™ussed —˜ oveF e typi™—l ™—lend—r prop erty is the l—ngu—ge in

whi™h time v—lues —re expressedF por ex—mpleD in the qregori—n ™—lend—r inglish is used to

express d—tes in the nited ƒt—tesD —nd pren™h is used to express d—tes in pr—n™eF yther

prop erties in™lude the form—t of time ™onst—nts @’t—nu—ry ID IWHH4D —nd ’I t—nu—ry IWHH4

denote the s—me qregori—n d—teD ˜ut in dierent form—tsAD —nd lo ™—l —djustments to time su™h

—s d—ylight s—vings time in the nited ƒt—tesF

€rop ertiesD in ™onjun™tion with ™—lend—rsD —re ™ru™i—l to supp orting intern—tion—l use of

the hfwƒ @™FfF ‘higit—l IWWI“AF ‡e h—ve identied fourteen prop erties th—t —re univers—l

to —ll ™—lend—rs ‘ƒo o et —lF IWWP“F vo ™—l —d—pt—tion of ™—lend—r prop erties is supp orted ˜y

dening rel—tionsD termed property t—˜lesF eny t—˜le used —s — prop erty t—˜le must h—vetwo

—ttri˜utesD property —nd v—lueDwherev—lue denes the n—med propertyF foth the prop erty —nd

v—lue —ttri˜utes must h—ve the ƒv typ e for stringF por ex—mpleD to —™™ommo d—te timezone

™—l™ul—tions one ™ould sp e™ify the lo ™—tion of interest —s — prop ertyF sing supp orting inforE

m—tionD su™h —s timezone displ—™ementsD su˜sequent time ™—l™ul—tions ™—n ˜ e done rel—tive to

this lo ™—tionF e def—ult prop erty t—˜le is provided ˜y the implement—tionF „he prop erties

™ont—ined in the def—ult prop erty t—˜le —re —™tive until overridden ˜y — user dened prop erty

t—˜leF

‡e h—ve exhi˜ited ex—mples of m—ny ™—lend—rsD —nd des™ri˜ ed how — p—rti™ul—r ™—lend—r

™—n v—rying dep ending on its prop ertiesF ‡e emph—size th—t d—t—˜—se m—n—gement systems

—ttempting to supp ort time v—lues must ˜ e ™—p—˜le of supp orting —ny notion of time th—t

is of interest to the user p opul—tionF ‡e —ddress this pro˜lem ˜y —llowing — ™—lend—r to ˜ e

p—r—metrized ˜y its prop erties —nd ˜y supp orting multiple ™—lend—rs within the hfwƒF

PFQ g—lendri™ ƒystems

e ™—lendri™ system denes the set of time v—lues for —n enterpriseY it is the query l—ngu—ge

—˜str—™tion of the physi™—l timeElineF e ™—lendri™ system is dened —s — ™olle™tion of ™—lend—rs

where e—™h ™—lend—r is dened over nonEoverl—pping p erio ds of timeD termed epo™hsF st is

p ossi˜leD —nd likelyD th—t — ™—lendri™ system h—s g—ps in its timeEline th—t —re not ™overed ˜y

—ny ™—lend—rF

pigure I illustr—tes — single ™—lendri™ systemD the ‚ussi—n ™—lendri™ systemF „he gure

shows the physi™—l time line divided into — sequen™e of ep o ™hsF sn the gureD the physi™—l

timeEline is not shown to s™—leF

sn prehistori™ ep o ™hsD the qeologi™ ™—lend—r —nd g—r˜ onEIR d—ting @—nother form of —

™—lend—rA—re used to me—sure timeF v—terD during the ‚om—n empireD the lun—r ™—lend—r

develop ed ˜y the ‚om—n repu˜li™ w—s usedF €op e tuliusD in the Ist gentury fFgFD intro du™ed Q 70,000 B.C. 600 B.C. 100 B.C.1917 A.D. 1929 A.D. 1931 A.D.

Geologic Carbon-14 Roman Julian Gregorian Communist Gregorian

Calendar Calendar Calendar Calendar Calendar Calendar

pigure IX „he ‚ussi—n g—lendri™ ƒystem

— sol—r ™—lend—rD the tuli—n ™—lend—rF „his ™—lend—r w—s in use until the IWIU folshevik

revolution when the qregori—n ™—lend—rD rst intro du™ed ˜y €op e qregory ˆs s s in ISUPD w—s

—doptedF sn IWPWD the ƒoviets intro du™ed — ™ontinuous s™hedule workweek˜—sed on four d—ys

of workfollowed ˜y one d—y of restD in —n —ttempt to ˜re—k tr—dition with the seven d—y weekF

„his new ™—lend—rD the gommunist ™—lend—rD h—d the f—iling th—t only eighty p er™ent of the

workfor™e w—s —™tive on —ny d—y D —nd w—s —˜—ndoned —fter only two ye—rs in f—vor of the

qregori—n ™—lend—rD whi™h is still in use to d—yF

PFR ƒumm—ry

g—lend—rs —nd ™—lendri™ system dene time —t the query l—ngu—ge levelF wultiple ™—lend—rs —nd

™—lendri™ systems —llow supp ort for m—ny dierent notions of timeF sn ™onjun™tion with ™—lenE

d—r prop ertiesD they provide —n imp ort—nt step tow—rd gener—liz—tion —nd intern—tion—liz—tion

of this limited ˜ut imp ort—nt ™omp onent of the hfwƒF

Q ƒv v—ngu—ge wo di™—tions

„his se™tion des™ri˜ es ™—lend—r indep enden t l—ngu—ge mo di™—tions to ƒvF ‡e —dd d—t—

typ es —nd op er—tions to ƒv th—t do not dep end on the sem—nti™s of — p—rti™ul—r ™—lend—rF sn

—dditionD we des™ri˜ e l—ngu—ge ™onstru™ts for ™—lendri™ system —nd prop erty t—˜le sp e™i™—tionF

„he present—tion is — signi™—ntly —˜ridged des™ription of the query l—ngu—ge mo di™—tions

we prop ose elsewhere ‘ƒo o 8 ƒno dgr—ss IWWI“F

„he sp e™i™ l—ngu—ge ˜ eing mo died is ƒvPD the most re™ent st—nd—rdiz—tion of the

ƒv l—ngu—geD ™urrently under developmentF ƒvP extended the previous ƒv st—nd—rd with

sever—l new fe—tures in™ludi ng time d—t— typ es ‘welton IWWH“F ‡e elimin —te the temp or—l

extensions prop osed in ƒvP —nd in™orp or—te our ownF @st ™—n ˜ e shown th—t our prop os—l

su˜sumes the temp or—l extensions we repl—™eFA ‡e do not —ssume det—iled knowledge of ƒvPD

only th—t the re—der is f—mili—r with the gener—l ™on™epts of ƒvF sn this p—p erD — referen™e

to ’ƒvP4 me—ns the ƒvP l—ngu—geD while — referen™e to ’ƒv4 implies — generi™ version of

the l—ngu—geF

nless sp e™i™—ll y notedD we use the f—mili—r qregori—n ™—lend—r in ex—mplesD —nd rely

on the re—der9s intuition until the ne™ess—ry l—ngu—ge ™onstru™ts —re denedF

QFI h—t— „yp es

yur desire w—s to develop temp or—l d—t— typ es with ri™h sem—nti™s th—t ™—pture the intuitive

—nd f—mili—r ™on™epts of time whileD —t the s—me timeD minimizin g imp—™t on the l—ngu—ge

—s — wholeF „here —re three imp ort—nt temp or—l notionsD moments in timeD p erio ds in timeD

—nd dur—tions of timeF ‡e dene three new timeEoriented d—t— typ esD eventsD interv—lsD —nd R

sp—ns ™orresp onding to e—™h of these notionsD resp e™tivelyF ix—mple queries involving these

d—t— typ es —re shown in „—˜le PF

ix—mple uery

h—t— „ype

’‡hen w—s id hiredc4

’hid id work for eli™e during IWSTc4

interv—l

’row long w—s id in s™ho olc4

sp—n

„—˜le PX ix—mples of „imeEyriented ueries

en event is —n isol—ted inst—nt in timeY it is s—id to o ™™ur during some ™hronon tFpor

ex—mpleD if the implement—tion xes the gr—nul—rity of — ™hronon —s one se™ondD then —n event

is known to h—pp en during — p—rti™ul—r se™ondD —nd two events whi™h o ™™ur during — single

se™ond —re —ssumed to h—pp en simult—neouslyF

ƒp e™i™—tion of event v—lues is done with — stringElike not—tionF en event ™onst—nt

is synt—™ti™—lly delimited ˜y verti™—l ˜—rs @’|4AF „he string of ™h—r—™ters ™ont—ined within

the ˜—rs is interpreted to ˜ e —n event ™onst—nt dened ˜y — ™—lend—rF es ex—mples of event

™onst—ntsD |widnight he™em˜er QID IWWI| is — v—lid event ™onst—nt in the qregori—n ™—lE

end—rD —nd |ƒunset ‚—m—d—n ID IVUP| is — v—lid event ™onst—nt in the ssl—mi™ ™—lend—rF

gonverselyD |he™em˜er QID IWWI| is not — v—lid event ™onst—nt sin™e it do es not f—ll within —

single ™hrononF

en interv—l ™onst—nt is synt—™ti™—lly delimited ˜y squ—re ˜r—™kets @’‘“4AF „he string

of ™h—r—™ters ™ont—ined within the squ—re ˜r—™kets is interpreted to ˜ e —n interv—l ™onst—ntF

por ex—mpleD ‘IUUT“D ‘tuly IUUT“D ‘tuly RD IUUT“D ‘|xoon tuly QD IUUT|D|xoon tuly

RD IUUT|“ —nd ‘xoon UGQGIUUT to xoon UGRGIUUT“ —re v—lid interv—l ™onst—ntsF

‡e note th—t interv—l ™onst—nts —re not restri™ted to the form ‘st—rting eventD endE

ing event“F sn the previous ex—mplesD the form—t of the interv—l v—lues en™losed within the

squ—re ˜r—™kets v—ries ™onsider—˜lyF ‡e —llow interv—l v—lues to ˜ e —ny —r˜itr—ry string of

™h—r—™tersF „he me—ning of th—t string of ™h—r—™ters is determined ˜y — ™—lend—rF ƒin™e input

—nd output form—ts —re ™—lend—r prop ertiesD the interpret—tion —nd displ—y of —r˜itr—ry strings

—s interv—l ™onst—nts ™—n ˜ e supp ortedF

e sp—n denes — dur—tion of timeD th—t isD — p erio d of time with no sp e™i™ st—rting

or ending ™hrononsF por ex—mpleD the sp—n one is known to h—ve — dur—tion of seven

d—ysD ˜ut one week ™—n refer to —ny ˜lo ™k of seven ™onse™utive d—ysF e sp—n ™—n ˜ e either —

p ositive or neg—tive dur—tion of timeF ƒp—n ™onst—nts —re synt—™ti™—lly delimited ˜y p er™ent

signs @’74AF por ex—mpleD 7I week7D 7P ye—rs7 —nd 7EIW se™onds7 —re v—lid sp—n ™onst—ntsF

„he dur—tion of — sp—n is either ™ontext dep enden t or ™ontext indep en dentF e xedsp—n

represents the s—me dur—tion indep end ent of its us—geF gonverselyD the dur—tion represented

˜y — v—ri—˜le sp—n dep ends on the ™ontext in whi™h it —pp e—rsF por ex—mpleD the ™onst—nt

7epril7 represents — xed sp—n sin™e the month of epril —lw—ys ™ont—ins thirtyEone d—ysF

en ex—mple v—ri—˜le sp—nD in the qregori—n ™—lend—rD is the ™onst—nt 7I month7 whi™h ™—n

represent —nywhere from twentyEeight to thirtyEone d—ysD dep endin g on ™ontextF

†—ri—˜le sp—ns provide ™onvenien™e ˜ut ™—n ™—use sem—nti™ di™ultie s if not ™—refully

designedF gonsider the following expression ‘h—te IWVV“F

|IPXHH €w w—y QID IWWI| C 7I month7

„he result of the expression is —n eventF sfD —s one might exp e™tD the expression ™omputes the S

l—st d—y of tune then the result returned is |IPXHH €w tune QHD IWWI| sin™e tune h—s only

thirty d—ysF roweverD ™onsider this expressionF

@|IPXHH €w w—y QID IWWI| C 7I month7A E 7I month7

essuming th—t the —ddition op er—tion still returns the v—lue |IPXHH €w tune QHD IWWI|D

su˜tr—™ting 7I month7 ™—n return either |IPXHH €w w—y QID IWWI| or |IPXHH €w w—y QHD

IWWI| dep ending on the dur—tion of 7I month7F foth interpret—tions —re v—lidD —nd neither

should ˜ e ex™luded ˜y the hfwƒF

„he me—ning of 7I month7 is sp e™i™ to the ™—lend—r th—t denes itF st is left to the

™—lend—r to sp e™ify the —ppropri—te sem—nti™sF qener—lity —nd us—˜ility —re in™re—sed sin™e the

™—lend—r is free to —s™ri˜ e —ny —ppropri—te me—ningF

‡e note th—t xed sp—ns —nd v—ri—˜le sp—ns —re not dierent d—t— typ esY they p ossess

the ex—™t s—me sem—nti™ prop ertiesF „hey dier only in how their me—nings —re —ssigned —nd

™omputedD —nd these —re ™—lend—r sp e™i™ issuesF

es —n ex—mple of using the temp or—l d—t— typ esD ™onsider —n employment d—t—˜—se ™onE

t—ining p ersonnel inform—tionF ‡e would like to store inform—tion su™h —s the n—me —nd idenE

ti™—tion num˜ er of the employeeD his or her ˜irthd—y —nd —geD —nd the p erio d of th—t p erson9s

employmentF e rel—tion with the s™hem— employee@n—meD idD ˜irthd—yD —geD when employedA

™—n ˜ e used to store the employee re™ordsF „he ƒv st—tement to ™re—te — ˜—se rel—tion with

this s™hem— is shown ˜ elowF

™re—te t—˜le employee @n—me ™h—r—™ter @PHAD id™h—r—™ter @SAD

˜irthd—y eventD —ge sp—nD when employedinterv—lAY

QFP g—lendri™ ƒystem —nd €rop erty ƒele™tion

„his se™tion des™ri˜ es how ™—lendri™ systems —re sele™ted —nd how ™—lend—r prop erties —re

sp e™iedF g—lendri™ systems ™—n ˜ e sp e™ied glo˜—lly or lo ™—lly within — queryF ƒimil—rl yD

prop erty t—˜les ™—n ˜ e sp e™ied —s either session def—ults or for indivi du—l d—t— itemsF

QFPFI g—lendri™ ƒystem ƒp e™i™—tio n

g—lendri™ systems —re sp e™ied ˜y lexi™—l s™op e in — sequen™e of ƒv st—tementsF „he s™op e

of — glo˜—lly de™l—red ™—lendri™ system is —ll st—tements up to ˜ut not in™lud in g the next

glo˜—l de™l—r—tion of — ™—lendri™ systemF qlo˜—l ™—lendri™ systems —re de™l—red ˜y — de™l—re

™—lendri™ system ™omm—ndF gonverselyD for — p—rti™ul—r itemD — lo ™—l de™l—r—tion ™—n ˜ e

used to override the de™l—r—tion —t the glo˜—l s™op eF vo ™—l de™l—r—tions —re m—de using —n —s

™l—useF

pigure P shows —n ex™erpt of —n ƒv mo duleF „his ex—mple illustr—tes —ll of the w—ys in

whi™h ™—lendri™ systems —nd prop erty t—˜les m—y ˜ e sp e™iedY it is not intended to ˜ e re—listi™F

„he russi—n ™—lendri™ system is de™l—red in the glo˜—l s™op eF „he s™op e of this de™l—r—tion

extends to the next glo˜—l de™l—r—tionD n—ming the —meri™—n ™—lendri™ systemF „he russi—n

™—lendri™ system —pplies to the ˜irthd—y —nd —ge —ttri˜utes in the t—rget list of the sele™t

st—tement sin™eD unlike the when employed —ttri˜uteD no ™—lendri™ system is lo ™—lly de™l—red for

these —ttri˜utes vi— —n —s ™l—useF ƒimil—rlyDtherussi—n ™—lendri™ system is used to resolve the

n—me ofD —nd to interpret the ™onst—nts |P tinv—r IWPS| —nd IWUS @’tinv—r4 fun™tion month

is — phoneti™ tr—nsl—tion into the v—tin —lph—˜ et of the ‚ussi—n word for ’t—nu—ry4AD while the T

XXX

de™l—re ™—lendri™ system —s russi—nY

de™l—re x ™ursor for

sele™t n—meD idD ˜irthd—yD

—ge with property t—˜le —D when employed —s —meri™—n

from employee

n—me of@˜irthd—yA a 9tinv—r9 —nd where month

˜irthd—y ` |Ptinv—r IWPS|—nd

—ge b 7TH ye—rs7 —s —meri™—n with property t—˜le ˜

when employed overl—ps ‘IWUS“Y

pro™edure set x properties

sql™ode

set properties with x property t—˜leY

de™l—re ™—lendri™ system —s —meri™—nY

pro™edure open x ™ursor

sql™ode

open xY

XXX

pigure PX ix—mple of g—lendri™ ƒystem —nd €rop erty ƒele™tion

—meri™—n ™—lendri™ system is used to interpret the sp—n 7TH ye—rs7F‡e note th—tD in this

inst—n™eD the fun™tion month n—me of is dened vi— the russi—n ™—lendri™ system —nd returns

‚ussi—n month n—mesF ‡e —ssume th—t the implement—tion denes — glo˜—lly s™op ed def—ult

™—lendri™ system th—t is —pplies if no ™—lendri™ system is glo˜—lly de™l—redF

QFPFP €rop erty ƒp e™i™—ti on

€rop erties m—y ˜ e sp e™ied on ˜ oth — glo˜—l —nd — p erEitem ˜—sisF „he prop erties ™ont—ined

in — prop erty t—˜le —re —™tiv—ted ˜y exe™uting — set properties ™omm—ndF „hose prop erties

rem—in in ee™tD —nd ™—n inuen™ e —ny intervening temp or—l op er—tionsD until expli™itl y de—™E

tiv—ted ˜y —nother set properties ™omm—ndF sn —dditionD — prop erty t—˜le ™—n ˜ e sp e™ied

for — single op er—tionF

„he me™h—nisms for prop erty sele™tion —re dyn—mi™F „his ™ontr—sts with the me™h—nisms

for ™—lendri™ system sele™tion whi™h —re st—ti™F „his distin™tion is ™onsistent with our sp e™iE

™—tion of prop erties —s extension—l|sin™e the extension of — d—t—˜—se ™—n not ˜ e predi™ted

— prioriD the v—lue of — prop erty ™—nnot ˜ e known —t ™ompileEtimeF ƒt—ti™ sp e™i™—tion of

prop erty t—˜les is therefore not p ossi˜leF

sn pigure PD the pro ™edure set x properties ™ont—ins — ™omm—nd th—t —™tiv—tes the

prop erties ™ont—ined in the prop erty t—˜le x property t—˜leF snvo ™—tion of this pro ™edure

™—uses the prop erties ™ont—ined in th—t t—˜le to ˜ e —™tiv—tedF „hese prop erties rem—in —™E

tive until expli™itly overridden ˜y —nother set properties ™omm—ndF por ex—mpleD if —n U

—ppli™—tion progr—m ™—lls the pro ™edure set x properties prior to ™—lling the pro ™edure

open x ™ursorD then the prop erties ™ont—ined in x property t—˜le will override the propE

erties in the def—ult prop erty t—˜le when the ™ursor is op enedF

gonverselyD n—ming — prop erty t—˜le for —n indivi du—l d—t— item limits the —™tiv—tion of

those prop erties to the pro ™essing of th—t d—t— itemF por ex—mpleD —sso ™i—ted with the —ttri˜ute

—ge in the sele™t ™l—use is — prop erty t—˜le property t—˜le —F „he prop erties in this t—˜le

—re —™tiv—ted temp or—rily while timeEst—mps —re ˜ eing ™onverted for the —ge —ttri˜uteF

es mentioned in ƒe™tion PFPD — def—ult t—˜le of prop erty v—lues is provided ˜y the hfwƒF

„he v—lues in the def—ult prop erty t—˜le —re ™ustomized ˜y lo ™—l site p ersonnel —nd —re exp e™ted

to ˜ e —ppropri—te for most situ—tions —t th—t siteF

QFQ fuiltEin pun™tions

st is ™onvenient to h—ve simple me™h—nisms for d—t— ™onversion —nd m—nipul—tionF „o —™™omE

plish these t—sksD we h—ve dened nine ˜uiltEi n fun™tionsF „hese fun™tions —re ™—tegorized —s

either d—t— ™onstru™tors @eFgFD interv—l to ™omp ose —n interv—l from two eventsAD d—t— de™onE

stru™tors @eFgFD ˜egin to return the st—rting event of —n interv—lAD or mis™ell —neous fun™tions

@eFgFD first to return the prior of two eventsAF‡e emph—size th—t these fun™tions —re ™—lend—r

indep end entF eddition—l ™—lend—r sp e™i™ fun™tions m—y ˜ e dened ˜y — ™—lend—rF por ex—mE

pleD — fun™tion to extr—™t the month eld of —n event ™ould ˜ e implemented for the qregori—n

™—lend—rF

QFR erithmeti™ ixpressions

erithmeti™ op er—tions on temp or—l v—lues —re ne™ess—ry in m—ny ™omput—tionsF por ex—mpleD

one m—y wish to determine how m—ny shopping d—ys —re left until ghristm—sD or the —rriv—l

time of — tr—in given its dep—rture time —nd the dur—tion of its tripF

‡e extended the ˜—si™ —rithmeti™ op er—tors @GD CD ED BA for eventsD interv—lsD —nd sp—nsF

yur design go—ls were to m—ximize orthogon—lity whenever p ossi˜le —nd to overlo—d existing

op er—torsD there˜y minimizing the ™omplexity of the l—ngu—geF ixpressions with intuitive

sem—nti™s su™h —s event C sp—n —re —llowed while expressions with unintuitive sem—nti™s su™h

—s interv—l C event —re notF

QFS gomp—rison ixpressions

en imp ort—nt motiv—tion for in™orp or—ting time v—lues into the query l—ngu—ge is to deterE

mine the temp or—l rel—tionships ˜ etween o˜ je™tsF por ex—mpleD for the employee rel—tion of

ƒe™tion QFID one might ˜ e interested in who w—s hired during — p—rti™ul—r ye—rD or given two

employeesD who h—s more ye—rs of servi™eF

„emp or—l ™omp—rison op er—tors —llows one to determine these rel—tionshipsF e set of

su™h op er—tors w—s dened for the eventD interv—lD —nd sp—n d—t— typ esF ‡e mo died the

sem—nti™s of existing time ™omp—rison op er—torsD overl—psD `D aD bD —nd aD —nd —dded three

new ™omp—rison op er—torsD pre™edesD meetsD—nd ™ont—insF „he op er—tor set w—s derived ˜y

ex—mining the ™omp—rison op er—tors of other temp or—l extensions to ƒv ‘eri—v IWVTD fenEvi

IWVPD x—v—the 8 ehmed IWVWD ƒ—rd— IWWH“F st ™—n ˜ e shown th—t our op er—tors su˜sume e—™h

of these prop os—lsD —ndD in f—™tD our op er—tors ™—n express —ny p ossi˜le rel—tionship ˜ etween

—ny of the temp or—l d—t— typ esF pull det—ils —re provided elsewhere ‘ƒo o 8 ƒno dgr—ss IWWI“F V

QFT eggreg—te pun™tions

„here —re six ƒv —ggreg—te fun™tions whi™h op er—te on sets of v—luesF ‡e extended the

sem—nti™s of ve of these fun™tionsD ™ountD sumD —vgD m—xD —nd minD to —™™ommo d—te the

temp or—l d—t— typ esF „he sixth —ggreg—te fun™tion ™ount@BAD whi™h determines the num˜ er

of rows in — t—˜leD is not relev—nt to the dis™ussionF es with —rithmeti™ expressionsD we

identied —ll —ppli™—tions of these fun™tions to the temp or—l typ es whi™h h—ve ™le—r —nd intuitive

sem—nti™sF por ex—mpleD the sum of — set of sp—n v—lues is ™le—rly dened while the sum of —

set of interv—l v—lues is notF

QFU ƒumm—ry

g—lend—r indep en dent ™onstru™ts were —dded to ƒv to supp ort new time d—t— typ esD temE

p or—l ˜uiltEin fun™tionsD temp or—l —rithmeti™ —nd ™omp—risonD —nd —ggreg—te fun™tionsF sn

—dditionD we dened me™h—nisms for ™—lendri™ system —nd prop erty t—˜le sele™tionD in™re—sing

the expressive p ower of the query l—ngu—ge through ™—lend—r sp e™i™ op er—tionsF

snterestinglyD the ™omplexity of the l—ngu—ge h—s —™tu—lly de™re—sed —fter su˜tr—™ting the

previous temp or—l supp ort —nd —dding our temp or—l mo di™—tionsF ƒeventeen keywords de—ling

with qregori—n ™—lend—r ™onstru™ts were deletedD —nd nine keywords for ™—lend—r indep ende nt

™onstru™ts were su˜sequently —ddedF „his simpli ™—tion is prim—rily due to the f—™t th—tD in

ƒvPD ™—lend—r sp e™i™ ™onstru™ts —re implemented —s keywords in the query l—ngu—geD while

we supp ort them through extensions of the query l—ngu—geD in the form of ™—lend—r dened

fun™tionsF sn —dditionD we signi™—ntly in™re—se the expressive p ower of the l—ngu—geD —s ƒvP

only supp orts — single ™—lend—rD the qregori—n ™—lend—rD —nd — single l—ngu—geD inglishF

R ƒystem er™hite™ture

„he l—ngu—ge ™onstru™ts just des™ri˜ ed provide their expressive p ower through extensi˜il ityX

lo ™—l users ™—n dene new ™—lend—rs —nd ™—lendri™ systemsD referen™e them in queriesD —nd

™—n —lso —lter the prop erties of ™—lend—rsF ƒupp orting this extensi˜ili ty requires — more op en

—r™hite™ture th—n th—t employed in ™urrent d—t—˜—se m—n—gement systemsF

sn this se™tionD we des™ri˜ e the —r™hite™tur—l mo di™—tions — ™onvention—l rel—tion—l

d—t—˜—se m—n—gement system needs in order to supp ort the l—ngu—ge ™onstru™ts of the previE

ous se™tionF ‡e dis™uss only the ™omp onents of the d—t—˜—se m—n—gement system whi™h must

˜ e mo died or extended to supp ort our d—t— mo delF issenti—lD ˜ut nonEgerm—neD ™omp onents

su™h —s ™on™urren™y ™ontrolD re™overy m—n—gementD —nd stor—ge —™™ess metho ds —re omittedF

RFI yverview

pigure Q ™ont—ins — di—gr—m showing the m— jor ™omp onents of the systemF i—™h ˜ ox in

the gure represents — ™omp onent of the systemY — solid line —rrow from one ™omp onent to

—nother indi™—tes th—t the former utilizes servi™es provided ˜y the l—tterF h—t— stru™tures @nonE

pro ™edur—l ™omp onentsA —re shown —s ov—lsD —nd — d—shed line —rrow indi™—tes — d—t— stru™ture

™ont—ins — referen™e to —nother ™omp onentF „he gure shows the following ™omp onentsF

 uery pro ™essor|— ™onvention—l query pro ™essing system extended to supp ort the new

temp or—l ™onstru™tsF W Query Processor Uniform Calendric Support (UCS) Calendric system Calendric system Syntax analyzer

Semantic analyzer

Run-time support Calendar Calendar Calendar

Timestamp ADT Support

(TADT)

pigure QX ƒystem er™hite™ture yverview

 niform ™—lendri™ supp ort @ gƒA|—n interf—™e th—t m—n—ges —™™ess to the servi™es proE

vided ˜y ™—lend—rsF i—™h ™—lendri™ system is dened —s — ™olle™tion of d—t— stru™tures

within the gƒF ‡ithin the —r™hite™tureD ™—lendri™ systems h—ve no pro ™edur—l ™omE

p onentY they merely provide — me™h—nism for —™™essing the servi™es exp orted ˜y their

™—lend—rsF

 g—lend—r|— set of routines —nd t—˜les implementing ™—lend—r dep enden t op er—tionsF ‡e

note th—tD —s shown in pigure QD ™—lend—rs ™—n ˜ e sh—red ˜y multiple ™—lendri™ systemsF

 „imeEst—mp eh„ @„eh„A supp ort|— set of routines en™—psul—ting op er—tions on physE

i™—l timeEst—mpsF „he „eh„ implements —ll temp or—l op er—tions th—t do not require

interpret—tion ˜y — ™—lend—rF

sn pigure QD it is re—dily —pp—rent th—t the supp ort for ™—lend—r dep endent op er—tions

is p—rtitioned from the supp ort for ™—lend—r indep en dent op er—tionsF „he gƒ is resp onsi˜le

for exe™utingD ˜y using the —ppropri—te ™—lendri™ systemD —ll ™—lend—r dep endent op er—tionsF

„he „eh„D on the other h—ndD provides ™—lend—r indep enden t op er—tionsD sp e™i™—ll yD ˜uiltEin D

—rithmeti™D ™omp—risonD —nd —ggreg—te op er—tions on timeEst—mpsF

„his distin™tion is the key —sp e™t of our —ppro—™hF ‡e isol—te op er—tions requiring ™—lenE

d—r interpret—tion ˜y en™—psul—ting them within — ™—lend—rD —nd provide ™—lend—r indep ende nt

op er—tions elsewhereF „his —llows the —r™hite™ture to supp ort extensi˜il ity —nd inter™h—ngeE

—˜ility of ™—lendri™ systems —nd ™—lend—rsF

es —n ex—mpleD ™onsider the —rithmeti™ op er—tion of ™omputing the sum of two sp—n

v—luesF †—ri—˜le sp—ns require ™—lend—r interpret—tion while xed sp—ns do notF „hereforeD

the „eh„ exp orts —n op er—tion fs —dd fs whi™h —dds two xed sp—nsD while — ™—lend—r must

provide —n op er—tion for —dding v—ri—˜le sp—ns to xed sp—nsD vs —dd fsD —nd —n op er—tion for

—dd vsF „he gƒ exp orts — generi™ sp—n —ddition —dding v—ri—˜le sp—ns to v—ri—˜le sp—nsD vs

op er—tionD s —dd sF „he query pro ™essor invokes s —dd s whenever — sp—n —ddition op er—tion

is p erformedF s —dd s queries the „eh„ to determine if its p—r—meters —re v—ri—˜le or xed

sp—nsD then ™—lls the —ppropri—te „eh„ or ™—lend—r routineF

ixtensi˜ili ty of ™—lendri™ systems —nd ™—lend—rs is ™entr—l to our —r™hite™tureF ‡e thereE

fore supp ort denition of ™—lendri™ systems —nd ™—lend—rs ˜y lo ™—l site p ersonnelF e ˜—se

version of the hfwƒ will likely in™lud e sever—l ™—lend—rs —nd ™—lendri™ systemsD —nd these

™—lend—rs —nd ™—lendri™ systems will ˜ e —dequ—te for most usersF sn —dditionD we —nti™ip—te — IH

m—rket for ™ustomized ™—lend—rs —nd ™—lendri™ systemsD with third p—rty vendors sp e™i—li zin g

in developing su™h solutionsF

g—lend—r —nd ™—lendri™ system denition will ˜ e p erformed ˜y — d—t—˜—se implementor

@hfsAD — p erson with su™ient knowledge of the intern—l workings of the hfwƒ to implement

™—lend—rEdened fun™tions —nd routines ‘‚i™h—rdson 8 g—rey IWVU“F „he hfs is resp onsi˜le

for supplying the supp orting ™omp onents of ™—lend—rs —nd ™—lendri™ systems —nd gener—ting

the resulting d—t—˜—se m—n—gement systemF „o simplify this t—skD we provide — to olkit th—t

—™™epts ™—lend—r —nd ™—lendri™ system sp e™i™—tions provided ˜y the hfs —nd ™omp oses the

hfwƒ from those sp e™i™—tions —nd preexisting ™omp onentsF e prelimin—ry design of the

gener—tion to olkit is presented in ƒe™tion RFUF

‡e ™ontinue ˜y des™ri˜ing the system ™omp onents shown in pigure Q in more det—ilF ‡e

use p ertinent ex—mplesD su™h —s supp orting v—ri—˜le sp—n op er—tionsD to illustr—te the designF

RFP „imeEst—mp eh„ ƒupp ort

es previously mentionedD the „eh„ is resp onsi˜le for —ll temp or—l op er—tions th—t do not

require ™—lend—r interpret—tionF „his in™ludes —ll op er—tions on eventD interv—lD —nd xed sp—n

v—lues plus —uxili—ry op er—tions for timeEst—mp m—nipul—tionF „he represent—tions of —ll su™h

v—lues —s stored in the d—t—˜—se —re ne™ess—rily ™—lend—r indep end ent ‘hyreson 8 ƒno dgr—ss

IWWP“F yp er—tions involving v—ri—˜le sp—ns require ™—lend—r supp ort —nd —re not implemented

˜y the „eh„F

„he op er—tions ™ont—ined in the „eh„ derive dire™tly from the query l—ngu—ge op er—tions

des™ri˜ ed in ƒe™tions QFQ{QFTF „—˜le Q shows the typ es of op er—tions supp orted ˜y the „eh„

—long with — ™ount of routines for e—™h op er—tion typ eF e det—iled des™ription of e—™h routine

is provided elsewhere ‘ƒo o et —lF IWWP“F

xum˜er of ‚outines

yper—tion

W

fuiltEin op er—tions

II

erithmeti™ op er—tions

IQ

gomp—rison op er—tions

QH

eggreg—te op er—tions

T

euxili—ry op er—tions

„—˜le QX „imeEst—mp eh„ yp er—tions

es shown in pigure QD the op er—tions provided ˜y the „eh„ —re used ˜y the runEtime

supp ort of the query pro ™essorD the gƒD —nd —ny ™—lend—rs dened in the systemF „he query

pro ™essor invokes the „eh„ to exe™ute —ll ˜uiltEinD —rithmeti™D ™omp—risonD —nd —ggreg—te

op er—tions involving nonEsp—n op er—ndsF e ™—lend—r ™—lls the timeEst—mp ™re—tion routines of

the „eh„ while ™omputing — timeEst—mp equiv—lent to — temp or—l ™onst—nt en™ountered in

the inputF „he gƒ invokes the „eh„ to exe™ute xed sp—n op er—tionsD —s we dis™uss ˜ elowF

RFQ niform g—lendri™ ƒupp ort

„he gƒ provides — generi™ interf—™e to —ll ™—lend—r dened servi™esF „—˜le R lists the typ es

of op er—tions p erformed ˜y the gƒF „he gƒ is invoked ˜y the query pro ™essor to —™tiv—te

—nd de—™tiv—te ™—lendri™ systems —nd prop ertiesD ™onvert temp or—l ™onst—nts to timeEst—mpsD

™onvert timeEst—mps to temp or—l ™onst—ntsD resolve ™—lend—r dened fun™tionsD —nd exe™ute —ll II

sp—n op er—tionsF st m—int—ins d—t— stru™tures dening ™—lendri™ systemsD —nd invokes ™—lend—r

op er—tions on ˜ eh—lf of the query pro ™essorF sn gener—lD the gƒ is resp onsi˜le for exe™uting

—ny op er—tion whi™h ™ould p ossi˜ly ˜ e ™—lend—r dep endentF

xum˜er of ‚outines

yper—tion

W

ƒp—n —rithmeti™ op er—tions

Q

ƒp—n ™omp—rison op er—tions

IS

ƒp—n —ggreg—te op er—tions

Q

gonst—nt tr—nsl—tion

Q

„imeEst—mp tr—nsl—tion

I

pun™tion ˜inding

P

g—lendri™ system —™tiv—tion

R

€rop erty —™tiv—tion

„—˜le RX niform g—lendri™ ƒupp ort yp er—tions

ƒp e™i™—ll yD event —nd interv—l ™omput—tions —re ™—lend—r indep en dentF ren™eD op er—E

tions on events —nd interv—lsD on™e tr—nsl—ted into timeEst—mpsD ™—n ˜ e exe™uted dire™tly ˜y the

„eh„F por ex—mpleD event v—luesD iFeFD timeEst—mps in the physi™—l represent—tionD do not reE

quire — ™—lend—r interpret—tionY their timeEst—mps ™ompletely des™ri˜ e their v—luesF „hereforeD

op er—tions on event v—luesD su™h —s event pre™edes interv—lD —re simple timeEst—mp m—nipuE

l—tions th—t ™—n ˜ e p erformed dire™tly ˜y the „eh„F roweverD for op er—tions involving sp—n

v—luesD it is not known if the op er—tion is ™—lend—r indep enden t until the timeEst—mps of the

op er—nds —re ex—minedF †—ri—˜le sp—ns require ™—lend—r supp ort while op er—tions involving

only xed sp—ns do notF „he query pro ™essor is not ™—p—˜le of resolving this sin™eD in the

typ e system of the query l—ngu—geD v—ri—˜le sp—ns —nd xed sp—ns —re the s—me typ eF „hereE

foreD the „eh„ provides — routine is v—ri—˜le sp—n whi™h determines if — sp—n is v—ri—˜le

or xedF „his is ™onsistent with our design of the „eh„ —s —n —˜str—™t d—t— typ e for timeE

st—mpsF „he gƒ ™—lls this routine to determine if —ny op er—nd is v—ri—˜le —ndD if soD invokes

— ™—lend—r to p erform the given op er—tionF ytherwiseD the op er—tion is p—ssed to the „eh„

whi™h p erforms the ™omput—tionF snterestinglyDover twoEthirds of the gƒ routines —re these

simple ’tr—™E™ontrol4 routines rel—ted to v—ri—˜le sp—nsF ‡e will des™ri˜ e in more det—il the

interf—™e ˜ etween the gƒ —nd — ™—lend—r in ƒe™tion RFTF

‡e des™ri˜ e the gƒ op er—tions supp orting ™—lendri™ system sele™tionD prop erty —™tiv—E

tionD ™onst—nt tr—nsl—tionD timeEst—mp tr—nsl—tionD —nd ™—lend—r dened fun™tion ˜indin g in

the next se™tionF

RFR uery €ro ™essing ƒu˜system

sn our limited ™ontextD the query pro ™essing system is resp onsi˜le for invoking the gƒ when

™—lend—r supp ort might p ossi˜ly ˜ e required for — ™ert—in op er—tion —nd for invoking „eh„

routines when exe™uting op er—tions th—t —re ™le—rly ™—lend—r indep enden tF

„he „eh„ solely provides runEtime op er—tions su™h —s temp or—l —rithmeti™Y the gƒ

provides op er—tions th—t supp ort the query pro ™essing system —t ˜ oth ™ompileEtime —nd runE

timeF „he query pro ™essing system invokes the gƒ during sem—nti™ —n—lysis to p erform

™—lendri™ system ˜indin gD —nd typ e ™he™king —nd ˜inding of ™—lend—r dened fun™tionsD su™h

—s month n—me ofF huring query exe™utionD the query pro ™essor invokes the gƒ to tr—nsl—te

temp or—l ™onst—nts into timeEst—mpsD tr—nsl—te timeEst—mps into output stringsD —nd —™tiv—te IP

—nd de—™tiv—te ™—lendri™ systems —nd prop ertiesF ‡e note th—t the synt—x —n—lyzer in the

query pro ™essing system do es not require either gƒ or „eh„ provided servi™esF „he synt—x

—n—lyzer mustD of ™ourseD ˜e —˜le to re™ognize —nd p—rse the l—ngu—ge ™onstru™ts des™ri˜ed in

ƒe™tion QF

‡e ™ontinue ˜y des™ri˜ingD in det—ilD the mo di™—tions to the sem—nti™ —n—lyzer —nd the

runEtime system of the query pro ™essorF

RFRFI ƒem—nti™ en—lysis

ƒem—nti™ —n—lysis is resp onsi˜le for ensuring the sem—nti™ ™orre™tness of the queryD th—t isD

su™h t—sks —s typ e ™he™king —nd ˜inding of n—mes —re p erformed ˜y the sem—nti™ —n—lyzerF

st is prefer—˜le to p erform these t—sks —t ™ompil—tion time sin™e progr—mmer intervention is

norm—lly required when st—ti™ sem—nti™ errors o ™™urF ‡e h—ve —ttempted to m—ximize the

—mount of sem—nti™ ™he™king p ossi˜le —t ™ompileEtimeD though some sem—nti™ ™he™king must

˜e del—yed until runEtime for exi˜ilityF

„he ˜inding of ™—lendri™ systems —nd ™—lend—r dened fun™tions o ™™urs —t ™ompileEtimeF

„his is m—de p ossi˜le ˜y the st—ti™ s™oping of de™l—re ™—lendri™ system ™omm—nds —s

dis™ussed in ƒe™tion QF ‡hen this ™omm—nd is p—rsedD the sem—nti™ —n—lyzer invokes the gƒ

to verify th—t the n—med ™—lendri™ system —™tu—lly existsF sf soD the gƒ re™ords the n—med

™—lendri™ system —s ˜eing the ™urrently —™tive ™—lendri™ systemF v—terD when — ™—lend—r dened

fun™tion su™h —s month n—me of in pigure P is en™ounteredD the sem—nti™ —n—lyzer invokes the

gƒ to ˜ind th—t fun™tion to its implement—tionF „he gƒ veries th—t the fun™tion is dened

vi— the ™urrent ™—lendri™ systemD —nd p erforms typ e ™he™king on the fun™tion9s p—r—metersF

sn pigure PD this dire™ts the gƒ to use the russi—n ™—lendri™ system when resolving the

fun™tion month n—me ofF

yther minor extensions to the sem—nti™ —n—lyzer —re requiredD in™lud in g typ e ev—lu—tion

—nd ™he™king of temp or—l —rithmeti™ —nd ™omp—rison expressions —nd of rel—ted ™onstru™ts

su™h —s pro ™edure p—r—metersF ƒu™h extensions do not require gƒ or „eh„ supp ortF

RFRFP ‚unEtime ƒystem

ƒever—l —sp e™ts of our l—ngu—ge prop os—l ™—nnot ˜e s—tised ˜y ™ompileEtime resolution —ndD

thereforeD require runEtime resolutionF ƒp e™i™—l lyD temp or—l ™onst—nts ™—nnot ˜e ev—lu—ted —t

™ompileEtimeD in ™ontr—st to —rithmeti™ or string ™onst—ntsF „his is ˜e™—use the me—ning of —

temp or—l ™onst—nt su™h —s |I t—nu—ry IWHH| dep ends not only on — ™—lend—rD ˜ut —lso on the

set of —™tive ™—lend—r prop ertiesD whi™h ™—nnot ˜e determined —t ™ompileEtimeF por ex—mpleD

™onsider the de™l—r—tion of ™ursor x in pigure PF et ™ompileEtimeD the sem—nti™ —n—lyzer knows

th—t the russi—n ™—lendri™ system is to ˜e used to ev—lu—te the ™onst—nt ‘IWUS“FroweverD

ƒv sem—nti™s st—te th—t the query is not ev—lu—ted until the ™ursor is op enedD th—t isD until

the pro ™edure open x ™ursor is ™—lledD —ndD in gener—lD it is imp ossi˜le to tell wh—t the —™tive

set of prop erties will ˜e —t th—t timeF sn this ™—seD the sem—nti™ —n—lyzer —sso ™i—tes with

‘IWUS“ the n—me of its ™—lendri™ systemF ‡hen the ™ursor is op ened —t runEtimeD the query

pro ™essor retrieves the n—me of the ™—lendri™ system —nd invokes the gƒ to —™tiv—te itF sf

— prop erty t—˜le were sp e™ied for ‘IWUS“ vi— — with ™l—useD the prop erties in the prop erty

t—˜le would —lso ˜ e —™tiv—tedF „he ™onst—nt is then p—ssed to the gƒ for ev—lu—tionF

‡hile this m—y del—y the dete™tion of errorsD we feel th—t this exi˜il i ty is desir—˜leF

es dis™ussed in ƒe™tion PFQD prop erties —reD ˜y n—tureD extrinsi™ to — ™—lend—r —nd —re most

—ppropri—tely stored extension—lly where they ™—n ˜e m—nipul—ted —nd ™h—ngedF ƒin™e the exE IQ

tension of — rel—tion is only known —t runEtimeD ™ompileEtime ev—lu—tion of temp or—l ™onst—nts

is pre™ludedF

„he runEtime system of the query pro ™essor utilizes servi™es exp orted ˜y ˜ oth the „eh„

—nd the gƒF ‡hen p erforming op er—tions th—t ™ould p ossi˜ly require ™—lend—r supp ortD the

runEtime system invokes gƒ provided routinesD —nd when p erforming op er—tions th—t —re

™le—rly ™—lend—r indep en dentD the runEtime system invokes „eh„ provided routinesF

„his p—rtitioning h—s ˜ een mentioned ˜ eforeD ˜ut we note here th—t the query pro ™essor is

—˜le to determine the ™orre™t mo dule to invoke ˜—sed on typing inform—tion —nd the kind of opE

er—tion ˜ eing p erformedF por ex—mpleD ™—lendri™ system —nd prop erty m—nipul—tion st—tements

su™h —s de™l—re ™—lendri™ systemD set propertiesD —nd the with —nd —s ™l—uses —re supE

p orted ˜y gƒ routinesF purthermoreD op er—tions su™h —s sp—n C sp—n might require ™—lend—r

supp ort dep ending on if either op er—nd is — v—ri—˜le sp—nF ƒu™h op er—tions —re routed to the

gƒ whi™h m—kes the determin—tion —˜ out the typ e of sp—ns ˜ eing —dded then either invokes

the „eh„ if ˜ oth sp—ns —re xed or invokes — ™—lend—r —ny of the sp—ns is v—ri—˜leF gonE

verselyD op er—tions su™h —s event E eventD event pre™edes interv—lD—nd interse™t@interv—lD

interv—lA whi™h do not involve ™—lend—r dep endent op er—nds —re p—ssed dire™tly to the „eh„

for ev—lu—tionF

RFS g—lendri™ ƒystem h—t— ƒtru™tures

es previously mentionedD — ™—lendri™ system is represented ˜y d—t— stru™tures within the

gƒY ™—lendri™ systems ™ont—in no pro ™edur—l ™omp onentsF prom —n —r™hite™tur—l st—ndp ointD

— ™—lendri™ system exists solely to integr—te ™—lend—rs —nd to supply — me™h—nism for —™™essing

the f—™ilities those ™—lend—rs provideF es su™hD st—ti™ d—t— stru™tures identifying ™—lend—rs

—nd the servi™es exp orted ˜y those ™—lend—rs —re —ll th—t is needed to implement — ™—lendri™

systemF

e ™—lendri™ system d—t— stru™ture ™ont—ins three ™omp onentsD the n—me of the ™—lendri™

systemD the set of ™—lend—rs —nd ep o ™hs dened for the ™—lendri™ systemD —nd — list of routinesF

„he list of fun™tions is the union of the set of fun™tions dened ˜y e—™h ™—lend—r n—med in the

™—lendri™ systemF

‡hen — temp or—l ™onst—nt is en™ountered in — queryD the gƒ must sele™t — ™—lend—r of

the ™—lendri™ system to tr—nsl—te the ™onst—nt into — timest—mpF „his is ne™ess—ry sin™e sever—l

™—lend—rs within the s—me ™—lendri™ system m—y ˜ e ™—p—˜le of tr—nsl—ting — given ™onst—ntF

‡e des™ri˜ e — hfsE™ontrolled me™h—nism for ™—lend—r sele™tion elsewhere ‘ƒo o et —lF IWWP“F

RFT g—lend—rs

„he ™—lend—r is the most ™riti™—l ™omp onent of the —r™hite™tureF st represents the lo ™—l —d—pt—E

tion of temp or—l sem—nti™s within the —r™hite™tureD —nd so the m— jority of its ™ontents must ˜ e

provided ˜y the hfsF „hese ™ontents in™lude ™—lend—r unique fun™tionsD routines supp orting

temp or—l ™onst—nt ev—lu—tion —nd timeEst—mp ev—lu—tionD —nd ™—lend—r dep endent —ggreg—teD

—rithmeti™D —nd ™omp—rison op er—tionsF „hese routines ™onstitute the servi™es the ™—lend—r

exp orts to the gƒF

„—˜le S identies the op er—tions th—t must ˜ e progr—mmed —s p—rt of — ™—lend—r impleE

ment—tionF het—iled des™riptions of these routines —re ™ont—ined elsewhere ‘ƒo o et —lF IWWP“F

‡e note th—t most of these op er—tions involvev—ri—˜le sp—nsF sf the ™—lend—r do es not dene

—ny v—ri—˜le sp—nsD then these fun™tions —re not requiredF ynly the rem—ining eight tr—nsl—E

tion routines —re required to dene — ™—lend—rF sf only one v—ri—˜le sp—n is denedD then the IR

v—ri—˜le sp—n routines ™—n ˜ e quite simpleF „his is the ™—se with our initi—l des™ription of the

qregori—n ™—lend—r whi™h h—s — single v—ri—˜le sp—nD monthF ‡hen multiple v—ri—˜le sp—ns

—re denedD then e—™h routine must ™ontend with —llY some must h—ndle the more ™omplex

™om˜in—tions of twov—ri—˜le sp—nsF

xum˜er of ‚outines

yper—tion

Q

gonst—nt tr—nsl—tion

Q

„imeEst—mp tr—nsl—tion

P

euxili—ry tr—nsl—tion op er—tions

PI

†—ri—˜le sp—n —ggreg—te op er—tions

IR

†—ri—˜le sp—n —rithmeti™ op er—tions

V

†—ri—˜le sp—n ™omp—rison op er—tions

I

†—ri—˜le sp—n to xed sp—n ™onversion

c

g—lend—r sp e™i™ fun™tions

„—˜le SX g—lend—r yp er—tions

gonstru™ting ™—lend—r routines m—y ˜ e di™ult for the hfsF gonsequentlyD whenever

p ossi˜le we h—ve identied ™ommon pro ™essing th—t must ˜ e present in —ll ™—lend—rsD —nd shifted

th—t ™o de into the gƒ to minimize the hfs9s progr—mming eortF ƒhifting pro ™essing to the

gƒ is m—de p ossi˜le ˜y using t—˜leEdriven —lgorithmsF g—lend—rs provide t—˜les des™ri˜in g

d—t— form—ts —nd eld v—lues to the gƒY the gƒ uses this inform—tion to interpret input

d—t— or ™onstru™t output d—t—F sn p—rti™ul—rD in ƒe™tion PFP we st—ted th—t prop erties —re

used ˜y ™—lend—rs to —d—pt to lo ™—l requirementsF et the query l—ngu—ge levelD prop erties —re

used to p—r—metrize ™—lend—rsD —nd prop erty v—lues —e™t the result of™—lend—r op er—tionsF

roweverD —t the —r™hite™tur—l levelD our go—l is to simplify the implement—tion of ™—lend—rs —s

mu™h —s p ossi˜leF gonsequentlyD we h—ve moved the interpret—tion —nd —ppli™—tion ofprop erty

v—lues out ofthe ™—lend—r —nd into the gƒF g—lend—rs —re not required to interpret prop erty

v—lues dire™tlyD —nd whenever p ossi˜leD the gƒ preEpro ™esses the d—t— to —pply the ee™ts of

prop erty v—luesF

por ex—mpleD pigure R shows — ow di—gr—m for the pro ™essing th—t o ™™urs when — timeE

st—mp is ™onverted into —n output stringF @„his pro ™essing would o ™™ur when — timeEst—mp is

retrieved in — fet™h st—tement returning temp or—l —ttri˜utesFA „he query pro ™essor invokes the

gƒ to ™onvert the retrieved timeEst—mp into —n output string for —ssignment to — pro ™edure

p—r—meterF foxes in the gure denote —™tions whi™hD in turnD represent gƒ or ™—lend—r ™—llsF

yv—ls represent d—t— items used in or gener—ted ˜y the pro ™essingF wost —™tions present in

the gure —re implemented in the gƒY ™—lend—r routines —re represented ˜y ˜roken outline

˜ oxesD —nd we note th—t there —re only two su™h ˜ oxesF

pigure R is illustr—tive ofhow t—˜leEdriven —lgorithms —re used in the gƒF gonsider the

VE˜yte timeEst—mp TPQRRTVURRHHQPSHHI stored in the when employed —ttri˜ute ofpigure PF

por this timeEst—mpD the —meri™—n ™—lendri™ system is ™onsultedD —nd the timeEst—mp is deE

termined to ˜ e —sso ™i—ted with the gregori—n ™—lend—rF „r—nsl—tion ˜ egins ˜y p erforming

lo ™—l pro ™essing to determine the ™orre™t timezoneF „he gƒ ™he™ks the v—lue ofthe lo™—le

prop erty whi™h n—mes the lo ™—tion ofinterestF sn this ™—seD the lo ™—le is „u™sonDerizon—F„he

lo™—le t—˜le is then queried to determine the timezone in whi™h „u™son is lo ™—tedF „he lo ™—le

t—˜le indi™—tes th—t „u™sonD —nd most ofthe st—te oferizon—D is —lw— ys on wount—in ƒt—nd—rd

„ime @wƒ„AD m—king the ™—lend—r op er—tion determine timezone p—rti™ul—rly simpleF „he

time displ—™ement for wƒ„D whi™h is U hours ˜ ehind qreenwi™h we—n „imeD is retrieved —nd IS Time-stamp Determine calendar Calendar descriptor

Active calendric system descriptor

Active properties Locale table

Extract locale Locale Determine timezone

Displacement Determine displacement Timezone

Apply displacement Active properties Timezone table

Determine format string Select field index table Time-stamp

Format string Field value generation Field index table Array of field values Construct output string Field value table

String

pigure RX „ime †—lue ‚etriev—l

su˜tr—™ted from the origin—l timeEst—mpF

qener—tion of the n—l output string ˜ egins ˜y invoking the gregori—n ™—lend—r to

gener—te the —rr—y of eld v—lues shown ˜ elowF

†—lue

sndex

P

H

H

I

IWUS

P

XXX

XXX

„he —rr—y of eld v—lues is simply —n unp—rsed version of the timeEst—mpF „he ™ontent

of the —rr—y of eld v—lues is des™ri˜ ed ˜y the following eld index t—˜leD whi™h is provided ˜y

the ™—lend—rF

pield x—me

sndex in err—y of pield †—lues

d—y

H

month

I

ye—r

P

XXX

XXX

„he eld index t—˜le —sso ™i—tes indi™es in the —rr—yofeldv—lues with the ™omp onents of

— temp or—l ™onst—ntF „he eld index t—˜le indi™—tes th—t the d—y ™omp onentD PD is found in IT

the zeroth element of the —rr—y of eld v—luesD the month ™omp onentD HD is found in the rst

elementD —nd the the ye—r ™omp onentD IWPSD is found in the se™ond elementF

„he gƒ determines the form—t of the n—l output string ˜y retrieving the output form—t

string from the ™urrent prop erty setF ‡e s™hem—ti™—lly represent the output form—t string —s

followsF

`monthD english month n—mesb `d—yD —r—˜i™ numer—lbD `ye—rD —r—˜i™ numer—lb

t t

„he form—t string lists the elds in the order th—t they —re to —pp e—r in the outputF „he

™omp onent —sso ™i—ted with e—™h eld is either — eld v—lue n—me t—˜le or the n—me of — routine

th—t ™omputes the eld9s stringF pield v—lue n—me t—˜les —nd routines —re ™—lend—r providedF

por ex—mpleD the english month n—mes eld v—lue n—me t—˜le is shown in pigure TF „he gƒ

retrieves the string t—nu—ry sin™e the —rr—y of eld v—lues entry for month is HD —nd t—nu—ry is

™ont—ined in the zeroth entry of the eld v—lue n—me t—˜leF „he gƒ iter—tes over the elds of

the output form—t string —dding one eld to the output string on e—™h iter—tionF „he resulting

stringD 9t—nu—ry PD IWUS9D is returned —s the v—lue of the when employed —ttri˜uteF

t t

pield †—lue x—me

sndex

t—nu—ry

H

pe˜ru—ry

I

XXX

XXX

xovem˜er

IH

he™em˜er

II

„—˜le TX english month n—mes pield †—lue x—me „—˜le

„his ex—mple illustr—tes how mu™h of the the pro ™essing h—s ˜ een moved out of the

™—lend—r —nd into the gƒ —nd „eh„F sn p—rti™ul—rD the ™—lend—r need only provide two

routinesD one for determining the timezone @whi™h is prim—rily t—˜le lo okupA —nd one for

™onverting —n —djusted timeEst—mp into —n —rr—yofeldv—luesF „he gƒ do es the rest of the

work of ™re—ting the —sso ™i—ted stringF winimizi ng e—™h ™—lend—r9s resp onsi˜ili ty is imp ort—nt

sin™e the gƒ —nd „eh„ will ˜ e implemented on™eD ˜y the hfwƒ implementorD where—s the

™—lend—r9s implement—tion will ˜ e the resp onsi˜ili ty of the hfsF

RFU qener—ting g—lend—rs —nd g—lendri™ ƒystems

„o e—se the t—sk of integr—ting new ™—lendri™ systems —nd ™—lend—rs into the hfwƒD we h—ve

designed — to olkit th—t gener—tes ™—lendri™ system d—t— stru™tures —nd some of the ™omp onents

of ™—lend—rs from higherElevel sp e™i™—tionsF

en ex—mple of using the to olkit is shown in pigure SF foxes in the gure represent —™tions

of the to olkit or — sour™e l—ngu—ge tr—nsl—torF yv—ls represent les either re—d or gener—ted

during the pro ™essingF ƒp e™i™—tion —nd input les th—t —re ™re—ted ˜y the hfs —re shown

—s ˜roken line ov—lsF piles ending in F™—l ™ont—in ™—lend—r sp e™i™—tionsF ƒimil—rlyD F™s les

™ont—in ™—lendri™ system sp e™i™—tionsD —nd F™ les ™ont—in g l—ngu—ge progr—msF e ™—lend—r

sp e™i™—tion le ™ont—ins — list of pro ™edure sign—tures supp orted ˜y the ™—lend—rF „he to olkit

veries th—t this list in™ludes —ll required routines —s des™ri˜ ed in ƒe™tion RFTF e ™—lendri™

system sp e™i™—tion ™ont—ins — list of ™—lend—rs —nd ep o ™hs dened for the ™—lendri™ systemF

„he ™—lend—rs —pp e—r in their input order from highest to lowestF pin—llyD g progr—m les

™ont—in the implement—tions of pro ™edures with sign—tures in ™—lend—r sp e™i™—tion lesF IU geologic.cal gregorian.cal russian.cs american.cs

CS generation UCS generation CS generation

russian.c ucs.c american.c

C compiler C compiler C compiler

russian.o ucs.o american.o

geologiccal.c geologiccal.o

gregoriancal.c gregoriancal.o DBMS generation

tadt.o default.prop ucslib.o

Table generation defaultprop.o

Rest of DBMS

DBMS

pigure SX qener—ting —n ix—mple hfwƒ

yur eventu—l go—l is to gener—teD —s mu™h —s p ossi˜leD ™—lend—r F™ les from the de™l—r—E

tive sp e™i™—tions ™ont—ined in F™—l lesD there˜y minimizi ng the hfs9s progr—mming eortF

es previously des™ri˜ edD we h—ve t—ken — step tow—rd this go—l ˜y simplifying the ™—lend—r

routinesF purther enh—n™ements —re dis™ussed in ƒe™tion TF

sn pigure SD — d—t—˜—se m—n—gement system is ˜ eing ™re—ted with two ™—lendri™ systemsD

the russi—n ™—lendri™ system —nd the —meri™—n ™—lendri™ systemF yne ™—lendri™ system must

˜ e de™l—red —s the def—ultF „he gƒ d—t— stru™tures referen™ing these ™—lendri™ systems —re

˜uilt ˜y the to olkitD ™ompiledD —nd stored —s o˜ je™t ™o de in u™sFoF ƒimil—rl yD the intern—l

™—lendri™ system d—t— stru™tures referen™ing ™—lend—rs —nd pro ™edures —re ˜uiltD ™ompiled

—nd stored —s o˜ je™t ™o de in russi—nFo —nd —meri™—nFoFpor e—™h ™—lend—r in the hfwƒD

the required —nd option—l fun™tions for th—t ™—lend—r —re ™re—ted ˜y the hfs in the les

geologi™™—lF™D ™—r˜onEIR™—lF™D XXXD —nd gregori—n™—lF™ —nd then ™ompiledD —nd — def—ult

prop erty t—˜le is ˜uilt ˜y the hfsF v—stlyD we note th—t predened o˜ je™t li˜r—ries —re provided

for the „eh„ —nd the rem—inder ofthe gƒF

„his —r™hite™ture sh—res the ™h—r—™teristi™s ofmost extensi˜le hfwƒsD in th—t ™ert—in

—sp e™ts —re ˜ ound —t hfwƒEgener—tion timeD other —sp e™ts —re ˜ ound —t s™hem—Edenition

timeD —nd still other —sp e™ts —re ˜ ound during query ev—lu—tionF ƒp e™i™—l lyD in our design

™—lend—rs —nd ™—lendri™ systems —re de™l—red when — hfwƒ is gener—tedY the ™—lendri™ system

is ˜ ound —t s™hem— denition time @or more pre™iselyD when —n ƒv mo dule is ™ompiledAD —nd

prop ertiesD su™h —s output form—tD —re ˜ ound —t query ev—lu—tion timeF IV

RFV er™hite™tur—l smpli™—tions of ixtensi˜ility

e wellEknown ™on™ern with extensi˜le hfwƒs is th—t extensions —re errorEprone|they inter—™t

with the ™ore hfwƒD ˜ut —re develop ed sep—r—telyD —nd usu—lly ˜y less exp erien™ed p ersonnelF

„hese errors ™—n —e™t not only the ™orre™tness ofthe extensionD ˜ut the ™orre™tnessD p erforE

m—n™eD —nd se™urity ofthe hfwƒ itselfF sn our ™ontextD the hfs must ˜ e ™on™erned with

prote™ting the hfwƒ from errors intro du™ed ˜y ™—lend—rsF roweverD this prote™tion must ˜ e

˜—l—n™ed with the degree ofexi˜ili ty needed to meet — given site9s requirementsF

„here —re sever—l w—ys th—t — site9s requirements ™—n ˜ e met while still ensuring th—t

™—lend—rs do not —dversely —e™t the hfwƒF w—ny siteEsp e™i™ —d—pt—tions ™—n ˜ e —™™omE

mo d—ted through the m—nipul—tion ofprop ertiesD with little exp osure to se™urity viol—tionsD

—nd little imp—™t on ™orre™tness or p erform—n™eF por gre—ter extensi˜ili tyD the hfs ™—n insist

th—t only vendor supplied ™—lend—rs ˜ e inst—lledD —ssuming the site9s requirements ™—n ˜ e met

through vendor develop ed p—™k—gesF sfthe vendor ™o de is wellEtestedD then it is s—fe—ssumpE

tion th—t the ™—lend—r will not —dversely —e™t the hfwƒF sfthe site9s requirements ™—nnot ˜ e

met ˜y —v—il—˜le p—™k—gesD the —r™hite™ture h—s ˜ een designed to simplify the ™onstru™tion of

™—lend—rs —s mu™h —s p ossi˜leF wu™h ofthe pro ™essing h—s ˜ een mov ed outside ofthe ™—lend—rs

—nd into the gƒ —nd the „eh„D —nd the gener—tion to olkit is designed to minimize the —™tu—l

progr—mming eort required for — ™—lend—rF sf the hfs ™—n ˜ e trusted to write ™orre™t ™o deD

the —r™hite™ture —™™ommo d—tes — high degree ofexi˜ili ty F

e rel—ted issue is how to isol—te ™—lend—rs from the hfwƒ intern—lly within the —r™hite™E

tureF es previously mentionedD the inter—™tion ˜ etween the ™—lend—r —nd other mo dules h—s

˜ een minimized —s mu™h —s p ossi˜leF g—lend—rs invokeonly„eh„ op er—tionsD —nd this is ne™E

ess—ry sin™e the timeEst—mp represent—tion is en™—psul—ted within the „eh„F elsoD whenever

p ossi˜leD p—r—meters p—ssed from the gƒ to — ™—lend—r —nd from — ™—lend—r to the „eh„D —re

p—ssed ˜y v—lue r—ther th—n ˜y referen™e to minimize the ™h—n™e of memory ™ont—min—tionF

v—stlyD the —r™hite™ture —™™ommo d—tes — v—riety ofimplement—tion str—tegies for™—lend—r —dE

dress sp—™esF g—lend—rs ™—n sh—re the hfwƒ9s —ddress sp—™eD or exist in — sep—r—te —ddress

sp—™eD either their own or the user9s —ddress sp—™eF „hese options represent — tr—deo ˜ etween

p erform—n™e —nd risk of ™ont—min—tionF righest p erform—n™e is p ossi˜le in the —ddress sp—™e

ofthe hfwƒD —t the risk of h—ving the le—st isol—tionF „he p erform—n™e dieren™e ˜ etween

the rem—ining two options is negligi˜l eF roweverD we note th—t the ™o de sp—™e required to

dupli™—te ™—lend—rs in individu—l user pro ™esses ™ould ˜ e su˜st—nti—lD —nd f—ilure of — ™—lend—r

™ould ™—use f—ilure of the user pro ™essF v—stlyD if™—lend—rs o ™™upy their ownD sep—r—te —ddress

sp—™esD their servi™es ™—n ™on™eiv—˜ly ˜ e m—de —v—il—˜le systemEwideD —s opp osed to the hfwƒ

ex™lusivelyD thus en™—psul—ting ™—lend—r servi™es for the ™omputing system —s — wholeF

„he —r™hite™ture —™™ommo d—tes — sp e™trum ofstr—tegies for™—lend—r extensi˜il ity F „he

hfs must ˜—l—n™e exi˜il ity —nd p erform—n™e —g—inst the risk of errors when sele™ting or

developing new ™—lend—rs for —n inst—ll—tionF „he —r™hite™ture —ids in this pro ™ess ˜y e—sing

the development ofnew ™—lend—rsD —nd simplifying their inter—™tion with other ™omp onentsF

sfdesiredD — gre—t degree ofexi˜ility is —v —il—˜leF ytherwiseD the design —ttempts to simplify

the extension pro ™ess —s mu™h —s p ossi˜leF

S ‚el—ted ‡ork

ƒever—l rese—r™hers h—ve investig—ted time in d—t—˜—ses from — ™on™eptu—l viewp ointF enderson

develop ed — form—l fr—mework to supp ort ™on™eptu—l time sp—™es using inherit—n™e hier—r™hies IW

‘enderson IWVPD enderson IWVQ“F rer mo del —lso supp orts multiple ™on™eptu—l timesY this work

™—n ˜ e ™onsidered — pr—™ti™—l extension ofthe ™on™epts develop ed ˜y endersonF rowev erD our

work diers in th—t it is designed —s the rst step in — gener—l extension ofƒv to supp ort timeD

—nd —s su™hD forms the ˜—sis for exploring temp or—l sem—nti™s ˜ eyond those of enderson9sF

gliord —nd ‚—o develop ed — fr—mework for des™ri˜ing temp or—l dom—ins using n—ive set

theory —nd —lge˜r— ‘gliord 8 ‚—o IWVU“F „his work —llows — hier—r™hy of™—lend—r indep ende nt

dom—ins to ˜ e ˜uilt —nd temp or—l op er—tors to ˜ e dened ˜ etween o˜ je™ts of— single dom—in

—nd ˜ etween o˜ je™ts ofdierent dom—insF „he fr—mewor kispowerful ˜ut l—™ks the —˜ility to

des™ri˜ e time dom—ins th—t —re in™onsistent with dom—ins ofl—rger unitsF p or ex—mpleD weeks

—re in™onsistent with months sin™e — whole num˜ er ofweeks do not ordin—rily ™orresp ond to

— single monthF yur work removes this limit—tion ˜y m—king the sem—nti™s of—ny ™on™eptu—l

time unit userEden—˜leF „he user is not tied to —ny predened notion oftime or time dom—inF

ellen motiv—ted the interv—l —s — fund—ment—l temp or—l entity ‘ellen IWVQ“F re form—lE

ized the set ofp ossi˜le rel—tionships whi™h ™ould hold ˜ etween tw o interv—ls —nd develop ed

—n inferen™e —lgorithm to m—int—in the set of temp or—l rel—tionships ˜ etween entitiesF ‡e

use ellen9s work on interv—l rel—tionships —s the ˜—sis for dening new temp or—l ™omp—rison

op er—tors in ƒvF

yther time extensions to ƒv h—ve ˜ een prop osedF h—te prop osed —ugmenting ƒv with

d—te —nd time d—t— typ es ‘h—te IWVV“F re extended ƒv with f—™ilities to supp ort — single

™—lend—rD the qregori—n ™—lend—rF elso in™luded were synt—x —nd sem—nti™s for —rithmeti™

—nd ˜ o ole—n expressions involving timeF e single unied d—t— typ eD the interv—lD w—s dened

—nd used to represent ˜ oth dur—tions oftime —nd events in timeF „his uni™—tion —llows

— high degree oforthogon—lity in temp or—l expressions ˜ut ™—uses sem—nti™ di™ulties sin™e

the distin™tion ˜ etween event —nd dur—tion o˜ je™ts is ˜lurredF elsoD the sp e™i—liz—tion ofthe

solution to — single ™—lend—r limits its gener—lityF

w—ny other rese—r™hers h—ve develop ed sophisti™—ted timeEoriented d—t— mo dels —nd exE

tended ƒv to supp ort these d—t— mo dels ‘eri—v IWVTD fenEvi IWVPD x—v—the 8 ehmed IWVWD

ƒ—rd— IWWH“F qener—llyD this line ofrese—r™h h—s ignored the issue of temp or—l ™onst—nts or

h—s —ssumed the use of— single ™—lend—r systemF eddition—l p—p ers ™on™erning temp or—l d—t—

mo dels —nd query l—ngu—ges other th—n ƒv ™—n ˜ e found in the ™olle™ted ˜i˜li ogr—phies on

time in d—t—˜—ses ‘folour et —lF IWVPD w™uenzie IWVTD ƒo o IWWID ƒt—m 8 ƒno dgr—ss IWVV“F

sn the ™ommer™i—l —ren—D —s previously mentionedD sever—l systems with supp ort for temE

p or—l d—t— typ es exist ‘yr—™le IWVUD „—ndem IWVQ“F „hese implement—tions —re limited in

s™op e —nd —reD in gener—lD unsystem—ti™ in their designF h—te provides — thorough ™ritique of

one ofthe systemsD hfP ‘h—te 8 ‡hite IWWHD h—te IWVV“F

„he extensi˜ili ty of™—lend—rs —nd ™—lendri™ systems is — limited formofd—t—˜—se extenE

si˜ili ty ‘g—rey 8 r——s IWWH“F yur prop os—l supp orts query l—ngu—ge extensi˜ility in the form

of™—lend—r fun™tionsD —nd present—tion extensi˜ility in the form of time displ—y ™ustomiz—tionF

‡e note th—t the temp or—l typ es utilized in the query l—ngu—ge —re not extensi˜leD though the

dom—in ofsp—ns ™—n ˜ e enl—rged with v —ri—˜le sp—ns dened through — ™—lend—rF

ƒever—l extensi˜le prototyp es oer the ™—p—˜ility to ™onstru™t —˜str—™t d—t— typ es @eh„sA

‘ƒtone˜r—ker et —lF IWWH“D —nd it is re—son—˜le to —sk whether time ™—n ˜ e —dequ—tely supp orted

—s —n eh„F ‡e feel th—t it ™—nnotF „ime is — fund—ment—l d—t— typ e|m—ny hfwƒs provide

it —nd most —ppli™—tions use itF sndeedD the ƒvP prop os—l ‘welton IWWH“D in —ddition to the

ƒv v—ri—nt supplied with sfw9s hfP ‘h—te 8 ‡hite IWWH“D ˜ oth provide sp e™i—l supp ort for

timeF es su™h it is —ppropri—te for temp or—l d—t— to ˜ e supp orted ˜y the hfwƒ dire™tly r—ther

th—n supp orted ˜y — lo ™—l extensionF purthermoreD ™—lend—r sele™tion would ˜ e —wkw—rd to PH

sp e™ify in — query if —dded —s — d—t—˜—se extension r—ther th—n providing ˜—se query l—ngu—ge

™onstru™ts to the userF sn p—rti™ul—rD ™ompileEtime ™he™king of ™—lend—r fun™tionsD whi™h is

p ossi˜le using st—ti™ s™opingD would ˜ e pre™luded if time were supp orted stri™tly —s —n eh„F

T gon™lusions —nd puture ‡ork

‡e h—ve prop osed —n extension to ƒv —nd — system —r™hite™ture —ddressing the pro˜lem

of time v—lue represent—tion in — ™onvention—l rel—tion—l d—t—˜—se m—n—gement systemF „he

™ontri˜utions of this p—p er ™—n ˜ e summ—rized —s followsF

 ‡e —rgued th—t m—ny dierent ™—lend—rs —re in useD due to the ™ultur—lD linguisti™D leg—lD

—nd ˜usiness ™on™erns of usersD —nd we showed how supp orting multiple ™—lend—rs —nd

p—r—metriz—tion of ™—lend—rs ˜y prop erties ™—n —ddress these needsF

 ‡e intro du™ed the novel ™on™epts of sp—nsD ™—lendri™ systemsD ™—lend—rsD —nd ™—lend—r

prop ertiesF

 ‡e extended ƒvP to supp ort multiple ™—lend—rs —nd ™—lendri™ systemsD —ndD in the

pro ™essD redu™ed the ™omplexity of the l—ngu—ge while in™re—sing its expressive p owerF

 ‡e prop osed —n —r™hite™ture th—t p ermits the d—t—˜—se implementor @hfsA —t — lo ™—l site

to dene new ™—lend—rs —nd ™—lendri™ systemsD —nd —llows the d—t—˜—se —dministr—tor

—nd users to p—r—metrize those ™—lend—rsD providing limited extensi˜il ity of this simple

˜ut imp ort—nt ™omp onent of the hfwƒF

 yur —r™hite™ture moves most of the pro ™essing of time into two mo dulesD the temp or—l

—˜str—™t d—t— typ e mo duleD —nd the uniform ™—lendri™ supp ort mo duleD —nd out of the

hfsEsupplied ™—lend—r mo dulesD there˜y sep—r—ting the univers—l —sp e™ts of time from

the user dep endent —sp e™tsF

„he key —sp e™t of the prop os—l is th—t the hfwƒ supp ort needed for the user dep endent

—sp e™ts of time is p—rtitioned from the supp ort for the univers—l —sp e™ts of timeD —nd this

p—rtitioning is present —t ˜ oth the query l—ngu—ge —nd system —r™hite™ture levelsF

‡e —re ™urrently implementing — prototyp e d—t—˜—se m—n—gement system using the —rE

™hite™ture des™ri˜ ed in this p—p erF „his in™ludes prototyping sever—l ™—lend—rs —nd ™—lendri™

systems —nd the gener—tion to ols des™ri˜ ed in ƒe™tion RFUF e det—iled design des™ri˜ing the

interf—™es ˜ etween —ll mo dules in the —r™hite™ture ™—n ˜ e found elsewhere ‘ƒo o et —lF IWWP“F

‡e pl—n sever—l enh—n™ements —nd —dditions to the ™urrent prop os—lF ‡e hop e to further

—utom—te the pro du™tion of ™—lend—rs ˜y dening sm—ll de™l—r—tive l—ngu—ges for most —sp e™ts

of ™—lend—rsD —llowing the ™—lend—r sp e™i™ routines to ˜ e gener—ted without the hfs ˜ eing

required to write the g routines in most ™—sesF yur ™urrent design for the gener—tion to ols

—ssumes th—t input is xedEform—tD th—t isD th—t temp or—l ™onst—nts h—ve — stru™ture th—t is

known — priori ˜y the systemF ‡hile existing hfwƒs —lso m—ke this —ssumptionD we feel it

is overly restri™tiveF pin—llyD we would like to investig—te str—tegies for integr—ting histori™—l

indetermin—™y ‘hyreson 8 ƒno dgr—ss IWWI“ into the —r™hite™tureF PI

U e™knowledgements

gurtis hyresonD ƒu™hen rsuD —nd ghristi—n ƒF tensen m—de ™omments on e—rly dr—fts of this

p—p er th—t gre—tly improved the present—tionF gurtis hyreson —nd ƒu™hen rsu —lso m—de

signi™—nt ™ontri˜utions to the —r™hite™tur—l designF

ƒupp ort for this rese—r™h w—s provided in p—rt ˜y the x—tion—l ƒ™ien™e pound—tion

through gr—nt s‚sEVWHPUHU —nd ˜y the sfw gorp or—tion through ™ontr—™t 5IIPRF

V fi˜liogr—phy

‘ellen IWVQ“ ellenD tFpF ’w—int—ining unowledge —˜ out „emp or—l snterv—lsF4 gommuni™—tions

of the esso™i—tion of gomputing w—™hineryD PTD xoF IID xovF IWVQD ppF VQP{VRQF

‘enderson IWVP“ endersonD „FvF ’wo deling „ime —t the gon™eptu—l vevelD4 in €ro™eedings of

the sntern—tion—l gonferen™e on h—t—˜—sesX smproving s—˜ility —nd ‚esponsivenessF

idF €F ƒ™heuerm—nnF terus—lemD ssr—elX e™—demi™ €ressD tune IWVPD ppF PUQ{PWUF

‘enderson IWVQ“ endersonD „FvF ’wo deling ivents —nd €ro ™esses —t the gon™eptu—l vevelD4

in €ro™eedings of the ƒe™ond sntern—tion—l gonferen™e on h—t—˜—sesF idF ƒFwF heen

—nd €F r—mmersleyF „he fritish gomputer ƒo ™ietyF g—m˜ridgeD qre—t frit—inX ‡iley

reyden vtdFD IWVQF

‘eri—v IWVT“ eri—vD qF ’e „emp or—lly yriented h—t— wo delF4 egw „r—ns—™tions on h—t—˜—se

ƒystemsD IID xoF RD he™F IWVTD ppF RWW{SPUF

‘f—tory et —lF IWVV“ f—toryD hFD tF f—rnettD tF q—rz—D uF ƒmithD uF „sukud—D fF „wi™hell —nd „F

‡iseF ’qixiƒsƒX en ixtensi˜le h—t—˜—se w—n—gement ƒystemF4 siii „r—ns—™tions

on ƒoftw—reingineeringD IRD xoF IID xovF IWVVD ppF IUII{IUQHF

‘fenEvi IWVP“ fenEviD tF ’„he „ime ‚el—tion—l wo delF4 €hhF hissert—tionF gomputer

ƒ™ien™e hep—rtmentD gveD IWVPF

‘folour et —lF IWVP“ folourD eFD „FvF endersonD vFtF hekeyser —nd rFuF„F ‡ongF ’„he ‚ole

of „ime in snform—tion €ro ™essingX e ƒurveyF4 ƒigert xewsletterD VHD eprF IWVPD ppF

PV{RVF

‘g—rey 8 r——s IWWH“ g—reyD wF —nd vF r——sF ’ixtensi˜le h—t—˜—se w—n—gement ƒystemsF4

egw ƒsqwyh ‚e ™ordD IWD xoF RD he™F IWWHD ppF SR{THF

‘g—rey et —lF IWVT“ g—reyD wFtFD hFtF he‡ittD tFiF ‚i™h—rdson —nd iFtF ƒhekit—F ’y˜ je™t

—nd pile w—n—gement in the iˆyh ƒ ixtensi˜le h—t—˜—se ƒystemD4 in IWVT †vhf

gonferen™eF †vhfF uyotoD t—p—nX eugF IWVTD ppF I{PUF

‘gliord 8 ‚—o IWVU“ gliordD tF —nd eF ‚—oF ’e ƒimpleD qener—l ƒtru™ture for „emp or—l hoE

m—insD4 in €ro™eedings of the gonferen™eon„empor—l espe™ts in snform—tion ƒystemsF

epgi„F pr—n™eX w—y IWVUD ppF PQ{QHF PP

‘higit—l IWWI“ hig ’higit—l quide to heveloping sntern—tion—l ƒoftw—reF4 higit—l €ressD IWWIF

‘h—te 8‡hite IWWH“ h—teD gF tF —nd gF tF ‡hiteF ’e quide to hfPF4 ‚e—dingD weX eddisonE

‡esleyD IWWHF †olF ID Qrd editionF

‘h—te IWVV“ h—teD gFtF ’e €rop os—l for edding h—te —nd „ime ƒupp ort to ƒvF4 ƒsqwyh

‚e™ordD IUD xoF PD tune IWVVD ppF SQ{UTF

‘hyreson 8ƒno dgr—ss IWWI“ hyresonD gF iF —nd ‚F „F ƒno dgr—ssF ’„ emp or—l sndetermin—™yF4

„e™hni™—l ‚ep ort „‚ WIEQHF gomputer ƒ™ien™e hep—rtmentD niversity of erizon—F

he™F IWWID QI p—gesF

‘hyreson 8ƒno dgr—ss IWWP“ hyresonD gF iF —nd ‚F „F ƒno dgr—ssF ’„imest—mp ƒem—nti™s

—nd ‚epresent—tionF4 „empsƒ „‚ QQF gomputer ƒ™ien™e hep—rtmentD niversity of

erizon—F pe˜F IWWPD PU p—gesF

‘pr—ser IWVU“ pr—serD tF ’„ime the p—mili—r ƒtr—ngerF4 ‚edmondD ‡eX „empus fo oksD IWVUF

‘r——s et —lF IWWH“ r——sD vFD gh—ngD ‡FD vohm—nD qFD w™€hersonD wFD ‡ilmsD €FD v—pisD qFD

vinds—yD fFD €ir—heshD rFD g—reyD wFD —nd iF ƒhekit—F ’ƒt—r˜urst widEplightX es „he

hust gle—rsF4 siii „r—ns—™tions on unow ledge —nd h—t— ingineeringD PD xoF ID w—rF

IWWHD ppF IRQ{ITHF

‘w™uenzie IWVT“ w™uenzieD iF ’fi˜liogr—phyX „emp or—l h—t—˜—sesF4 egw ƒsqwyh ‚e™ordD

ISD xoF RD he™F IWVTD ppF RH{SPF

‘welton IWWH“ weltonD tF @edFA ’ƒoli™it—tion of gommentsX h—t—˜—se v—ngu—ge ƒvPF4 emerE

i™—n x—tion—l ƒt—nd—rds snstituteD ‡—shingtonD hgD IWWHF

‘x—v—the 8ehmed IWVW“ x—v —theD ƒF fF —nd ‚F ehmedF ’e „emp or—l ‚el—tion—l wo del —nd

— uery v—ngu—geF4 snform—tion ƒ™ien™esD RW @IWVWAD ppF IRU{IUSF

‘yr—™le IWVU“ yr—™le gomputerD sn™F ’y‚egvi „ermin—l ser9s quideF4 yr—™le gorp or—tionD

IWVUF

‘‚i™h—rdson 8g—rey IWVU“ ‚i™h—rdsonD tFiF —nd wFtF g—rey F ’€rogr—mming gonstru™ts for

h—t—˜—se ƒystem smplement—tion in iˆyh ƒD4 in €ro™eedings of the egw ƒsqwyh

ennu—l gonferen™eF idF F h—y—l —nd sF „r—igerF esso ™i—tion for gomputing w—™hinE

eryFƒ—npr—n™is™oD geX egw €ressD w—y IWVUD ppF PHV{PIWF

‘ƒ—rd— IWWH“ ƒ—rd—D xF ’ixtensions to ƒv for ristori™—l h—t—˜—sesF4 siii „r—ns—™tions on

unow ledge —nd h—t— ingine eringD PD xoF PD tune IWWHD ppF PPH{PQHF

‘ƒil˜ ers™h—tz et —lF IWWH“ ƒil˜ ers™h—tzD eFD wF ƒtone˜r—ker —nd tF llm—nF ’h—t—˜—se ƒystemsX

e™hievements —nd ypp ortunitiesF4 egw ƒsqwyh ‚e™ordD IWD xoF RD he™F IWWHD ppF

T{PPF PQ

‘ƒno dgr—ss 8 ehn IWVT“ ƒno dgr—ssD ‚F —nd sF ehnF ’„emp or—l h—t—˜—sesF4 siii gomputerD

IWD xoF WD ƒepF IWVTD ppF QS{RPF

‘ƒno dgr—ss IWWH“ ƒno dgr—ssD ‚F ’„emp or—l h—t—˜—sesX ƒt—tus —nd ‚ese—r™h hire™tionsF4 egw

ƒsqwyh ‚e™ordD IWD xoF RD he™F IWWHD ppF VQ{VWF

‘ƒo o 8 ƒno dgr—ss IWWI“ ƒo oD wF —nd ‚F ƒno dgr—ssF ’wixed g—lend—r uery v—ngu—ge ƒupp ort

for „emp or—l gonst—ntsF4 „empsƒ „e™hni™—l ‚ep ort PWF gomputer ƒ™ien™e hep—rtE

mentD niversity of erizon—F y™tF IWWID SS p—gesF

‘ƒo o et —lF IWWP“ ƒo oD wFD ‚F ƒno dgr—ssD gF hyreson —nd ƒF rsuF ’e h—t—˜—se w—n—gement

ƒystem er™hite™ture ƒupp orting wultiple g—lend—rsF4 „empsƒ „‚ QPF gomputer

ƒ™ien™e hep—rtmentD niversity of erizon—F pe˜F IWWPD QH p—gesF

‘ƒo o IWWI“ ƒo oD wF hF ’fi˜liogr—phy on „emp or—l h—t—˜—sesF4 egw ƒsqwyh ‚e™ordDPHD

xoF ID w—rF IWWID ppF IR{PQF

‘ƒt—m 8 ƒno dgr—ss IWVV“ ƒt—mD ‚F —nd ‚F ƒno dgr—ssF ’e fi˜li ogr—phy on „emp or—l h—t—˜—sesF4

h—t—˜—se ingineeringD UD xoF RD he™F IWVVD ppF PQI{PQWF

‘ƒtone˜r—ker et —lF IWWH“ ƒtone˜r—kerD wFD vF ‚owe —nd wF riroh—m—F ’„he smplement—tion

of €yƒ„q‚iƒF4 siii „r—ns—™tions on unow ledge —nd h—t— ingineeringD PD xoF ID

w—rF IWWHD ppF IPS{IRPF

‘„—ndem IWVQ“ „—ndem gomputersD sn™F ’ixpy‚w ‚eferen™e w—nu—lF4 gup ertinoD geD

IWVQF PR