This is a relatively simple presentation how I think the Semantic Web will work. I make no claims of the originality of these ideas; to the contrary, I'm trying to find and simplify the workable core of the diversity I've seen in the area. In particular, I wrote the first draft after a day of listening to Tim Berners-Lee talk to people about the Semantic Web.
I've written on this subject before many times, such as in The RDF Model Rearticulated and in Deductive Triple Stores.
Still lots more to add, of course. I haven't defined the scope well here.
The Semantic Web is a collection of computers and people exchanging information. Collectively, we can call them agents.
Every agent is considered to keep its knowledge as a set of property statements (aka binary relations).
This allows us to design relatively simple protocols for one agent to query and influence the knowledge of other agents. Agent's actions are assumed to be based entirely on their knowledge, so their actions can be influenced as well.
The simplest such protocol is one in which the only action is for one entity to add an always-true property statement to another entity's set of knowledge. This protocol requires a mechanism for the add-er to identify each property statement to the add-ee. The domain of information which can be communicated with this protocol depends entirely on the domain of property statements which can be identified.
We'll call this the reference protocol.
A property statement may be identified, in turn, by identifying each of its three elements in their respective roles. Given an ordering of the roles, a property statement can be considered a 3-tuple (triple).
All communication protocols are equivalent to the combination of this protocol and a sufficient social protocol for identification. [Intuitively this is true because we can describe any in-protocol action with always-true property statements. etc.]
The identification protocols range with application from trivial to impossible. In the case of finding an equivence to a formally standardized protocol, the identification protocol is usually trivial.
The fundamental problems then become:
(1) How do you establish a mapping from identifiers to the relationships and the related things in a wide range of domains of discourse? This mapping must be mutually understood by all communicating entities.
(2) A straighforward implementation of the reference protocol is not appropriate for many applications; how do you design real protocols for operation here?
$Date: 2001/05/14 15:39:32 $