Introduction to Ontology in Computer Science
Ontology is the study of existence, with applications in various fields like philosophy, linguistics, and computer science. In computer science, an ontology is an engineering artifact that defines a specific vocabulary to describe a domain, along with explicit assumptions about the vocabulary's intended meaning. It serves as a formal and machine-manipulable model, providing a shared understanding of a domain. Ontology in Semantic Web further formalizes a common set of terms for domain description and representation.
Download Presentation
Please find below an Image/Link to download the presentation.
The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.
E N D
Presentation Transcript
ONTOLOGY ONTOLOGY 1st semester 2018-2019 Dr. Dr. Abdulhussein Abdulhussein M. Abdullah M. Abdullah Computer Science Dept., College of CS & IT, Basrah University
OUTLINE OUTLINE What s Ontology? Ontology in Semantic Web. Web Ontology Language . Example.
WHAT WHAT S ONTOLOGY? S ONTOLOGY? Ontology term means : study of existence. In philosophy Ontology : is branch of Metaphysics. Tries to answer the questions: What characterizes being? Eventually, what is being?
Ontology in Linguistics Concept Relates to activates Form Referent Stands for ? Tank [Ogden, Richards, 1923]
Ontology in Computer Science An ontology is an engineering artifact: It is constituted by a specific vocabulary used to describe a certain reality, plus a set of explicit assumptions regarding the intended meaning of the vocabulary. Thus, an ontology describes a formal specification of a certain domain: Shared understanding of a domain of interest Formal and machine manipulable model of a domain of interest An explicit specification of a conceptualisation [Gruber93]
Ontology in Semantic Web Ontology in Semantic Web In Semantic Web ,W3C An ontology formally defines a common set of terms that are used to describe and represent a domain.
Structure of an Ontology Ontologies typically have two distinct components: Names for important concepts in the domain Elephant is a concept whose members are a kind of animal Herbivore is a concept whose members are exactly those animals who eat only plants or parts of plants Adult_Elephant is a concept whose members are exactly those elephants whose age is greater than 20 years Background knowledge/constraints on the domain Adult_Elephants weigh at least 2,000 kg All Elephants are either African_Elephants or Indian_Elephants No individual can be both a Herbivore and a Carnivore
A Semantic Web First Steps Make web resources more accessible to automated processes Extend existing rendering markup with semantic markup Metadata annotations that describe content/funtion of web accessible resources Use Ontologies to provide vocabulary for annotations Formal specification is accessible to machines A prerequisite is a standard web ontology language Need to agree common syntax before we can share semantics Syntactic web based on standards such as HTTP and HTML
Ontology Design and Deployment Given key role of ontologies in the Semantic Web, it will be essential to provide tools and services to help users: Design and maintain high quality ontologies, e.g.: Meaningful all named classes can have instances Correct captured intuitions of domain experts Minimally redundant no unintended synonyms Richly axiomatised (sufficiently) detailed descriptions Store (large numbers) of instances of ontology classes, e.g.: Annotations from web pages Answer queries over ontology classes and instances, e.g.: Find more general/specific classes Retrieve annotations/pages matching a given description Integrate and align multiple ontologies
Motivation Ontologies provide a shared understanding of a domain. They provide background knowledge to systems to automatize certain tasks. By the process of annotation, knowledge can be linked to ontologies. Example: Angelina Jolie (Text) linked to concept Actress In ontology we also know that an actress always is female and a person. Ontologies allow the creation of annotations machine-readable and machine-understandable content. If machines can understand content, they can also perform more meaningful and intelligent queries. Distinction of Jaguar the animal and the car. Combination of information that is distributed on the Web. 11
What is an ontology? An ontology defines the basic terms and relations comprising the vocabulary of a topic area, as well as the rules for combining terms and relations to define extensions to the vocabulary Neches, R.; Fikes, R.; Finin, T.; Gruber, T.; Patil, R.; Senator, T.; Swartout, W.R. Enabling Technology for Knowledge Sharing. AI Magazine. Winter 1991. 36-56 An ontology is an explicit specification of a conceptualization Gruber, T. A translation Approach to portable ontology specifications. Knowledge Acquisition. Vol. 5. 1993. 199-220 12
What is an ontology? An ontology is a hierarchically structured set of terms for describing a domain that can be used as a skeletal foundation for a knowledge base B. Swartout; R. Patil; k. Knight; T. Russ. Toward Distributed Use of Large-Scale Ontologies Ontological Engineering. AAAI-97 Spring Symposium Series. 1997. 138-148 An ontology provides the means for describing explicitly the conceptualization behind the knowledge represented in a knowledge base A. Bernaras;I. Laresgoiti; J. Correra. Building and Reusing Ontologies for Electrical Network Applications ECAI96. 12th European conference on Artificial Intelligence. Ed. John Wiley & Sons, Ltd. 298-302 13
What is an ontology? An ontology is a formal, explicit specification of a shared conceptualization Consensual Knowledge Machine-readable Concepts, properties relations, functions, constraints, axioms, are explicitly defined Abstract model and simplified view of some phenomenon in the world that we want to represent Studer, Benjamins, Fensel. Knowledge Engineering: Principles and Methods. Data and Knowledge Engineering. 25 (1998) 161-197 14
Features of an ontology Modelled knowledge about a specific domain Defines A common vocabulary The meaning of terms How terms are interrelated Consists of Conceptualization and implementation Contains Ontological primitives 15
Ontology in Semantic Web Ontology in Semantic Web (cont.) (cont.) RDF Model Property Subject Object
Ontology in Semantic Web Ontology in Semantic Web (cont.) (cont.) RDFs individual subclass class
OWL thing
OWL thing
Web Ontology Language Web Ontology Language OWL stands for Web Ontology Language. The OWL became a formal W3C Recommendation on 10,Feb, 2004.
OWLFull OWLDL OWL Lite
OWL Property Types OWL Property Types has_father has_Father / has_Son son father
OWL Property Types OWL Property Types has_Name Ahmad ^^ xsd:String son
OWL Property Types OWL Property Types
Example Example Place (.pName) occurred_In/occurred_in_which Place (.pName) Event (.eName) Event (.eName) Product (.pdNam) bring output_Of bring output_Of
<?xml version="1.0"?> <rdf:RDF xmlns="http://www.event_example_onto.com#" xml:base="http://www.event_example_onto.com" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:www="http://www.event_example_onto.com.owl#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <owl:Ontology rdf:about="http://www.event_example_onto.com"> <rdfs:comment rdf:datatype="&xsd;string">master ontology</rdfs:comment> </owl:Ontology>
<!-- /////////////////////////////////////////////////////////////////////////////////////// // Object Properties /////////////////////////////////////////////////////////////////////////////////////// --> <!-- http://www.event_example_onto.com.owl#bring --> <owl:ObjectProperty rdf:about=" http://www.event_example_onto.com #bring"> <rdfs:domain rdf:resource="&www;event"/> <rdfs:range rdf:resource="&www;product"/> </owl:ObjectProperty>
<!-- /////////////////////////////////////////////////////////////////////////////////////// // Data properties /////////////////////////////////////////////////////////////////////////////////////// --> <!-- http://www.event_example_onto.com.owl#event_Name --> <!-- http://www.event_example_onto.com.owl#place_Name --> <owl:DatatypeProperty rdf:about="&www;place_Name"> <rdfs:domain rdf:resource="&www;place"/> <rdfs:range rdf:resource="&xsd;string"/> </owl:DatatypeProperty>
<!-- /////////////////////////////////////////////////////////////////////////////////////// // Classes // /////////////////////////////////////////////////////////////////////////////////////// --> <!-- http://www.event_example_onto.com.owl#event --> <owl:Class rdf:about="&www;event"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="&www;bring"/> <owl:allValuesFrom rdf:resource="&www;product"/> </owl:Restriction>
</rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="&www;occurred_In"/> <owl:onClass rdf:resource="&www;place"/> <owl:minQualifiedCardinality rdf:datatype="&xsd;nonNegativeInteger">1</owl:minQualifiedCardinality> </owl:Restriction> </rdfs:subClassOf>
<!-- /////////////////////////////////////////////////////////////////////////////////////// // Individuals /////////////////////////////////////////////////////////////////////////////////////// --> <!-- http://dbpedia.org/resource/Iraq --> <owl:NamedIndividual rdf:about="http://dbpedia.org/resource/Iraq"> <owl:sameAs rdf:resource="&www;The_Republic_of_Iraq"/> </owl:NamedIndividual> <!-- http://www.event_example_onto.com.owl#The_Republic_of_Iraq --> <owl:NamedIndividual rdf:about="&www;The_Republic_of_Iraq"> <rdf:type rdf:resource="&www;place"/> <www:place_Name rdf:datatype="&xsd;string">The Republic of Iraq</www:place_Name> </owl:NamedIndividual> </rdf:RDF>