There is Semantics in RDF(S). To express something about an individual, all the Semantics is given in terms of Properties and the values of these properties which means the instances that are behind this properties that are connected to the terms defined in a vocabulary.

The Semantics lies within the properties and the values of thee properties and hwo they are interpreted.

Specific instances or properties like hasName does not tell a machine anything, because the machine has no idea what is hasName, it has an idea what is rdf:type and rdfs:Class, but it has no idea what for instance is hasName. It only knows that hasName connects something that belongs to a certain Class with something that is for example a Literal string, but is has no idea what is the meaning of this string.

Conclusions can be reached through to deduction. It is possible to entail or infer that something that is connected via a specific property must belong to a specific Class if the domain and the range of this property is given. Therefore it can be deduced that a certain instance if is used with a known property must be of a certain class. Therefore one can deduce entity-class Memberships form the domain of its Properties. For example that something that takes place must be of type Event (a Class).

Besides deducing this fact it is also possible to deduce the Type of the Object if the range is known (i.e. Class restriction of the range).

A if a Relation Property is of rdfs:subClassOf one can deduce the type of its subclasses from a Class Hierarchy.

The same logic of course also applies to Properties Hierarchy via the rdfs:subPropertyOf, e.g. deduction that a persion that isMotherOf is also siParentOf another Person.

So RDF and RDFS which are only of limited semantic explicitly, which are only small knowledge bases with small Semantics makes it already possible to deduce new knowledge that was previously hidden somewhere in the knowledge base and was not laying there explicit. This one can deduce new facts and make it explicit. This is Reasoning, i.e. intelligent behavior as it allows to deduce new Facts from already given Facts. Reasoning makes it possible to deduce hidden facts that somehow hidden in the knowledge base.

Facts can be deduced from a Knowledge base via Logic. For instance whether bird(tweety) can be deduced from the following Knowledge Base is solved in the following.

  1. (∀X) feathers(X) → bird(X)
  2. feathers(tweety)

  3. (∃X)¬feathers(X) v bird(X)

  4. feathers(tweety)

The Causal form of the Knowledge Base is:

  1. {¬feather(X), bird(X)}
  2. {feather(tweety)}

To show that a formula can be deduced from a knowledge Base, the negated formula has to be added to the Knowledge Base:

  1. {¬bird(tweety)}


  1. (from Clauses 1. and 3.) [X/tweety]: {¬feathers(tweety)}
  2. (from Clauses 2. and 4): {⊥}

A Contradicton in Φ ∧ ¬ψ (Knowledge base and negated Formula) was found, therefore the orignal Formula can be deduced from the Knoweldge Base.

Edit tutorial

Comment on This Data Unit