KML is an abbreviation of Knowledge Markup Language. First it was actually an XML-based language that was intended to share imperative and declarative knowledge among humans and, possibly, machines.
The main idea of this language is to propose a syntax the information and meta-information can be written with. Such meta-transition forces the usage of semantically-closed statement-based language similar to Natural Language.
For now, KML has already grown to a big set of technologies renamed to VRB (abbreviation of Verbal Rule Blocks) that includes: shared model storage, event-based inference engine and even a nice (but commercial) modeler GUI.
There is a number of ways the VRB can be used:
Organizing and manipulating personal knowledge the way much MindMapping software does but with preserving of consistency.
Collaborating on Enterprise Knowledge Base like with WikiWiki, but preventing chaos by restricting posts to a meta-model.
Creating of self-descriptive, auto-discoverable and ontology-driven services.
Information in VRB is represented as an unordered (basically) set of Statements. Each Statement is a tuple of four words, called Nodes. Each node can represent an object identifier or a literal value and has an unique role in the Statement depending on its place. The roles of Nodes are: Context, Predicate, Subject, Object. The Statement also has the Truth modifier to distinguish true and false statements. So the Statement is semantically close to natural language sentence. Four-tuple Statements also called Quadruplets.
The main thesis of VRB Information Model: all information expressible in verbal form can be represented as a set of Quadruplets.
Information processing (as a part of intensional knowledge representation) is done by an inference engine which consumes rules described in Quadruplets as well as hard-coded rules.
VRB is a stack of technologies which deliver an ability to store, share, manipulate and even invoke imperative (intensional) knowledge.
VRB stack includes:
Statement Base – fast and reliable storage of Quadruplets. It delivers simple SetStatement and GetStatement interface much like any RDF storage does.
Model Storage – a multi-threaded, transactional inference engine that relies on Statement Base and
Hard-coded Rules – pieces of code which are invoked under certain circumstances (when a specific statement is set into or queried from the Model Storage).
On-Line Server (OLS) – a socket server application – wrapper of Model Storage.
VRB Protocol – a network protocol optimized for long sequences of SetStatement and GetStatement calls used by OLS and
Model Storage Proxy – a library for client applications to communicate with OLS.
QPL – Quadruplet Production Language – a low-level language processing rules are written in.
VRL – VerbAll Rule Language – a high-level Prolog-like language that compiled into QPL. It's primary role to write Logical Expression which should be maintainable extensionally or intensionally.
The latest stable source releases (VRB library, OLS, Python and Perl bindings):
ZIP archive vrb-ols-0.3.1.zip
Gzipped archive vrb-ols-0.3.1.tar.gz
Bzip2 archive vrb-ols-0.3.1.tar.bz2
Developer documentation:
Online html documentation
Zipped html pages vrb-ols-html-0.3.1.zip
PDF document vrb-ols-0.3.1.pdf
User documentation:
Not available yet
For successful compilation you should have (mandatory):
CUnit library for testing (optional since 0.3.1 version)
Tcl scripting language (optional since 0.3.1 version)
Python scripting language
Perl scripting language
Perl::Template library.
Microsoft VisualStudio, version >= 7.0:
unzip vrb-ols-xx.yy.zz.zip in you favorite folder.
open solution file vrb-ols-xx.yy.zz\src\win\modelstorage.sln
Open MSTest Project properties window.
Change the path of CUnit package in Additional Include Directories and Additional Library Directories where it was installed in.
Build solution. The result files will appear in vrb-ols-xx.yy.zz\build_win folder
Linux and other Unixes:
install CUnit package, Tcl, python and perl languages first.
tar -xzvf vrb-ols-xx.yy.zz.tar.gz
cd vrb-ols-xx.yy.zz
./configure
make
sudo make install
Run mstest executable in vrb-ols-xx.yy.zz/tests directory (Unix) or vrb-ols-xx.yy.zz\build_win (Windows).
2007-01-10 VRB-OLS-0.3.1 bug-fix release is out.
2006-12-27 VRB-OLS-0.3.0 version released.
Sourceforge project page with forums, trackers, mail-lists and download services.
QPL description
About WikiWiki – wikipedia article.
About MindMapping – wikipedia article