SWAD-Europe Deliverable 12.3.2: Transformation libraries report

Project name:
Semantic Web Advanced Development for Europe (SWAD-Europe)
Project Number:
Workpackage name:
12.3. Visualisation demonstrator
Workpackage description:
Deliverable title:
Transformation Libraries Report
Charles McCathieNevile, W3C
This report describes code produced to convert information to RDF from another format which has wide use, implemented in such a way as to be available from within a modified browser.

First version published 2002-11-23. This is a completed report, last updated $Date: Friday 29 October 2004 - 19:27:54$.

Comments on this document are welcome and should be sent to the public-esw@w3.org list, archived at http://lists.w3.org/Archives/Public/public-esw/. General discussion of semantic web tools and technologies should be sent to www-rdf-interest@w3.org which is archived at http://www.w3.org/Archives/Public/www-rdf-interest. Discussion of geographic information should be directed to the GeoInfo Wiki page at http://esw.w3.org/topic/GeoInfo


  1. Introduction
  2. Modified browsers and XML interaction formats
  3. Implementation
  4. Collaboration
  5. Dissemination
  6. Future work and lessons learned
  7. Outcomes
  8. Frequently asked questions
  9. References

1 Introduction

This report is part of SWAD-Europe Work package 12.3: Visualisation Demonstrator. and addresses the scope, features and purpose of tools for annotating or commenting on web data using existing systems that are licensed as Free Software or Open Source. There is ongoing work based on the code in the demonstrator.

This deliverable was originally conceived as being more focused towards generic description mechanisms for images, and the use of those descriptions to support accessibility. However other work within the project, including the first developer workshop and the fifth developer workshop revealed that there is a wealth of work in this area.

In the course of the project, some time was spent collaborating with the developers of the Concept Coding Framework, a system based on the SKOS work, which is more directly focused on annotating images for use by people with disabilities.

The particular focus on geographic information was chosen because it has traditionally been something that is very difficult to provide in a way that can be made accessible, and common applications tend not to do a very good job of providing accessible authoring or reading interfaces to this type of information. Since this is an area that is currently under-developed in Semantic Web applications generally the tools developed are not specifically focused on accessibility, but on providing interfaces that can be readily reproduced in a variety of formats to suit different accessibility needs.

For those in a hurry: go straight to the outcomes section

2 Information formats and end users.

One technique that has been used to bring RDF and semantic Web technology onto people's desktop has been by embedding the functionality in document formats. UK developer Jim Ley pioneered this approach to the semantic Web with a javascript RDF parser embedded in SVG documents. Other projects that have used a similar technique are the DENG Xforms/XML/SVG browser, from Mozquito in Germany, and Jan Grant's tiny prolog parser developed at the University of Bristol. Rather than modify existing browser code or develop specific-purpose software, the project used this technique to permit people to take advantage of its results in a wide variety of browsers.

The Friend-of-a-friend project [FOAF], an RDF vocabulary used for describing people, has seen wide implementor uptake, particularly in Europe but also in Japan, the USA and elsewhere. SImilarly, geographic information has been an area where people have suggested using the semantic web. Two common techniques for locating things are via the nearest airport, which has been widely used for people, or by latitude/longitude coordinates, familiar from mapping and, via the mercator projection of the globe, readily transferred to a cartesian representation of the globe.

Existing FOAF tools provided a rich variety of ways to interact with FOAF information, including foafnaut, foafExplorer and foaf-a-matic. However manipulating geographic data often relied on knowing in advance how to identify things by relatively obscure techniques - the IATA codes for airports, and the latitude and longitude of a point, are not general knowledge and have to be looked up somehow each time they are needed. The goal of this demonstrator was to provide more intuitive interfaces to geographic information that could be used to generate RDF that was compatible with other systems - typically using either the nearest airport or a latitude and longitude of a point to do the interchange.

3 Implementation

The system is implemented as dynamic SVG using javascript, and a PHP script. It provides a graphic display of a map, which allows the user to select a point. Because SVG is used, the map is readily zoomable. Regions may overlap, and may be defined as large or small as desired. They need not be defined in the same way - from the earliest versions two forms of information were available:

  1. Geometrically defined regions - for example, France was defined as a polygonal region on a mercator projection of the map
  2. Nearby landmarks - for example, the nearest airport, or a region within a given distance of a particular airport

A view of the demonstrator loading information Figure 1

Clicking a point allows a user to produce a snippet of RDF describing that point, which can then be pasted into a FOAF or similar file. Loading regions, airports, or people demonstrate several different aspects that can be provided to clarify the information in the basic map, making it easier to search for the region required, or nearby landmarks (people or airports are used by the demonstrator).

The regions functionality has been adapted by a new development project whose goal is to reuse and enhance the code developed. This development will be re-integrated in due course to the original demonstrator.

Finding who is at a selected place
Figure 2

5 Collaboration

The development of this work was done in english and french, with the software interface being available in both languages (although for the most part it is actually graphical). Collaboration with the University of Marne-le-Vallée in particular was important in this project. Collaboration with several European developers who work in related areas is also key to the success of the project. In particular it is hoped that some modules from the code can be used as interface components for a number of tools which record geographic information, currently using non-intuitive information such as latitude and longitude or GPS (Global Positioning System) coordinates.

The open source nature of the code means that it is available for future development. Currently active development is being undertaken by ESSI in France.

6 Dissemination

These tools have been demonstrated through mailing lists and meetings in the Semantic Web developer community, and at meetings and workshops in Europe, particularly in France. They have developed as part of the planning for, and further developed in response to, the SWAD-Europe workshop on geospatial information in Budapest.

The GeoInfo [GeoInfo] WIki page and the geowanking mailing list were also used to announce various aspects of the project work.

7 Future work and lessons learned

The visual interface to the information was, as expected, a simple way to create and work with information that could help people for whom the machine serialisations of RDF are too complex. It permitted users to create information in RDF based on widespread geographical knowledge, rather than on specialist information that has to be looked up in advance.

The ability to run software in a variety of existing user platforms, through the use of interaction formats such as SVG, and HTML, is an important key to mass-market acceptance. Users are very often influenced more by whether they are familiar with a particular piece of software than with any perceived technical superiority. The development of this project has shown that this is an extremely important issue, and that even formats as standardised as SVG present challenges in developing truly interoperable applications, as long as the implementations of these formats are incomplete and vary between platforms.Integration of Xforms into this work, to simplify the process of developing an alternative interface that is non-graphical, for people with certain disabilities such as visual impairment, seems a valuable extension.

Code from this work was not published until it was more or less functional. This seems to be a mistake, as the long-term effect is that it is hard for collaborators to be involved in the initial development stage, thus lessening the chance of them taking ownership of the work and continuing it independently. It also reduces the review opportunity from the development community, and thus the overall success of the demonstrator as a project with an educative purpose.

8 Outcomes

9 Frequently Asked Questions (FAQ)

Where is the software available?

The source code, and a brief guide to it's function, are available at http://www.w3.org/2001/sw/Europe/200306/geo/ under the terms of the W3C software license [W3C-LICENSE]

What do I need to have already?

The demonstrator [carte] runs in [SVG], using javascript and many advanced features. It is recommended that you install the Adobe SVG viewer version 3 in Internet Explorer or Safari, as it has not been fully tested with the now widely distributed version 6 beta viewer. The regions demonstrator does run in both versions of the SVG viewer.

Why is it slow to load?

The demonstrator loads a significant amount of this information, and the small javascript processor included is being stretched to its limits. In future development an important aspect will be replacing this simple mechanism with an optimised process for loading part of the RDF information, and loading more detailed information as required.

10 References

Tools, specifications and documents

The Carte Zone Monde demonstrator is available at http://www.w3.org/2001/sw/Europe/200306/geo/carte_zones_monde_rdf.svg
The Friend-of-a-friend project is an RDF vocabulary for information about people, relationships and interests. It has a homepage at http://www.foaf-project.org
The GeoInfo WIki page is editable by anybody, and is used to track discussion on geographic information. It is available at http://esw.w3.org/topic/GeoInfo
The Scalable Vector Graphics language is developed at W3C. Information is available about the development and the various versions of the specification at http://www.w3.org/Graphics/SVG

Other references

The W3C Software Copyright license is a BSD-style license allowing the free use of software in open-source or proprietary products with appropriate acknowledgement. The full license is available at http://www.w3.org/Consortium/Legal/copyright-software