- Formal descriptions providing human users a shared understanding of a given domain.
- A controlled vocabulary.
- Formally defined so that it can also be processed by machines.
- Also, Logical semantics that enables reasoning.
- The reasoning is the key to different important tasks of Web data management, in particular,
- to answer queries (over possibly distributed data).
- Moreover, to relate objects to different data sources enabling their integration.
- Also, to detect inconsistencies or redundancies.
- to refine queries with too many answers, or to relax queries with no answer.
Classes and class hierarchy
Backbone of the Ontologies
- Also, The Academic staff is a Class ( A class will be interpreted as a set of objects )
- academic staff is a Staff (is a is interpreted as set inclusion)
Declaration of relations with their signature ( Relations will be interpreted as binary relations between objects)
TeachesIn(AcademicStaff, Course) if one states that “X TeachesIn Y ”, then X belongs to AcademicStaff and Y of Course,
- Classes have instances
- Also, Dupond is an instance of the class Professor
- Also, it corresponds to the fact: Professor(Dupond)
- Relations also have instances
- (Dupond, CS101) is an instance of the relation TeachesIn
- it corresponds to the fact: TeachesIn(Dupond,CS101)
- Moreover, The instance statements can be seen as (and stored in) a database
Ontology = schema + instance
- The set of class and relation names
- Also, The signatures of relations and also constraints
- The constraints that are used for two purposes
- checking data consistency (like dependencies in databases)
- inferring new facts
- The set of facts
- Moreover, The set of base facts together with the inferred facts should satisfy the constraints
Ontology (i.e., Knowledge Base) = Schema + Instance
3 Ontologies languages for the Web
- RDF: a very simple ontology language
- RDFS: Schema for RDF
- Can be used to define richer ontologies
- OWL: a much richer ontology language
RDF: Resource Description Framework
Also, RDF facts are triplets
<: Dupond: Leads: CSDept >
<: Dupond: TeachesIn: UE111 >
<: Dupond: TeachesTo: Pierre >
<: Pierre: EnrolledIn: CSDept >
<: Pierre: RegisteredTo: UE111 >
<: UE111: OfferedBy: CSDept >
A set of RDF facts defines
- a set of relations between objects
- Moreover, an RDF graph where the nodes are objects
- Also, A triplet hs P oi interpreted in first-order logic (FOL) as a fact P (s, o)
RDFS: RDF Schema
- the schema in RDF is super simplistic
- Moreover, An RDF Schema defines the schema of a richer ontology
- Also, Do not get confused: RDFS can use RDF as syntax, i.e., RDFS statements can themselves expressed as RDF triplets using some specific properties. And Also, objects used as RDFS keywords with a particular meaning.
Also, Declaration of classes and subclass relationships:
- <Staff rdf:type rdfs:Class> <Java rdfs:subClassOf CSCourse>
Moreover, Declaration of instances (beyond the pure schema)
- <Dupond rdf:type AcademicStaff>
Declaration of relations (properties in RDFS terminology)
- <RegisteredTo rdf:type rdf:Property>
Also, Declaration of subproperty relationships
- <LateRegisteredTo rdfs:subPropertyOf RegisteredTo>
So, Declaration of domain and range restrictions for predicates
- <TeachesIn rdfs:domain AcademicStaff>
- <TeachesIn rdfs:range Course>
- TeachesIn( AcademicStaff , Course)