Generic-KB Protocol

Peter Karp <>
Date: Tue, 4 May 1993 10:58:51 -0700
Message-id: <CMM.>
Comment: List name: SRKB-LIST (do not use email address as name)
Errors-To: neches@ISI.EDU
Reply-To: <>
Sender: srkb-list@ISI.EDU
Version: 5.5 -- Copyright (c) 1991/92, Anastasios Kotsikonas
From: Peter Karp <>
To: Multiple recipients of list <srkb-list@ISI.EDU>
Subject: Generic-KB Protocol
A specification of the Generic-KB Protocol is now available for 
your inspection.  We seek comments on suggestions on this 
document from the knowledge representation community.  The
document describes a knowledge sharing tool that provides a 
generic layer of Common Lisp functions for accessing knowledge
The specification document can be ftp'd from host
in directory pub/knowledge-sharing/ .


		A Generic Knowledge-Base Access Protocol

			     Peter D. Karp
			   SRI International

			     Thomas Gruber
			  Stanford University

We are developing a protocol for accessing knowledge bases stored in
frame knowledge representation systems (FRSs).  The protocol, called
Generic-KB, provides a set of Common Lisp functions that provide a generic
interface to underlying FRSs.  The interface layer (conventionally called an
Application Programmer Interface or API) allows an application some
independence from the idiosyncrasies of specific FRS software and enables the
development of generic tools (e.g., graphical browsers, frame editors) that
operate on many FRSs.

The GKB protocol is complementary to language specifications developed
to support knowledge sharing.  KIF, the Knowledge Interchange Format,
provides a declarative language for describing knowledge.  As a pure
specification language, KIF does not include commands for knowledge
base query or manipulation.  Furthermore, KIF is far more expressive
than FRSs.  The Generic-KB procotol focuses on operations that are
efficiently supported by most FRSs (e.g., operations on frames, slots,
facets; inheritance and slot constraint checking).

This protocol can be viewed as an extension of the Ontolingua system,
which provides a way to define classes, relations, and functions in
KIF and translates them into the syntax of a variety of FRSs.
Ontolingua is for declarative specification and analysis of
ontologies.  The Generic-KB protocol allows one to write applications
that use knowledge bases, including ontologies written in Ontolingua.
Generic-KB provides a functional interface by which applications can
load knowledge bases (including ontologies), add facts, ask queries,
and dynamically modify KBs.