RDFCore Request for Candidate Recommendation Status and preliminary Implementation Report - DRAFT

DRAFT $Revision: 1.3 $ of $Date: 2003/08/21 12:59:16 $ by $Author: em $
Brian McBride, Dan Brickley and Eric Miller

Dear W3C Director,

WhereAs

The RDFCore Working Group has decided @@ link to vote @@ to request that you advance this specification to W3C Proposed Recommendation and commence W3C Advisory Committee review.

Titles, Abstracts, and Proposed Status

The following deliverables of the working group address the objectives specified in the charter: @@ link to appropriate versions - shadow TR? @@

Summary of Review

The RDFCore WG has published intermediate working drafts of all the above documents. Comments on these working drafts may be found in the www-rdf-comments archive. Last call working drafts were published in January 2003. The comments received (other than editorial) are listed in the last call comments list.

Dissenting Opinion: Datatypes

Whilst there is broad agreement on the current drafts, the Working Group draws to the director's attention the following dissenting opinions concerning the datatyping solution adopted:

The WG expended considerable time and energy trying to find a consensus datatyping solution. The problem is that there are ultimately irreconcilable requirements. After great effort to find a solution acceptable to all parties, none was found, but the WG was able to build strong support (11/2 vote) for the solution it proposes.

In the last call comment process only one comment relates to this datatype issue. The WG interprets this as evidence that the proposed solution is broadly acceptable to the community. Given the intensive effort already expended on this problem, the WG suggests that a new solution attracting greater support is unlikely to emerge. There is immediate demand for an RDF datatyping solution. @@evidence (Owl?, DAML, UAPROF) The Owl ontology languages designed by the WebOnt WG has successfully integrated the proposed datatyping solution into its design. On these grounds the WG asks the director to override the outstanding objections.

Dissenting Opinion: xml:lang and rdf:parseType="Literal"

@@ draft jjc - for consideration by em, bwm, danbri and WG @@

The internationalization working group has registered a dissenting opinion on the treatment agreed by RDFCore concerning rdf:parseType="Literal". @@ add link to dissent, when it comes @@ This dissent is to changes made by the RDF Core working group in response to comments concerning the last call design, particularly comments concerning the datatype rdf:XMLLiteral.

This feature of RDF is the single feature to have attracted most comments both during and before last call. These included comments from Reagle ( on use of canonicalization and use of an XML wrapper), Prud'hommeaux, the Web Ontology WG, Patel-Schneider, (concerning: language tag in canonical XML; malformed literals of type rdf:XMLLiteral; typed literals and language tags; aliases of rdf:XMLLiteral; language tags in rdf:XMLLiteral in the LBase appendix), Berners-Lee , Marchiori.

Resolving these comments to the WG's (and the commentators') satisfaction involved changes that impacted aspects that were known to be important to the internationalization working group, and they were informed. Dürst then commented further (regarding language tagging and rdf:XMLLiteral, XMLLiteral and octets, using rdf:datatype="&rdf;XMLLiteral"). A detailed analysis was provided by Ishida.

The Working Group gave further consideration to the comments of Dürst and Ishida. Changes were made to avoid the problems with octets, and these were agreed by Dürst. The other arguments were not found to be compelling, for example Carroll's response to Ishida. Most of the substantive arguments had already been made in the WG decision of 9th May.

Before that decision, the WG has considered four different designs, for the result of an rdf:parseType="Literal":

A special sort of (untyped) literal
Such as in the 29th August 2002 Working Draft.
A special sort of typed literal.
Similar to the last call design. This would remain the only datatype that can have a language identifier.
A normal typed literal, with an XML wrapper
The wrapper carries an xml:lang attribute.
A normal typed literal, without an XML wrapper
This follows Exclusive XML Canonicalization, and loses the xml:lang attribute. This is the chosen design, in the current editors drafts.

Members of the WG have argued that:



An important consideration, reflected most in the comments from the Web Ontology WG and Patel-Schneider's concerns, is that unless rdf:XMLLiteral is a normal datatype with no special treatment of language, then OWL Lite and OWL DL do not support it. No version of the OWL Abstract Syntax has permitted literals other than plain literals (with or without language tags) or typed literals (without a language tag). Thus, any solution, other than the last two of the four above, would require substantive changes to OWL DL and OWL Lite.

To summarize:

Special
untyped literal
Special
typed literal
Wrapped normal
typed literal
Normal
typed literal
no wrapping
use a generic
datatyping mechanism
No No Yes Yes
XML syntax ...
arbitrary choice
No No Yes Yes
[permit] non-built-in
datatype [like]
rdf:XMLLiteral.
No No Yes Yes
[avoid] an
RDF-specific solution
[to the problem of]
XML [...] context
Yes Yes No Yes
[avoid] smack[ing]
of being a hack
Yes No No Yes
xml:lang [is]
inherited
Yes Yes Yes No
Works with OWL
Candidate Rec
No No Yes Yes

The Working Group did accept an @@what concession do we make - add 'at risk' part, add exit criteria@@ We ask the Director to confirm the WG decision despite this dissent.

Summary of Review

Features at Risk

Preliminary Implementation Experience

The following implementation experience leads us to believe that once the exit criteria below are met, we will have sufficient implementation experience to validate the design and merit widespread deployment.

Conformance of toolkits is specified by the RDF RDF/XML Syntax Specification (Revised) conformace section. Syntactic and Semantic conformance is assessed via passing the syntactic and entailment tests associated with the RDF Test Cases . Implementation reports (where applicable) are associated with the following set of RDF toolkits.

Title: Sesame
Contact: Arjohn Kampman Jeen Broekstra
Language: Java
Description:
Sesame is an Open Source RDF Schema-based Repository and Querying facility.
Report: http://lists.w3.org/Archives/Public/www-rdf-comments/2003JulSep/0185.html

Title: Drive
Contact: Rahul Singh
Language: C#
Description:

Drive is an RDF parser written in C# for the .NET platform. Its fully compliant with the W3C RDF syntax specification and is available as open source under the terms of the GNU LGPL license.

Report:

Title: Raptor RDF Parser Toolkit
Contact: Dave Beckett
Language: C
Description:

Raptor is a free software/Open Source C library that parses RDF syntaxes such as RDF/XML and N-Triples into RDF triples.

Raptor was designed to work closely with the Redland RDF library (RDF Parser Toolkit for Redland) but is entirely separate. It is a portable library that works across many POSIX systems (Unix, GNU/Linux, BSDs, OSX, cygwin, win32). Raptor has no memory leaks and is fast.

Report: http://lists.w3.org/Archives/Public/www-rdf-comments/2003JulSep/0111.html

Title: Unicorn
Contact:
Language:
Description:
Report:

Title: TAP
Contact: R.V. Guha Rob McCool
Language:
Description:

TAP is an application framework for Building the Semantic Web. TAP's goals are to enable the Semantic Web by providing some simple tools that make the web a giant distributed Database. TAP is open source development effort by R.V. Guha (IBM) and Rob McCool (Stanford) which provide a set of protocols and conventions that create a coherent whole of independantly produced bits of information, and a simple API to navigate the graph. Local, independantly managed knowledge bases can be aggegated to form selected centers of knowledge useful for particular applications.

Report:

Title: Redfoot
Contact: Daniel Krech
Language: Python
Description:

Redfoot is a program for managing and sharing RDF information using RDFLib. Redfoot is currently geared mostly to the developer, but is shifting in the direction of the end user.

Report:

Title: Euler
Contact: Jos De Roo
Language:
Description:
Euler is an inference engine supporting logic based proofs. It is a backward-chaining reasoner enhanced with Euler path detection and will tell you whether a given set of facts and rules supports a given conclusion.
Report: http://lists.w3.org/Archives/Public/w3c-rdfcore-wg/2003Jul/0278.html

Title: ARP Another RDF Parser
Contact: Jeremy Carroll
Language: Java
Description:
The Jena RDF/XML Parser
Report: http://lists.w3.org/Archives/Public/www-rdf-comments/2003JulSep/0075.html

Title: Sandpiper Software
Contact:
Language:
Description:
Report:

Title: Joseki
Contact:
Language: Java
Description:

Joseki is a server for publishing RDF models on the web. Models have URLs and they can be accessed by query using HTTP GET. Joseki is part of the Jena RDF toolkit.

Joseki provides a coarse-grained web API that is based on extracting a subgraph from the published RDF. The extracted RDF can then be processed locally with the fine-grained API provided by Jena.

There are operations for adding and removing subgraphs from the target RDF source, allowing collaborative applications based on shared models.

Joseki is extensible: new query languages and new operations can be added without modifying the core system.

Joseki is open source and has a BSD license.

Report:

Title: PerlRDF
Contact: info@gingerall.com
Language: http://www.w3.org/2001/sw/EO/usecases/systems#perl
Description:

PerlRDF is a Perl implementation of RDF storage, parser and serializer. The storage's functionality is store, delete and query statements, where query means ask about existence of statements conforming a given mask (subject, predicate, object). Three storages are available - in memory, file (DB_File) and DBMS (PostgreSQL). PerlRDF includes parsers for both RDF/XML and RDF/N3.

Report:

Title: IsaViz
Contact: http://www.w3.org/2001/sw/EO/usecases/people#emmanual
Language: Java
Description:

IsaViz is a visual environment for browsing and authoring RDF models represented as graphs. It features:

  • a 2.5D user interface allowing smooth zooming and navigation in the graph
  • creation and editing of graphs by drawing ellipses, boxes and arcs
  • RDF/XML, Notation 3 and N-Triple import
  • RDF/XML, Notation 3 and N-Triple export, but also SVG and PNG export
Report:

Title: RDFlib
Contact: Daniel Krech
Language: Python
Description:

RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information. The library contains an RDF/XML parser/serializer, a TripleStore, an InformationStore and various store backends (InMemory, SleepyCat BTree, ZODB BTree). It is being developed by Daniel Krech along with the help of a number of contributors.

Report: http://rdflib.net/2003/07/test-results

Title: Wilbur
Contact: Ora Lassila
Language: Lisp
Description:

Wilbur is Nokia Research Center's toolkit for programming Semantic Web applications that use RDF and DAML+OIL (and XML), written in Common Lisp. It was developed by the Agent Technology group of Nokia Research Center. The work was supported in part by Nokia Mobile Phones (NMP) and Nokia Ventures Organization (NVO), as well as Nokia Venture Partners, LP. Wilbur is part of Nokia's Semantic Web activity.

Send mail to Ora Lassila if you have questions/comments. If your project is using Wilbur, drop us a line, and we can add a link to your project home page.

Report:

Title: Jena
Contact: Brian McBride
Language: Java
Description:

Jena is a java API for manipulating RDF models. Its features include:

  • statement centric methods for manipulating an RDF model as a set of RDF triples
  • resource centric methods for manipulating an RDF model as a set of resources with properties
  • cascading method calls for more convenient programming
  • built in support for RDF containers - bag, alt and seq
  • enhanced resources - the application can extend the behaviour of resources
  • integrated parsers (ARP and David Megginson's RDFFilter)

The current jena release integrates a number of additional components:

  • ARP parser compliant with latest working group recommendations
  • integrated query language (RDQL)
  • support for storing DAML ontologies in a model
  • persistent storage module based on Berkeley DB
  • support for persisting jena models in relational databases
  • open architecture supporting other storage implementations

Jena is powerful, flexible and easy Java based toolkit for developing applications within the Semantic Web.

Report: http://lists.w3.org/Archives/Public/www-rdf-comments/2003JulSep/0076.html

Title: BrownSauce
Contact:
Language: Java
Description:

There is RDF data all over the place, in XML documents and sources like databases. Getting all that data is impractical, and would be unreadable (to say the least). So BrownSauce is an attempt to make something which can browse that information.

BrownSauce breaks the problem into two parts: coarse-graining (breaking the data down into usable chunks, like 'information about person X) and aggregation (making those chunks from multiple sources). The first part is done, and users can browse more than one source using rdfs:seeAlso references. Aggregation is currently being worked on.

BrownSauce runs as a local http server, or can be added to a java web application server like Tomcat or Jetty. The current interface is HTML and can be styled using CSS (the HTML is marked up using classes relating to the RDF). Other interfaces should be simple to implement.

Report:

Title: Intelligent Dimension's RDF Gateway
Contact: Geoff Chappell
Language:
Description:

RDF Gateway is a platform designed from the ground up for the Semantic Web. It's an application server, a web server, and a deductive RDF database server all in one. RDF Gateway offers a familiar programming model and language that enables today's web and database developers to quickly begin creating Semantic Web applications that can be easily deployed to workstations and servers running RDF Gateway.

Report:

Title: RAP - RDF API for PHP
Contact: Chris Bizer
Language: PHP
Description:
RDF API for PHP is a pure PHP software package for parsing, manipulating and serializing RDF models.
Report:

Candidate Recommendation Exit Criteria

Status of This Document (common among all documents)

This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.

Publication as a Candidate Recommendation does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than "work in progress".

This @@ DATE @@ draft, along with the other working drafts for RDF Core, are a Candidate Recommendation; it been widely reviewed and satisfies the Working Group's technical requirements; W3C publishes a Candidate Recommendation to gather implementation experience.

The first release of this document was 11 November 2002 (verify for each document) and the RDF Core Working Group has made its best effort to address comments received since then, releasing several drafts and resolving a list of issues. The design has stabilized, and once the Candidate Recommendation exit criteria are met, the Working Group intends to advance this specification to Proposed Recommendation.

Patent disclosures relevant to this specification may be found on the Working Group's public patent disclosure page.

Comments on this document should be sent to www-rdf-comments@w3.org, a mailing list with a public archive. General discussion of related technology is welcome in www-rdf-interest@w3.org (archive).

This document has been produced as part of the W3C Semantic Web Activity (Activity Statement) following the procedures set out for the W3C Process. The document has been written by the RDF Core Working Group. The goals of the RDF Core working group are discussed in the Web Ontology Working Group charter.