GFP is an application programming interface for accessing knowledge bases stored in frame knowledge representation systems (FRSs) or any system that can be viewed like an FRS. GFP provides a uniform model of FRSs based on a common conceptualization of frames, slots, facets, and inheritance. GFP is defined in a programming language independent fashion, and has existing implementations in Common Lisp, Java, and C. The protocol transparently supports networked as well as direct access to FRSs and knowledge bases.
GFP consists of a set of operations that provide a generic interface to underlying FRSs. This interface isolates an application from many of the idiosyncrasies of a specific FRS and enables the development of tools (e.g., graphical browsers, frame editors, analysis tools, inference tools) that operate on many FRSs. It has been successfully used in several ongoing projects at SRI and Stanford University.
GFP has been selected as the initial integration protocol within DARPA's High Performance Knowledge Bases (HPKB) program.