1

I found these excercises with solutions, but I do not understand this solution. Can you explain me the Simple Entailment to understand this example: http://cgi.csc.liv.ac.uk/~valli/Comp318/PDF/Entailment.pdf

Given the RDF graph G (expressed in Turtle):

    :u rdfs:subClassOf :v .
    :u rdfs:domain _:n .
    :w rdf:type owl:class .
    :w :a :x .

Is the following graph simple-entailed by G? Explain the answer

    :u rdfs:domain _:m .
    :w :a :x .

Simple Entailment Deduction Rules:

se1:

    u a x   .
    ---------
    u a _:n .

se2:

    u a x   .
    ---------
    _:n a x .

Here is the solution:

By applying se1 to the triple

  :u rdfs:domain _:n .

we obtain the following graph:

   :u rdfs:subClassOf :v .
   :u rdfs:domain _:n .
   :w rdf:type owl:class .
   :w :a :x .
   :u rdfs:domain _:m .

Therefore the graph S

  :u rdfs:domain _:m .
  :w :a :x .

is entailed by G because S ⊆ G

Competo
  • 133
  • 1
  • 11
  • 2
    Can you clarify what you don't understand about the solution? There's really just one step to it, viz., applying se1 to the triple `:u rdfs:domain _:n` to obtain `:u rdfs:domain _:m`. Can you clarify what doesn't make sense? – Joshua Taylor Jan 12 '14 at 22:57
  • What is the connection between :w and :u? How can we apply the se1 to the triple :u rdfs:domain _:n .? Why do we get one graph (:u rdfs:subClassOf :v . :u rdfs:domain _:n . :w rdf:type owl:class . :w :a :x . :u rdfs:domain _:m .) for me here at least 2 different graphs one for ":u" and one for ":w"? – Competo Jan 13 '14 at 13:14
  • 2
    Those aren't `:w` and `:u`, which would be absolute IRIs (since the `:` prefix is defined). Those are _blank nodes_, and act as existential variables. You might find another StackOverflow question, [RDF Graph Entailment](http://stackoverflow.com/q/16561033/1281433), useful here. – Joshua Taylor Jan 13 '14 at 13:17
  • Knowing that `_:foo` is a blank node might make those se1 and se2 rules clearer. Se1 says that whenever you have a triple `subject predicate object` you can _infer_ `subject predicate blank-node` which, since blank nodes are existential variables, is like saying "There exists an `x` such that `subject predicate x`. – Joshua Taylor Jan 13 '14 at 13:20
  • This triple :p :name :nickname. :p :name _:n. means: Every person ":p" has a nickname. So I can say that there exists at least one for each person ":p". But if there's a person, that has no name then you cannot say ":p :name _:n." and so this graph cannot be simple-entailed. Is this true? – Competo Jan 13 '14 at 13:40
  • You may have confused existential and universal variables. A triple `:John :likes :Mary` says that "John likes Mary." From it we may infer the triple `:John :likes _:x` which says that "John likes something," which is _very_ different from saying that "John likes everything." – Joshua Taylor Jan 13 '14 at 13:44

0 Answers0