Early phase of Semantic Web inferencing skeleton in Haskell

Graham Klyne gk@ninebynine.org
Fri, 06 Jun 2003 19:21:33 +0100


This announces availability of an early phase of my Semantic Web 
inferencing skeleton in Haskell (Swish), which has been posted on my web 
site at:

   http://www.ninebynine.org/Software/Intro.html#Swish  (links)
   http://www.ninebynine.org/Software/Swish-0.1.zip     (software source+doc)
   http://www.ninebynine.org/Software/swish-0.1.html    (documentation)

For Semantic Web information, see:
   http://www.w3.org/2001/sw/

This first phase is mainly a platform for future development, consisting of:
- A data types and functions for manipulating RDF models,
   with a simple interface for creating, combining, accessing and
   comparing RDF graphs
- A Notation3 parser.  Notation3 is an alternative syntax for RDF, easier
   than RDF/XML: for some purposes.  For information, see:
     http://www.w3.org/DesignIssues/Notation3.html
     http://www.w3.org/2000/10/swap/doc/
- A basic Notation3 formatter
- A command-line utility for testing the above
- Numerous test programs

The code's a bit tacky (by Haskell standards) but it does seem to work 
pretty reliably.  It has been tested with the Hugs and GHC Haskell systems.

As it stands, it doesn't do much other than testing for RDF graph 
structural equivalence  and merging graphs (renaming nodes as needed to 
"free variable" type conflicts).  I'm currently working on designing some 
modules for doing simple queries and inferences on the RDF data.

#g


-------------------
Graham Klyne
<GK@NineByNine.org>
PGP: 0FAA 69FF C083 000B A2E9  A131 01B9 1C7A DBCA CB5E