The RDF Calendar Task Force
July 25, 2001
This week the XML Deviant reports on a community effort that's producing interesting building blocks for the Semantic Web.
RDF has been experiencing something of a renaissance lately with progress occurring on many fronts. Tools, APIs, and datastore implementations are leading RDF out of academia and into mainstream projects. The RDF Core Working Group is currently chartered to move the activity forward under the umbrella of the W3C Semantic Web efforts. The charter notes that the group will:
- update and maintain the RDF Issue Tracking document
- publish a set of machine-processable test cases corresponding to technical issues addressed by the WG
- provide an update of the errata and status pages for the RDF specifications
- update the RDF Model and Syntax Specification (as one, two or more documents) clarifying the model and fixing issues with syntax
- complete work on RDF Schema 1.0 Specification
- provide an account of the relationship between RDF and the XML family of technologies (particularly Schemas and Infoset/Query)
These targets address many of the issues and concerns raised in previous RDF debates. The reference to "two or more documents" suggests that the previously mooted separation of the description of the Model from the Syntax may still be on the cards.
In the meantime the Working Group continues to receive feedback from the wider community through the RDF Interest Group, a group of RDF developers and researchers that collaborate through the rdf-interest mailing list and an associated IRC channel. Interestingly the IRC channel is monitored by bots that generate logs and harvest links from the ongoing discussion for publication on the Web. Naturally an RDF representation of this data is also available.
One area in which community collaboration has been progressing is through the RDF Calendar task force, which is lead by Libby Miller. The group is exploring ways of describing and manipulating calendar and event schedules using RDF, leveraging some existing work carried out within the IETF. iCalendar has a large installed base; it's used in Outlook Express, Netscape, and Palm hand-held devices, among others. To learn more about IETF's caledaring efforts, read this useful overview.
The XML Deviant spent some time on the #rdfig IRC channel this week chatting to RDF developers about the task force's efforts. In the following IRC extracts "DanCon" is Dan Connolly, "danbri" is Dan Brickley, and "libby" is, of course, Libby Miller. (Note also that some comments have been collated to gather comments from individuals that were separated in the flow of conversation on the channel.)
Interested in the background to the group, the Deviant asked the developers how they would describe the calendaring efforts.
[20:18] <DanCon> ...as I've said, the bane of my existence is doing things I know the computer could do for me. I'm having a great time getting the computer to figure out things about my schedule
[20:18] <DanCon> e.g. I wrote a tool to convert semi-structured plain-text itineraries in the format that our travel agent spits them out into RDF...
[20:19] <DanCon> then I took two such itineraries, as RDF, and wrote some rules expressing constraints that my wife and I had agreed to, and I was able to get the machine to decide that one of the itineraries didn't meet our constraints.
[20:29] <danbri> ...here's why the calendaring work appeals to me: its a very practically grounded (palm pilots; meetings etc) area that shows some of the potential strengths and challenges of the Semantic Web. Specifically, the need for calendar/schedule data to be intermingled with other related information, e.g. RSS for syndication, DC for document metadata, white pages info etc.
[20:30] <danbri> The sorts of things I want to do with calendaring data usually require me to draw on other sources of info at same time; e.g. who else is attending a meeting, what the required reading was.
[20:31] <danbri> iCalendar, vCard, etc. sort of live in little islands; RDF's grand claims tend to be that it builds up some commonality between these islands. www-rdf-calendar is a group trying to find out if we can live up to the rhetoric...
[20:19] <libby> ... I'd charaterise the effort as trying to get an RDF model for event data - specifically things like meetings and conferences - as quickly as we can
[20:19] <libby> at Danc's suggestion we've been trying to make data av[a]ilable in the schema and write demos to test it on real data
It's reasonable to ask whether simply recreating iCalendar using an alternative syntax is worth the work. Libby Miller explored this question in a recent posting to the RDF calendar mailing list. At first glance iCalendar offers the same level of extensibility as RDF and a more mature toolset. However, as Miller noted, the answer is in the additional relationships that RDF can exploit.
One example might be: I'm learning about SMIL; I find the W3C recommendation for SMIL; from this document and other RDF documents on the W3C site and elsewhere I can find meetings at which the document was produced and altered. I can then find out who attended the meetings and more about their connections and affiliations from other RDF databases such as RDFWeb. I can also find other documents that were inputs to the meetings and also other outputs from the meetings such as minutes and photos.
Much of this data is already available on the web. Putting all these types of information, including meetings and other events in an RDF calendar format connects up this information to make my life easier when I start doing research on SMIL. Putting calendar information in RDF is only a part of the project of putting all these different kinds of information in RDF.
The RDF calendar effort is therefore about more than just exploiting a handy test bed for RDF applications. The developers are looking to achieve immediate practical benefits, as Dan Connolly explained:
[20:20] <DanCon> ...I'm aiming at automating my day-to-day decisions and queries. e.g. "I've got yet another invitation for tuesday at 2pm. Do I have any pre-existing obligations?"
[20:21] <DanCon> the reality is: my schedule info is never collected in one place. it's a multi-party (peer to peer) setup.
However Dan Brickley also observed that having a real dataset to explore provides useful experience.
[20:32] <danbri> It's also a good testbed area for the specs: people have long asked how we should deal with XML Schema datatypes in RDF; some of the discussion on xmlschema-dev and the rdf cal list gets (at last) stuck into the detail.
Also in XML-Deviant
The early work of the group has been concentrated in two areas. First, Libby Miller and Michael Arick have been collaborating to producde an RDF Schema for calendar information. It's currently heavily influenced by the iCalendar specification. Second, others have been producing tools that will extract information from existing data sources and make it available as RDF.
Dan Connolly has written palmagent which takes datebook information from a Palm device and makes it available as RDF and HTML. Supplementing this data with other sources such as conference proceedings allows for some very interesting possibilities. In fact Libby Miller has already produced RDF calendar data for the Semantic Web Working Symposium in RDF format and an online demonstration of querying this data.
The group is, then, following an iterative process: define a suggested schema, generate data, write tools, and then feed this experience back into refining the schema. Indications are that a fuller draft may be available over the next few weeks, although Miller noted during the discussion that there is still a large amount of testing to be done.
Indeed the group is also beginning to plan its next round of effort. Miller is seeking input from the group on a draft TODO list, which includes write-ups of the current implementations, modularizing the schema using namespaces, tutorials, and potentially an RSS 1.0 Event module for syndicating event related information. Additional data sources -- conference agendas and flight schedules -- are on the list too.
One of the intriguing aspects to the calendaring work is that there is a steady learning curve involved. Designing a simple calendar and address exchange system is initially a fairly simple task. But as the system grows its becomes clear that not everyone has the same concept of what constitutes an "event". Additional difficulties like determining the location of an event are not as simple as they might seem. How does one associate a plane flight with a location? And in which timezone?
In practice this means that the calendar group is beginning to deal with issues that will need resolving on a larger scale in all Semantic Web efforts. Developers looking to gain some experience with a distinctly practical RDF project could do worse than join the task force. The iterative development approach is a refreshing change to the protracted specification work occurring elsewhere. Coupled with the friendly community atmosphere, this is definitely one of the more interesting areas on the XML landscape.
The Deviant wishes to thank Libby Miller, Dan Brickley, Dan Connolly and other developers on the #rdfig channel for their input to this article.