Re: Calendar sharing and synchronization

On Tue, 9 Nov 1999, Dan Connolly wrote:

> Have you seen these web-based calendar apps?
> 
> 	http://calendar.yahoo.com/
> 
> 	http://www.dailydrill.com/
> 
> They're cool, but they're closed-world: I can schedule a dailydrill
> meeting and invite somebody to add it to their calendar, but only
> if they're a dailydrill user. Gee thanks; if I want a closed-world
> solution, Notes and Exchange are much more mature.

Quite. The same goes for various rating, opinion and application services
out there in *.com land. If I'm going to use a remote server-based
application to manage my time, bookmarks, recommendations and so forth, I
want (a) to be able to tweak the server code myself, eg. install locally
(b) have well defined machine-interfaces (XML/RDF views of the data, APIs,
whatever).  

That said, these services aren't closed-world out of malice. They're run
by companies that need viable business models. And a huge proportion of
Web business models are currently based around advertising and eyeballing
of user-oriented HTML pages.  So we can't really blame them for not giving 
machine-oriented views of everything since they've got to pay for their
service somehow. Personally, I neither blame them nor use them...


> And... I can't make links from item descriptions to the rest
> of the web! I can say "I plan to be at XML '99 Dec 5-9" but
> I can't have XML '99 linked to the rest of the details!
> What a waste!
> 
> Plus... I have a bunch of stuff about my schedule on pages in 
> http://www.w3.org/ and I don't want to manually copy the data all over
> the
> place. I just want the computer to pore over my digital world
> and show me consolidated views of the information I've already recorded.
> 
> In the IETF WG on calendaring http://www.imc.org/ietf-calendar/ they've
> developed an elaborate protocol and data model for this stuff. But I
> wonder...
> isn't there a simpler way? Can't I just litter my web and email messages
> with RDF statements, and then do a big graph merge?

Yep. The graph-merge magic 'just works' so long as all datasources have
the same understanding of URI semantics. For example, I've seen examples where
a URL already deployed as a personal home page identifier is overloaded to
represent that person within URI space. Running a robot over a bunch of
disparate RDF (or XML-through-XSL-to-RDF) dumps and pouring the results
into a simple RDF store or logic environment is easy. The hard part is
the social side: figuring out what we mean to identify with various sets
of URIs.  If the URI-owner's intent is not widely understood, we run risk
of the same URI being used to denote different things, making for nonsense
when the RDF data is aggregated for querying. 


> Then I should be able to do fairly straightforward style prolog
> queries like:
> 	what events am I expected to attend tomorrow?
> 	do I have any previous engagements for tomorrow at 2pm?

If there's some free / opensource Web-based calendar apps out there this
would be an interesting thing to prototype. 

> A trickier question is: how about PalmPilot style syncing, i.e. write
> operations? if the displayed schedule is just a view of prior
> communications,
> then it's hard to say what it means to edit it... but in a way, this
> is a good model of the real world: a meeting isn't rescheduled just
> because you flip some bits on your desktop; it's rescheduled when you
> tell the expected participants of the new schedule.

Syncing is much trickier; if you're looking at (and editing) the result of
such a giant graph merge, it is not immediately clear what should happen
with edits. I'm not sure how the Mozilla folks
(http://www.mozilla.org/rdf/doc/) handle this: their API
allows RDF graphs to be aggregated into a single virtual graph, and this
graph (I believe) to have new facts added into it, edits etc. Quite how
the aggregate routes assertions and edits to the datasources it aggregates
over is an interesting question...


> I haven't managed to do much hacking, but I'm trying to develop software
> to sync my pilot with web pages... XHTML web pages, at least; I
> don't really see how to do RDF syncing yet. I converted the
> contents of my pilot datebook ala:
> 
> <h2>Fri, 18 Sep 1998</h2>
> <dl><TimedDayEntry day="1998-09-18"><dt><time>07:15</time>
> <duration>00:15</duration>
> run w/Bo</dt>
> </TimedDayEntry>
> <TimedDayEntry day="1998-09-18"><dt><time>09:00</time>
> <duration>01:00</duration>
> arch weekly</dt>
> </TimedDayEntry>
> <TimedDayEntry day="1998-09-18"><dt><time>10:30</time>
> <duration>01:00</duration>
> Danny, Rolf tour</dt>
> <dd><p>per RDF review 17Sep</p>
> <p></dd>
> </TimedDayEntry>
> ...
> </dl>

Should be really easy to write an XSL sheet that transforms this into RDF,
for your query application. Don't know about merging back changes from
the derrived RDF view -- that would be more like real work.

> It's not RDF, but (1) it displays OK in conventional HTML browsers,
> and (2) it records all the data from the pilot (except the crucial
> record IDs, which weren't included in the tab-separated-values
> dump I got from some .exe program that reads pilot desktop data files
> :-{)

[ There are some linux tools for Palms, though I'm out of touch with
status since I pretty much gave up on mine when I found no way to sink
with my web-based calendar entries... ]

Dan


> 
> Anyway... more thoughts on the subject at:
> 	http://www.w3.org/People/Connolly/drafts/web-research#when

Handy. Would be nice if _everyone's_ public bookmarks/annotations were
online in XML/RDF. That would make for an interesting RDF graph-merge...

Received on Wednesday, 10 November 1999 13:25:30 UTC