Owl.mindswap.org Architecture Description
Ron Alford, Amy Alford
1 Overview
1.1 Managing RDF
1.1.1 Submission
Users submit RDF through a webform, where they can choose to upload a file, create rdf in a text area, or submit a url. In the first two cases the file is copied to a directory on the web server where it can be publically downloaded. Either way the file is loaded into the redland database.
After the RDF is uploaded, a simple inferencer goes through and takes care of functional, inverse functional, and inverse properties.
1.1.2 Editing
A management page provides access to editing each of the files uploaded to the site, as well as options to remove or reload external RDF files.
1.2 Output Types
The libraries we use to work with RDF know nothing about the final display format. This gives us the flexibility to output to multiple formats.
1.2.1 XHTML
Most commonly we output XHTML snippits which can be included in we pages using server side includes.
1.2.2 RSS
For our news items we output RSS 1.0 for syndication.
1.2.3 BibTex
For papers we output a bibtex bibliography database which is then fed through bibtex2html to produce a bibliogrpahy for display.
2 Technology Description
2.1 Redland
All of the RDF we use to create the owl.mindswap.org page is stored in Redland for easy access. This eliminates the need to download and parse RDF files each time a page is requested.
2.2 Querier
Because the redland perl interface is verbose and targeted at RDF not OWL we wrote a wrapper for redland called ``querier.'' The goal of querier is to make the most common queries needed for a web page simple and to simply working with instances rather than triples.
2.3 CWM
CWM is used to translate from N3 and Ntriples to RDF/XML. This is important, since most the data on our site is hand written in N3.
2.4 RET
RET (RDF Extraction Tool) is a means of extracting RDF from common web files (HTML, PDF, SVG, and files using XMP).
