**Last modified:***Sunday, 31 July 1994***Source code: frame-ontology.lisp****List of other known theories**

The frame ontology defines the terms that capture conventions used in object-centered knowledge representation systems. Since these terms are built upon the semantics of KIF, one can think of KIF plus the frame-ontology as a specialized representation language. The frame ontology is the conceptual basis for the Ontolingua translators.One purpose of this ontology is to enable people using different representation systems to share ontologies that are organized along object-centered, term-subsumption lines. Translators of ontologies written in KIF using the frame ontology, such as those provided by Ontolingua, allow one to work from a common source format and yet continue to use existing representation systems.

The definitions in this ontology are based on common usage in the computer science and mathematics literatures. However, there is no claim that these definitions capture the semantics of existing, implemented systems in full detail. Nuances of the meaning of terms that depend on the algorithms for inheritance, for instance, are not addressed in this ontology. See the acknowledgements at the end of the file.

This ontology is specified using the definitional forms provided by Ontolingua. All of the embedded sentences are in KIF 3.0, and the whole thing can be translated into pure KIF top level forms without loss of information.

The basic ontological commitments of this ontology are

- Relations are sets of tuples -- named by predicates

- Functions are a special case of relations

- Classes are unary relations -- no special syntax for types

- Extensional semantics for classes -- defined as sets, not descriptions

- No special treatment of slots, just binary relations and unary functions

- KL-ONE style specs are relations on relations (second-order relations, not metalinguistic or modal)

Kif-ExtensionsKif-Relations

Abstract-AlgebraBasic-Matrix-AlgebraBibliographic-DataComponent-AssembliesJat-GenericParametric-ConstraintsSlot-Constraint-Sugar

Antisymmetric-Relation Asymmetric-Relation Partial-Order-Relation Total-Order-Relation Class Class-Partition Irreflexive-Relation Asymmetric-Relation ... Many-To-Many-Relation Many-To-One-Relation One-To-Many-Relation One-To-One-Relation Reflexive-Relation Equivalence-Relation Partial-Order-Relation ... Symmetric-Relation Equivalence-Relation Thing Individual-Thing Transitive-Relation Equivalence-Relation Partial-Order-Relation ... Weak-Transitive-Relation

AliasComposition-OfDirect-Instance-OfDirect-Subclass-OfDocumentationDomainDomain-OfExhaustive-Subclass-PartitionHas-ValueInherited-Slot-ValueInstance-OfMaximum-Slot-CardinalityMaximum-Value-CardinalityMinimum-Slot-CardinalityMinimum-Value-CardinalityNth-DomainOntoRangeRange-OfRelated-AxiomsSame-Slot-ValuesSame-ValuesSingle-Valued-SlotSlot-Value-TypeSubclass-OfSubclass-PartitionSubrelation-OfSuperclass-OfTotal-OnValue-Type

All-Inherited-Slot-ValuesAll-InstancesAll-ValuesArityComposeExact-DomainExact-RangeOne-OfProjectionRelation-UniverseSlot-CardinalityValue-Cardinality

**The following constants were used from included theories:**

**=***defined as a***relation***in theory***Kif-Sets****=<***defined as a***relation***in theory***Kif-Numbers****>=***defined as a***relation***in theory***Kif-Numbers****Binary-Relation***defined as a***class***in theory***Kif-Relations****Bounded***defined as a***class***in theory***Kif-Sets****Butlast***defined as a***function***in theory***Kif-Lists****Cardinality***defined as a***function***in theory***Kif-Extensions****Composition***defined as a***function***in theory***Kif-Relations****Defined***defined as a***class***in theory***Kif-Extensions****Double***defined as a***class***in theory***Kif-Lists****Empty***defined as a***class***in theory***Kif-Sets****First***defined as a***function***in theory***Kif-Lists****Function***defined as a***class***in theory***Kif-Relations****Holds***defined as a***relation***in theory***Kif-Relations****Individual***defined as a***class***in theory***Kif-Sets****Integer***defined as a***class***in theory***Kif-Numbers****Inverse***defined as a***function***in theory***Kif-Relations****Item***defined as a***relation***in theory***Kif-Lists****Last***defined as a***function***in theory***Kif-Lists****Length***defined as a***function***in theory***Kif-Lists****List***defined as a***class***in theory***Kif-Lists****Member***defined as a***relation***in theory***Kif-Sets****Nonnegative-Integer***defined as a***class***in theory***Kif-Numbers****Nth***defined as a***function***in theory***Kif-Lists****Null***defined as a***class***in theory***Kif-Lists****Positive-Integer***defined as a***class***in theory***Kif-Extensions****Relation***defined as a***class***in theory***Kif-Relations****Rest***defined as a***function***in theory***Kif-Lists****Set***defined as a***class***in theory***Kif-Sets****Simple-Set***defined as a***class***in theory***Kif-Sets****Single***defined as a***class***in theory***Kif-Lists****String***defined as a***class***in theory***Kif-Extensions****Unary-Function***defined as a***class***in theory***Kif-Relations****Undefined***defined as a***class***in theory***Kif-Extensions**

**The following constants were used from theories not included:**

**All constants that were mentioned were defined.**

Formatting and translation code was written by