- From: Libby Miller <Libby.Miller@bristol.ac.uk>
- Date: Tue, 7 Jan 2003 17:59:57 +0000 (GMT)
- To: www-rdf-calendar@w3.org
Dan Connolly suggested I sent some information to the list about the calendar stuff I've been doing. Basically, my aim was to try and get something up and running which showed that it would be useful to make semantic content about conferences available - dates especially. This was triggered by my colleague Martin Poulter's attempts to persuade LTSN centres [1] of the benefits of using the RSS 1.0 syndication format and its event modules. I think we sort of showed that semantic information can be useful. Sort of, because in fact the merging of data that I did could have been done with iCalendar files, for example. Anyway, below is some info about the experiments we did. A slightly more technical writeup is available here [2]. SWAD-Europe [3] is an EC funded project to support W3C's SWAD [4] work in Europe. One of our aims is to use the technology we are promoting, and for this reason we have been trying to keep our information in RDF where possible. For maintainability, we have been storing our meetings information [5] as a profile of XHTML which can then be transformed to RSS 1.0's proposed events module [6] using XSLT. This makes the same information processible by both humans and RDF parsers. This is based on work by many people.[7] RSS's events module bears some relationship to iCalendar, but is modelled very simply as a set of 5 properties. The key reason for using the XHTML profile is that interesting parts of the text about the conference can be easily got at. It would be possible to alter the XSLT stylesheet and get RDF iCalendar out for example. A sample XHTML fragment looks like this: <div class="item"> <h2><a id="f2f3" name="f2f3">SWAD-Europe project-only management meeting</a></h2> <p> <a rel="details" href="#f2f3">A third management meeting</a> will be held on <span class="startdate">21 January 2003</span> at <span class="location">ILRT</span>. (Added <span class="date">24 September 2002</span>) </p> </div> and the resultant RSS+events fragment looks like this: <item rdf:about="http://www.w3.org/2001/sw/Europe/events/#f2f3"> <title>SWAD-Europe project-only management meeting</title> <description>A third management meeting will be held on 21 January 2003 at ILRT. (Added 24 September 2002)</description> <link>http://www.w3.org/2001/sw/Europe/events/#f2f3</link> <dc:date>2002-09-24</dc:date> <ev:startdate>2003-01-21</ev:startdate> <ev:enddate>2003-01-21</ev:enddate> <ev:location>ILRT</ev:location> </item> That nice bit of transformation of dates is stolen from Dan Connolly. Because we can parse out date information, we can merge files from different sources and generate a project calendar from it [8]. This is a very simple merge - it won't find duplicate events - it simply does a query of an RDF database, looking for items with a certain month or date or time, e.g. SELECT ?event, ?desc, ?datee, ?dates WHERE (rss:title ?event ?desc) (cal:startdate ?event ?dates) (cal:enddate ?event ?datee) and ?dates ~ "2003-01" USING cal FOR http://purl.org/rss/1.0/modules/event/ rss FOR http://purl.org/rss/1.0/ Because other project information is also held in a format that can be converted to RDF (e.g. conferences, deliverables), we can look at many of our project planning materials all in one place, without duplication or using proprietory technologies. A major issue with using RSS+events module is that several of the fields need only contain unconstrained strings. So an organiser is just a name and a type is any string. Without stronger constraints on these values their value for data merging is small. So for example if the value of an organiser property was constrained to be a personal email address then we could discover other things about that person by merging the RSS+events data with other information about their papers, coleagues, workplace and so on. As it is, we can only do imprecise string-based matching. It doesn't matter how carefully we model the information we get from the XHTML using the XSLT - the information inputted isn't precise enough. The string-based match for the dates is also less than ideal - it allows only very simple queries about dates - not useful things like 'before' and 'after'; but without datatyping being built in to the RDF parsers and databases this is the best than we can do at the moment. The RSS-based format is a big win however. The minimal RSS feed (title, link, description) is preserved as a syndication format, even if an RSS processor cannot deal with the events module information. This means that using this format allows RSS aggregators as well as humans and (rarer) RDF aggregators to use the information. cheers Libby [1] http://www.ltsn.ac.uk/ http://www.economics.ltsn.ac.uk/events/events.xml [2] http://www.w3.org/2001/sw/Europe/200207/rsscal/xslt-rss-events.html [3] http://www.w3.org/2001/sw/Europe/ [4] http://www.w3.org/2000/01/sw/ [5] http://www.w3.org/2001/sw/Europe/events/ [6] http://purl.org/rss/1.0/modules/event/ [7] http://www.w3.org/2000/08/w3c-synd/ http://www.w3.org/2001/10/glance/doc/howto [8] http://www.w3.org/2001/sw/Europe/events/view/
Received on Tuesday, 7 January 2003 13:01:15 UTC