The word “ontology” was originally introduced in philosophy to study the nature of existence. In Computer Science, ontology refers to conceptualization through a data model for describing a piece of our world such as an organization, a research project, a historical event, our colleagues, friends, etc. in a machine-readable manner by formally defining a set of classes (concepts), properties (roles), complex relationships between classes and properties, and entities (individuals or instances). The common components of ontologies on the Semantic Web are:
- Classes: abstract groups, sets or collections of objects, object types. Classes usually represent groups or classes whose members share common properties. The hierarchy of classes is expressed as higher-level (superclass or parent class) and lower-level classes (subclass or child class). For example, a company can be represented as a class with subclasses such as departments and employees.
- Attributes: aspects, properties, characteristics, or parameters that feature objects and classes
- Individuals: instances or objects. For instance, if our domain covers countries, each country is an individual.
- Relations: the logical bond between classes, between individuals, between an individual and a class, between a single object and a collection, or between collections
- Function terms: complex structures formed from certain relations that can be used in place of an individual term in a statement
- Restrictions: formally defined limitations or ranges of valid values
- Rules: if-then statements (antecedent-consequent sentence) defining the logical inferences
- Axioms: assertions in a logical form that, together with rules, form the overall theory the ontology describes. Unlike the definition of axiom in generative grammar or formal logic, where axioms include only statements defined as a priori knowledge, the axioms of Semantic Web ontologies also include the theory derived from axiomatic statements. Axioms are used to impose constraints on the values of classes or instances, so axioms are generally expressed using logic-based languages. Axioms are suitable for verifying the consistency of the ontology.
- Events: attribute or relationship changes