In
computer science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to Applied science, practical discipli ...
, the terms TBox and ABox are used to describe two different types of statements in
knowledge base
A knowledge base (KB) is a technology used to store complex structured and unstructured information used by a computer system. The initial use of the term was in connection with expert systems, which were the first knowledge-based systems.
Ori ...
s. TBox statements are the "terminology component", and describe a domain of interest by defining classes and properties as a domain vocabulary. ABox statements are the "assertion component" — facts associated with the TBox's conceptual model or
ontologies
In computer science and information science, an ontology encompasses a representation, formal naming, and definition of the categories, properties, and relations between the concepts, data, and entities that substantiate one, many, or all domains ...
.
Together ABox and TBox statements make up a knowledge base or a
knowledge graph
The Google Knowledge Graph is a knowledge base from which Google serves relevant information in an infobox beside its search results. This allows the user to see the answer in a glance. The data is generated automatically from a variety of so ...
.
ABox statements must be TBox-compliant: they are assertions that use the vocabulary defined by the TBox.
TBox statements are sometimes associated with object-oriented classes and ABox statements associated with instances of those classes.
Examples of ABox and TBox statements
ABox statements typically deal with concrete entities. They specify what category an entity belongs to, or what relation one entity has to another entity.
* Item A is-an-instance-of Category C
* Item A has-this-relation-to Item B
Examples:
* Niger is-a country.
* Chad is-a country
* Niger is-next-to Chad.
* Agadez is-a city.
* Agadez is-located-in Niger.
TBox statements typically (or definitions of domain categories and implied relations) such as:
* An entity X can be a country or a city
** So ''Dagamanet is-a neighbourhood'' is not a fact you can specify, though it is a fact in real life.
* A is-next-to B if B is-next-to A
** So ''Niger is-next-to Chad'' implies ''Chad is-next-to Niger''.
* X is a place if X is-a city or X is-a country.
** So ''Niger is-a country'' implies ''Niger is-a place''.
* place A contains place B if place B is-located-in A.
** So ''Agadez is-located-in Niger'' implies ''Niger contains Agadez''.
TBox statements tend to be more permanent within a knowledge base and are used and stored as a schema or a data model. In contrast, ABox statements are much more dynamic in nature and tend to be stored as instance data within transactional systems within databases. With the newer,
NoSQL
A NoSQL (originally referring to "non- SQL" or "non-relational") database provides a mechanism for storage and retrieval of data that is modeled in means other than the tabular relations used in relational databases. Such databases have existed ...
databases and especially with RDF databases (see
Triplestore
A triplestore or RDF store is a purpose-built database for the storage and retrieval of triples through semantic queries. A triple is a data entity composed of subject–predicate–object, like "Bob is 35" or "Bob knows Fred".
Much like a relati ...
) the storage distinction may no longer apply. Data and models can be stored using the same approach. However, models continue to be more permanent, have a different lifecycle and are typically stored as separate graphs within such database.
See also
*
Description logic#Modeling
*
Metadata
Metadata is "data that provides information about other data", but not the content of the data, such as the text of a message or the image itself. There are many distinct types of metadata, including:
* Descriptive metadata – the descriptive ...
*
Web Ontology Language
The Web Ontology Language (OWL) is a family of knowledge representation languages for authoring ontologies. Ontologies are a formal way to describe taxonomies and classification networks, essentially defining the structure of knowledge for variou ...
References
Ontology (information science)
de:ABox
{{comp-sci-stub