149
causeinconsistenciescanberemoved,savedforlaterresolution,orevenignoredindefi-
nitely.
Requirement8statestheimportanceofclearanddefinitesemanticsforinconsistencyin
thepresenceofasynchronyanddivergence.Palimpsestfullymeetsthisrequirement,pro-
vidingmethodsfortheautomaticresolutionofmanyconsistencyproblems,whichtosome
extentlimitsitsabilitytomeetrequirement7.
Mergerequirement1specifiesthata“reasonable”changemodelisimportant.Theopera-
tionsofinsert,deleteandmoveareverywellknown(closetouniversal).Thedynamiccopy
operationismoreunusual,althoughithasobviousapplicationstoboilerplatetextindocu-
ments,quotationinmessagingsystems,andthelike.Themoreusualstaticcopyoperationis
adequatelymodeledbyinsert.Dynamiccopyhasbeenincludedbecauseofitsusefulnessin
specialsituations,itsclosesimilaritytomove,andforthesakeofcompleteness.
Mergerequirement2isthatuseroperationsshouldbereflectedinthedatamodel.Move
andcopycertainlycorrespondtocommonauthorialactions,andinthatsenserepresenta
goodfittoauser’sintentionsinediting.However,itcouldalsobearguedthatthePalimp-
sestmodeldoesnotinfactrepresentuseractionsdirectly,sincemosteditorsusesomevaria-
tionofthecutandpasteparadigm.APalimpsestmovecorrespondstoacut/pastepair,nota
singleuseraction.Interfaceactionslikedraganddrop,whichdirectlyrepresentamoveop-
eration,arewidelybutnotyetuniversallyavailable.Worse,thedraganddropinterfaceis
frequentlyquiteinconvenientinlargerdocuments,becausesourceanddestinationdonotfit
intoasingleeditorview.Thisisacasewherethebestresultintermsofmergerequiresse-
manticinformation(whethertheuserintendedtomovetext)whichisobscured(thoughnot
renderedinaccessible)bytheinterfacetechnologyincommonuse.
Mergerequirement3statesthatmoveandcopyshouldbedirectlysupported,asaconse-
quenceof1and2.Themodelobviouslymeetsthisrequirement.JustasthePalimpsest
150
modelprovidessemanticsforasynchronouswork,itprovidesabasicmergefacilitywithwell-
definedsemantics,thusmeetingmergerequirement4.
Requirement5isthatchangeinformationshouldbeeasilyaccessibleforanarbitrarypor-
tionofadocument.Thisismetbythepropertiesoftheaddressingfunction,whichenables
thedeterminationofthesetofallchangesaffectingaparticularregion(orcontributingany
datatoitscontents).Thisinformationisalsoavailableforanyversionofthesequence.We
havealsoseenthatitispossibletocomparesub-sequencesofadocumentaseasilyaswhole
documents,thusprovidingfine-graineddiffinformationforarbitraryregionsofasequence.
Requirement6asksthatchangesbecommutative,inthesensethattheynothaveanin-
herentorderwithrespecttoeachother.Strictlyspeaking,thisistrue,sincePalimpsestop-
erationscanbeeitheractiveorinactive,andorderofarrivalisneveranissueincorrectly
interpretingachange.However,asnotedintherequirement,someorderingofmove
changesisunavoidable(eventhoughitisnottemporal).Inthemodel,Palimpsestmoveop-
erationsareorderedrelativetoeachotherbyanarbitrarypriorityfunction.Inpractice,that
functionismosteffectivelyimplementedbyusingtherelativepositionsoftherightend-
pointsofthesourceregionsoftheconflictingmoves.Despitethefactthatthisfunctionis
notatemporalordering,movesdonotcommutewhenoperationalprioritiesareinter-
changed,justastheywouldfailtocommuteinatraditionaltemporalordering.Therequire-
mentfortime-independenceismet,whichenablesthetransportandtimingindependenceof
Palimpsest-basedsystems,buttheattractivenotionoffullyre-combinablechangesisnot
met.
Requirement7isforsimple,quickconflicttests.Whileperformanceisanimplementation
issue,thetypesofinconsistencyinPalimpsestmodelsarefew:thereferencerelationmight
notbeacausalordering,ortheremightbetwochangeswiththesamedestination.Under
therestrictionsposedbychangesactuallybeingcreatedatparticulartimes,acausalorder-
ingfailurecanonlyoccurfortworeasons.Itcouldoccurbecauseofamissingchange,which
Previous Page Next Page