W3C home > Mailing lists > Public > www-webont-wg@w3.org > June 2003

Re: ISSUE 5.3 Semantic Layering

From: Jos De_Roo <jos.deroo@agfa.com>
Date: Sun, 29 Jun 2003 23:39:48 +0200
To: "Jeremy Carroll <jjc" <jjc@hpl.hp.com>
Cc: www-webont-wg@w3.org
Message-ID: <OF1F09FD16.93C98E9E-ONC1256D54.0076BF0E-C1256D54.00770192@agfa.be>


Jeremy wrote:
> If I use the translation rules on individual() in an
> appropriate way I should  get:
> <foo> <a> <bar> .
> entails
> <foo> <a> _:b .
> _:b rdf:type owl:Thing .
>
> There may be bugs in the transformation rules that don't
> do that, although I believe Peter has made some changes there.
> The entailment is now no longer content free unless owl:Thing
> is the same as rdfs:Resource.
> In particular if we don't know that owl:Class rdfs:subClassOf
> owl:Thing then the entailment no longer follows.

That's right and indeed resolves that bug; nifty ;-)


> Jeremy:
> >> How much baby goes out with the bath water?
>
> Peter:
> >However, you would then need to assert, for example, that
> >rdfs:Class was an owl:Class before you would get many OWL
> >inferences from it.  In essence, you would have to do all
> the same typing you need to do in OWL DL.
>
> An example would be:
>
> eg:foo rdf:type owl:Class .
> eg:foo dc:creator "Jos" .
> eg:madeByJos owl:equivalentClass _:r .
> _:r rdf:type owl:Restriction .
> _:r owl:onProperty dc:creator
                               ^^ .
> _:r owl:hasValue "Jos" .
>
>
> currently entails, but would not:
>
> eg:foo rdf:type eg:madeByJos .
>
> because restrictions intersections unions complements are
> scoped by owl:Thing, not rdfs:Resource, nor the universe.

Well, assuming nothing about owl:Class and owl:Thing we get

 {
  <http://www.agfa.com/w3c/euler/rdfs-rules#rdfs9>.
    {[ iw:Variable "?A"] = _:r_1.
     [ iw:Variable "?B"] = eg:madeByJos.
     [ iw:Variable "?A"] rdfs:subClassOf [ iw:Variable "?B"]} =>
  {_:r_1 rdfs:subClassOf eg:madeByJos}.
   {
    <http://www.agfa.com/w3c/euler/owl-rules#owl9r2>.
      {[ iw:Variable "?R"] = _:r_1.
       [ iw:Variable "?P"] = dc:creator.
       [ iw:Variable "?R"] owl:onProperty [ iw:Variable "?P"]} =>
    {_:r_1 owl:onProperty dc:creator}.
      {[ iw:Variable "?R"] = _:r_1.
       [ iw:Variable "?Y"] = "Jos".
       [ iw:Variable "?R"] owl:hasValue [ iw:Variable "?Y"]} =>
    {_:r_1 owl:hasValue "Jos"}.
      {[ iw:Variable "?X"] = eg:foo.
       [ iw:Variable "?P"] = dc:creator.
       [ iw:Variable "?Y"] = "Jos".
       [ iw:Variable "?X"] [ iw:Variable "?P"] [ iw:Variable "?Y"]} =>
    {eg:foo dc:creator "Jos"}.
    [ iw:Variable "?S"] = eg:foo.
    [ iw:Variable "?A"] = _:r_1.
    [ iw:Variable "?S"] a [ iw:Variable "?A"]} =>
  {eg:foo a _:r_1}}  =>
{eg:foo rdf:type eg:madeByJos}.


Also all the other test cases in Test that
we could run so far are still running without
assumptions about owl:Class and owl:Thing.


--
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Sunday, 29 June 2003 17:40:07 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:01 GMT