Semantic Web Spaces will be implemented beginning May 2006.
As a Semantic Web middleware, the implementation will focus on these four aspects:
- The representation of knowledge formalisms such as RDF and OWL in tuples;
- The extension of the Linda primitives to handle knowledge exchange;
- The realisation of an efficient matching mechanism;
- A meta-model for the tuplespace itself.
The conceptual model envisages how we would handle each of these aspects.
An architecture has been defined to guide the implementation process.
The LighTS Java API for Linda has been identified as a basis for the implementation. Some aspects indicating it is well suited to implementing Semantic Web Spaces are:
- - fields can contain any type of Java object
- - objects can be serialized to tuples and back
- - in lights.adapters the tuple space engine (default is an in-memory Vector) can be changed without affecting the rest of the application code
- - a class SubtypeField allows matching on subtypes
- - a class PrefixTuple can enable matching which ignores the last (e.g. RDF ID) field of the tuple
- - a class BooleanTuple demonstrates how to add support for matching with Boolean operators (richer queries, support for SPARQL-like templates)
- - virtual tuples which represent tuples which exist only as the result of the existence of other tuples (possibly a way to add inferred tuples into the space)
- - tuplespace views enable agents to "see" a space in different ways (possibly a way to implement the data and semantic views of a Semantic Web Space)