Information about Ontology (computer Science)
This article is about ontology in computer science. For the term in philosophy, see ontology.
In both computer science and information science, an ontology is a data model that represents a set of concepts within a domain and the relationships between those concepts. It is used to reason about the objects within that domain.
Ontologies are used in artificial intelligence, the semantic web, software engineering, biomedical informatics and information architecture as a form of knowledge representation about the world or some part of it. Ontologies generally describe:
- Individuals: the basic or "ground level" objects
- Classes: sets, collections, or types of objects[1]
- Attributes: properties, features, characteristics, or parameters that objects can have and share
- Relations: ways that objects can be related to one another
- Events: the changing of attributes or relations
Elements
Contemporary ontologies share many structural similarities, regardless of the language in which they are expressed. As mentioned above, most ontologies describe individuals (instances), classes (concepts), attributes, and relations. In this section each of these components is discussed in turn.Individuals (instances)
Individuals (instances) are the basic, "ground level" components of an ontology. The individuals in an ontology may include concrete objects such as people, animals, tables, automobiles, molecules, and planets, as well as abstract individuals such as numbers and words. Strictly speaking, an ontology need not include any individuals, but one of the general purposes of an ontology is to provide a means of classifying individuals, even if those individuals are not explicitly part of the ontology...Classes (concepts)
Classes (Concepts) are abstract groups, sets, or collections of objects. They may contain individuals, other classes, or a combination of both. Some examples of classes:[2]- Person, the class of all people
- Molecule, the class of all molecules
- Number, the class of all numbers
- Vehicle, the class of all vehicles
- Car, the class of all cars
- Individual, representing the class of all individuals
- Class, representing the class of all classes
- Thing, representing the class of all things
- Alumna, representing the class of all alumnae
The classes of an ontology may be extensional or intensional in nature. A class is extensional if and only if it is characterized solely by its membership. More precisely, a class C is extensional if and only if for any class C', if C' has exactly the same members as C, then C and C' are identical. If a class does not satisfy this condition, then it is intensional. While extensional classes are more well-behaved and well-understood mathematically, as well as less problematic philosophically, they do not permit the fine grained distinctions that ontologies often need to make. For example, an ontology may want to distinguish between the class of all creatures with a kidney and the class of all creatures with a heart, even if these classes happen to have exactly the same members.
Importantly, a class can subsume or be subsumed by other classes. For example, Vehicle subsumes Car, since (necessarily) anything that is a member of the latter class is a member of the former. The subsumption relation is used to create a hierarchy of classes, typically with a maximally general class like Thing at the top, and very specific classes like 2002 Ford Explorer at the bottom.
A partition is a set of related classes and associated rules that allow objects to be placed into the appropriate class. For example, to the right is the partial diagram of an ontology that has a partition of the Car class into the classes 2-Wheel Drive and 4-Wheel Drive. The partition rule determines if a particular car is placed in the 2-Wheel Drive or the 4-Wheel Drive class.
If the partition rule(s) guarantee that a single Car cannot be in both classes, then the partition is called a disjoint partition. If the partition rules ensure that every concrete object in the super-class is an instance of at least one of the partition classes, then the partition is called an exhaustive partition.
Attributes
Objects in the ontology can be described by assigning attributes to them. Each attribute has at least a name and a value, and is used to store information that is specific to the object it is attached to. For example the Ford Explorer object has attributes such as:- Name: Ford Explorer
- Number-of-doors: 4
- Engine: {4.0L, 4.6L}
- Transmission: 6-speed
If you did not define attributes for the concepts you would have either a taxonomy (if hyponym relationships exist between concepts) or a controlled vocabulary. These are useful, but are not considered true ontologies.
Relationships
An important use of attributes is to describe the relationships (also known as relations) between objects in the ontology. Typically a relation is an attribute whose value is another object in the ontology. For example in the ontology that contains the Ford Explorer and the Ford Bronco, the Ford Bronco object might have the following attribute:- Successor: Ford Explorer
The most important type of relation is the subsumption relation (is-superclass-of, the converse of is-a, is-subtype-of or is-subclass-of). This defines which objects are members of classes of objects. For example we have already seen that the Ford Explorer is-a 4-wheel drive, which in turn is-a Car:
The addition of the is-a relationships has created a hierarchical taxonomy; a tree-like structure (or, more generally, a partially ordered set) that clearly depicts how objects relate to one another. In such a structure, each object is the 'child' of a 'parent class' (Some languages restrict the is-a relationship to one parent for all nodes, but many do not).
Another common type of relations is the meronymy relation, written as part-of, that represents how objects combine together to form composite objects. For example, if we extended our example ontology to include objects like Steering Wheel, we would say that "Steering Wheel is-part-of Ford Explorer" since a steering wheel is one of the components of a Ford Explorer. If we introduce meronymy relationships to our ontology, we find that this simple and elegant tree structure quickly becomes complex and significantly more difficult to interpret manually. It is not difficult to understand why; an entity that is described as 'part of' another entity might also be 'part of' a third entity. Consequently, entities may have more than one parent. The structure that emerges is known as a directed acyclic graph (DAG).
As well as the standard is-a and part-of relations, ontologies often include additional types of relation that further refine the semantics they model. These relations are often domain-specific and are used to answer particular types of question.
For example in the domain of automobiles, we might define a made-in relationship which tells us where each car is built. So the Ford Explorer is made-in Louisville. The ontology may also know that Louisville is-in Kentucky and Kentucky is-a state of the USA. Software using this ontology could now answer a question like "which cars are made in America?"
Domain ontologies and upper ontologies
A domain ontology (or domain-specific ontology) models a specific domain, or part of the world. It represents the particular meanings of terms as they apply to that domain. For example the word card has many different meanings. An ontology about the domain of poker would model the "playing card" meaning of the word, while an ontology about the domain of computer hardware would model the "punch card" and "video card" meanings.An upper ontology (or foundation ontology) is a model of the common objects that are generally applicable across a wide range of domain ontologies. It contains a core glossary in whose terms objects in a set of domains can be described. There are several standardized upper ontologies available for use, including Dublin Core, GFO, OpenCyc/ResearchCyc, SUMO, and DOLCEl. WordNet, while considered an upper ontology by some, is not an ontology: it is a unique combination of a taxonomy and a controlled vocabulary (see above, under Attributes).
Since domain ontologies represent concepts in very specific and often eclectic ways, they are often incompatible. As systems that rely on domain ontologies expand, they often need to merge domain ontologies into a more general representation. This presents a challenge to the ontology engineer. Different ontologies in the same domain can also arise due to different perceptions of the domain based on cultural background, education, ideology, or because a different representation language was chosen.
At present, merging ontologies is a largely manual process and therefore time-consuming and expensive. Using a foundation ontology to provide a common definition of core terms can make this process manageable. There are studies on generalized techniques for merging ontologies, but this area of research is still largely theoretical.
Ontology languages
An ontology language is a formal language used to encode the ontology. There are a number of such languages for ontologies, both proprietary and standards-based:- OWL is a language for making ontological statements, developed as a follow-on from RDF and RDFS, as well as earlier ontology language projects including OIL, DAML and DAML+OIL. OWL is intended to be used over the World Wide Web, and all its elements (classes, properties and individuals) are defined as RDF resources, and identified by URIs.
- KIF is a syntax for first-order logic that is based on S-expressions.
- The Cyc project has its own ontology language called CycL, based on first-order predicate calculus with some higher-order extensions.
- Rule Interchange Format (RIF) and F-Logic combine ontologies and rules.
Relation to the philosophical term
The term ontology has its origin in philosophy, where it is the name of one fundamental branch of metaphysics, concerned with analyzing various types or modes of existence, often with special attention to the relations between particulars and universals, between intrinsic and extrinsic properties, and between essence and existence. According to Tom Gruber at Stanford University, the meaning of ontology in the context of computer science is “a description of the concepts and relationships that can exist for an agent or a community of agents.” He goes on to specify that an ontology is generally written, “as a set of definitions of formal vocabulary.” [3]What ontology has in common in both computer science and philosophy is the representation of entities, ideas, and events, along with their properties and relations, according to a system of categories. In both fields, one finds considerable work on problems of ontological relativity (e.g. Quine and Kripke in philosophy, Sowa and Guarino in computer science (Top-level ontological categories. By: Sowa, John F. In International Journal of Human-Computer Studies, v. 43 (November/December 1995) p. 669-85.), and debates concerning whether a normative ontology is viable (e.g. debates over foundationalism in philosophy, debates over the Cyc project in AI).
Differences between the two are largely matters of focus. Philosophers are less concerned with establishing fixed, controlled vocabularies than are researchers in computer science, while computer scientists are less involved in discussions of first principles (such as debating whether there are such things as fixed essences, or whether entities must be ontologically more primary than processes). During the second half of the 20th century, philosophers extensively debated the possible methods or approaches to building ontologies, without actually building any very elaborate ontologies themselves. By contrast, computer scientists were building some large and robust ontologies (such as WordNet and Cyc) with comparatively little debate over how they were built.
In the early years of the 21st century, the interdisciplinary project of cognitive science has been bringing the two circles of scholars closer together. For example, there is talk of a "computational turn in philosophy" which includes philosophers analyzing the formal ontologies of computer science (sometimes even working directly with the software), while researchers in computer science have been making more references to those philosophers who work on ontology (sometimes with direct consequences for their methods). Still, many scholars in both fields are uninvolved in this trend of cognitive science, and continue to work independently of one another, pursuing separately their different concerns.
Resources
Examples of published ontologies
- Dublin Core, a simple ontology for documents and publishing.
- Cyc for formal representation of the universe of discourse.
- Suggested Upper Merged Ontology, which is a formal upper ontology
- Generalized Upper Model, a linguistically-motivated ontology for mediating between clients systems and natural language technology
- WordNet Lexical reference system
- Gene Ontology for genomics
- Protein Ontology for proteomics
- Foundational Model of Anatomy for human anatomy
- SBO, the Systems Biology Ontology, for computational models in biology
- Plant Ontology for plant structures and growth/development stages, etc.
- CIDOC CRM (Conceptual Reference Model) - an ontology for "cultural heritage information".
- GOLD (General Ontology for Linguistic Description)
- Linkbase A formal representation of the biomedical domain, founded upon BFO - Basic formal ontology.
- Foundational, Core and Linguistic Ontologies
- ThoughtTreasure ontology
- LPL Lawson Pattern Language
- TIME-ITEM Topics for Indexing Medical Education
- POPE Purdue Ontology for Pharmaceutical Engineering
- IDEAS Group A formal ontology for enterprise architecture being developed by the Australian, Canadian, UK and US Defence Depts. The IDEAS Group Website
- program abstraction taxonomy
Ontology libraries
The development of ontologies for the Web has led to the apparition of services providing lists or directories of ontologies with search facility. Such directories have been called ontology libraries.The following are static libraries of human-selected ontologies.
- The DAML Ontology Library maintains a legacy of ontologies in DAML.
- SchemaWeb is a directory of RDF schemas expressed in RDFS, OWL and DAML+OIL.
- Swoogle is a directory and search engine for all RDF resources available on the Web, including ontologies.
- The OntoSelect Ontology Library offers similar services for RDF/S, DAML and OWL ontologies.
- Ontaria is a "searchable and browsable directory of semantic web data", with a focus on RDF vocabularies with OWL ontologies.
Notes
1. ^ See Class (set theory), Class (computer science), and Class (philosophy), each of which is relevant but not identical to the notion of a "class" here.
2. ^ Note that the names given to the classes mentioned here are entirely a matter of convention.
3. ^ [1]
2. ^ Note that the names given to the classes mentioned here are entirely a matter of convention.
3. ^ [1]
See also
- List of ontology languages
- Ontology Warehouse
- Open Biomedical Ontologies
- Ontology alignment
- Controlled vocabulary
- Formal concept analysis
- Terminology extraction
- Ontology learning
- Ontology editor
- Soft ontology
- Lattice (order)
External links
- What is an ontology?
- Introduction to Description Logics DL course by Enrico Franconi, Faculty of Computer Science, Free University of Bolzano, Italy
- What are the differences between a vocabulary, a taxonomy, a thesaurus, an ontology, and a meta-model?
- Metadata? Thesauri? Taxonomies? Topic Maps! - Making sense of it all
- Clay Shirky: Ontology is Overrated
- - An open, international, virtual community of practice working on the application and adoption of ontological engineering and semantic technologies.
- Barry Smith's Ontology Page
- John Bateman's Ontology Portal
- Buffalo Ontology Site
- National Center for Ontological Research
- National Center for Biomedical Ontology
- Bremen Ontology Research Group
- The OBO Foundry
- The Laboratory for Applied Ontology (LOA)
- ekoss.org - Expert Knowledge Ontology-based Semantic Search
- Streaming video: "How to Build an Ontology", by Barry Smith.
- Jena – A Semantic Web Framework for Java
- Soft ontologies
- The IDEAS Group Website
- InMoBio: Integration and Modularization of Bio-ontologies
Ontology is a study of conceptions of reality and the nature of being. In philosophy, ontology (from the Greek ὤν, genitive ὄντος: of being (part.
..... Click the link for more information.
..... Click the link for more information.
Computer science, or computing science, is the study of the theoretical foundations of information and computation and their implementation and application in computer systems.
..... Click the link for more information.
..... Click the link for more information.
Information science (also information studies) is an interdisciplinary science primarily concerned with the collection, classification, manipulation, storage, retrieval and dissemination of information.
..... Click the link for more information.
..... Click the link for more information.
A data model is an abstract model that describes how data is represented and used.
The term data model has two generally accepted meanings:
..... Click the link for more information.
The term data model has two generally accepted meanings:
- A data model theory i.e. a formal description of how data may be structured and used.
..... Click the link for more information.
The domain of discourse, sometimes called the universe of discourse, is an analytic tool used in deductive logic, especially predicate logic. It indicates the relevant set of entities that are being dealt with by quantifiers.
..... Click the link for more information.
..... Click the link for more information.
Reasoning is the mental (cognitive) process of looking for reasons for beliefs, conclusions, actions or feelings.[1] Humans have the ability to engage in reasoning about their own reasoning using introspection.
..... Click the link for more information.
..... Click the link for more information.
artificial intelligence (or AI) is "the study and design of intelligent agents" where an intelligent agent is a system that perceives its environment and takes actions which maximizes its chances of success.
..... Click the link for more information.
..... Click the link for more information.
The semantic web is an evolving extension of the World Wide Web in which web content can be expressed not only in natural language, but also in a format that can be read and used by software agents, thus permitting them to find, share and integrate information more easily.
..... Click the link for more information.
..... Click the link for more information.
Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software.[1] The term software engineering
..... Click the link for more information.
..... Click the link for more information.
Biomedical informatics is a term used to describe the broad discipline that encompasses such subdomains as bioinformatics, clinical informatics, public health informatics, etc, and is most commonly used in this way in the USA[1].
..... Click the link for more information.
..... Click the link for more information.
Information architecture (IA) is the science of expressing a model or concept for information. Information architecture is used in library systems, web development, user interactions, database development, programming, technical writing, enterprise architecture, critical
..... Click the link for more information.
..... Click the link for more information.
Knowledge representation is an issue that arises in both cognitive science and artificial intelligence. In cognitive science it is concerned with how people store and process information.
..... Click the link for more information.
..... Click the link for more information.
CLASS can refer to:
..... Click the link for more information.
- California's Leading Advanced Safety School, a control-emphasizing motorcycle school
- Canadian Land Surface Scheme, for use in large scale climate models
- Celecoxib Long-term Arthritis Safety Study
- Class, a romanian band
..... Click the link for more information.
In computer science, a set is a collection (container) of certain values, without any particular order, and no repeated values. It corresponds with a finite set in mathematics. Disregarding sequence, and the fact that there are no repeated values, it is the same as a list.
..... Click the link for more information.
..... Click the link for more information.
In computing, an attribute is an entity that defines a property of an object, element, or file. An attribute usually consists of a name and a value. Its definition can be extended by a datatype, a representation format, a default value and restrictions.
..... Click the link for more information.
..... Click the link for more information.
relation or relationship is a generalization of 2-place relations, such as the relation of equality, denoted by the sign "=" in a statement like "5 + 7 = 12," or the relation of order,
..... Click the link for more information.
..... Click the link for more information.
In philosophy, events are objects in time or instantiations of properties in objects. However, a definite definition has not been reached, as multiple theories exist concerning events.
..... Click the link for more information.
..... Click the link for more information.
ParaDOX
(1997) Crimson
(1998)
"ParaDOX" is Nanase Aikawa's second album. The album reached #1 on Oricon charts.
..... Click the link for more information.
(1997) Crimson
(1998)
"ParaDOX" is Nanase Aikawa's second album. The album reached #1 on Oricon charts.
Track listing
- CAT on the Street
- Tenshi no You ni Odorasete
..... Click the link for more information.
In Philosophy of language, a context in which a subsentential expression e appears is called extensional if and only if e can be replaced by an expression with the same extension and necessarily preserve truth-value. The extension of a term is the set of objects that that term denotes.
..... Click the link for more information.
..... Click the link for more information.
Intensional
..... Click the link for more information.
- in Philosophy of language: not extensional
- in Philosophy of mind: An intensional state is a state which has a propositional content.
- in Mathematical logic: see extensionality
- See also: Musical form.
..... Click the link for more information.
In programming languages a data type defines a set of values and the allowable operations on those values[1]. For example, in the Java programming language, the "int" type represents the set of 32-bit integers ranging in value from -2,147,483,648 to 2,147,483,647, and
..... Click the link for more information.
..... Click the link for more information.
For the science of classifying living things, see .
Taxonomy is the practice and science of classification. The word comes from the Greek τάξις, taxis, 'order' +
..... Click the link for more information.
In linguistics, a hyponym is a word or phrase whose semantic range is included within that of another word. For example, scarlet, vermilion, carmine, and crimson are all hyponyms of red (their hypernym).
..... Click the link for more information.
..... Click the link for more information.
Ford Bronco was a SUV produced from 1966 through 1996, with five distinct generations.
It was initially introduced as a competitor for the Jeep CJ-5 and International Harvester Scout.
..... Click the link for more information.
It was initially introduced as a competitor for the Jeep CJ-5 and International Harvester Scout.
..... Click the link for more information.
..... Click the link for more information.
Subsumption may refer to:
..... Click the link for more information.
- Subsumption, a minor premise in Symbolic Logic
- The Liskov substitution principle in object-oriented programming
- Subsumption architecture in robotics
..... Click the link for more information.
Superclass may be:
..... Click the link for more information.
- Superclass (biology), a taxonomic rank intermediate between subphylum and class.
- Superclass (computer science), a class from which other classes are derived
- Superclass (database theory),
..... Click the link for more information.
Is-a is a relationship where one class A is a subclass of another class B (and so B is a superclass of A).
In other words "A is a B" usually means that concept A is a specialization of concept B
..... Click the link for more information.
In other words "A is a B" usually means that concept A is a specialization of concept B
..... Click the link for more information.
Subclass may refer to:
..... Click the link for more information.
- Subclass (biology), a taxonomic rank intermediate between class and superorder
- Subclass (computer science), a class that is derived from another class or classes
..... Click the link for more information.
For the science of classifying living things, see .
Taxonomy is the practice and science of classification. The word comes from the Greek τάξις, taxis, 'order' +
..... Click the link for more information.
This article is copied from an article on Wikipedia.org - the free encyclopedia created and edited by online user community. The text was not checked or edited by anyone on our staff. Although the vast majority of the wikipedia encyclopedia articles provide accurate and timely information please do not assume the accuracy of any particular article. This article is distributed under the terms of GNU Free Documentation License.
Herod_Archelaus
