Main Page Namespace List Class Hierarchy Compound List File List Compound Members File Members Related Pages Examples
Blindfold Library Manual
Quick Class Reference
Basic knowledge elements: Symbol, Triple, Pool
Interfaces for exchanging knowledge: Agent, TripleSource, TripleAdder, TripleSink, TripleFetcher
Input/Output: GrammarManager, Parser, Generator, Pool.open()
Utility: LoopState, ReferenceCountedObject, UnitTest
Introduction
This is a C++ library for semantic web work. It is currently research, but hopes to be production-quality and widely deployed some day.
Model
Our model is this:
- Knowledge is stored as sets of Triples, where each Triple is a simple sentence of three parts, called (as in english grammar) the subject, predicate, and object. Each of these parts is identified by a Symbol. An asserted set of triples conveys the knowledge that each relation (identified by the predicate symbol) is in fact held by the things denoted by the corresponding subject and object symbols.
So if we agree that the symbols "Hamlet", "Shakespeare", and "author" denote the same things as they do in modern English, then Triple(Hamlet, author, Shakespeare) means that Hamlet was written by Shakespeare.
- A Symbol may be a literal text string, a symbolic constant (which often looks a lot like a web address), or a variable. Variables are place-holders which function differently in different situations. In formal logic terms, they function as existential variables in an assertion and as universal variables in a query. Variables exist only in scopes, usually a simple TripleSource or TripleSink.
- Knowledge going into and out of the system is encoded in some linguistic form. These forms may map quite directly to the abstract model (above), like N-Triples, or they may be arbitrarily complex and obscure, designed to serve other purposes. Parsers and Generators handle this, and our grammar system tries to abstract it all and make in manageable.
References
Home to Blindfold Page.
Home to blindfold. This page generated via doxygen 1.2.11.1 Wed Oct 10 16:40:33 2001.