4. Making ontologies: theoretical basics and instructions
2. Key terms and elements of ontologies
2.1. Concepts and classes
A concept is a mental representation or idea of a group of objects, events, or phenomena that share common characteristics. Concepts serve as the building blocks of human thought, enabling us to categorize and make sense of the world around us. They are abstract ideas or mental symbols that people use to understand and classify entities based on their properties or features.
In cognitive science and philosophy, concepts are studied to understand how knowledge is structured, acquired, and applied. Concepts help us to recognize instances of a particular category (e.g., recognizing a particular animal as a "dog") and to communicate about categories of things with others.
In ontology development and computer science, a class is a formal representation of a concept within a structured model or system. Classes are used in ontologies, databases, and programming to define the properties and behaviours of a set of objects or instances that belong to that class.
Ontologies: In ontologies, a class represents a concept or category of things, and instances of that class (individuals) are entities that belong to the category. For example, in an ontology about animals, "Bird" might be a class representing the concept of birds, and individual birds like "Eagle" and "Sparrow" would be instances of the "Bird" class.
Object-Oriented Programming: In object-oriented programming (OOP), a class is a blueprint for creating objects (instances), specifying the data fields (attributes) and methods (functions or behaviours) that those objects will have. Each object instantiated from a class shares the class's structure and behaviour but can have different values for its attributes.
Relationship Between Concepts and Classes
Concepts are the abstract ideas or cognitive units that we use to think about and categorize the world.
Classes are the formal representations of concepts within a computational system, used to model the structure and behaviour of sets of entities that share common characteristics.
In ontology engineering, classes are defined to represent concepts in a way that can be processed by computers, allowing for sophisticated reasoning, querying, and analysis based on the relationships and properties defined in the ontology. Classes in an ontology are organized into hierarchies or networks, reflecting the natural categorization of concepts, including subclass (is-a) relationships, part-whole (meronymy) relationships, and associative relationships.