W3C home > Mailing lists > Public > public-owl-dev@w3.org > October to December 2006

RE: Additions to scope of OWL1.1

From: Hans Teijgeler <hans.teijgeler@quicknet.nl>
Date: Tue, 28 Nov 2006 12:30:38 +0100
To: "'Christine Golbreich'" <Christine.Golbreich@univ-rennes1.fr>, "'Parsia, Bijan'" <bparsia@cs.man.ac.uk>
Cc: <public-owl-dev@w3.org>
Message-ID: <000001c712e0$a486cb20$6c7ba8c0@hans>

Christine, Bijan,

May I ask you to give a response to my mail below?
Perhaps it was rather dumb of me to bring this up, but then please tell me
so.
The problem we have is no less real, though. Is there a way out?

Regards,
Hans 

-----Original Message-----
From: Hans Teijgeler [mailto:hans.teijgeler@quicknet.nl] 
Sent: Friday, November 24, 2006 12:39
To: 'Christine Golbreich'
Cc: 'public-owl-dev@w3.org'; 'Parsia, Bijan'
Subject: RE: Additions to scope of OWL1.1

Hi Christine,

Thank you for your detailed response! Being new to the world of OWL1.1 I
have been chewing on it for some time, because I can't escape the impression
that by adding so many layers I miss some of the rationale of 1.1. But I'll
keep learning. I feel that I must tiptoe in this forum, because my knowledge
of OWL is certainly not at par with that of most of you. I merely try to
make it work for the industry.

It is interesting that in your ontology below you represent [:Mary
isInvolvedWith :Pete] by a class Involvement (like we do), in order to be
able to represent the Russian doll [:Joe approves [:Mary isInvolvedWith
:Pete]]. ("Russian doll" because one can think of the gossip of the town:
[:Joan heardThat [[:Joe approves [:Mary isInvolvedWith :Pete]]].

The problem is this: 

Assume that we have (copying part of your listing):

  <owl:SymmetricProperty rdf:about="#isInvolved">
    <rdfs:domain rdf:resource="#Person"/>
    <owl:inverseOf rdf:resource="#isInvolved"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:range rdf:resource="#Person"/>
  </owl:SymmetricProperty>

and that we have a valid instance [1]:

  <Person rdf:ID="Mary">
    <isInvolved rdf:resource="#Pete"/>
  </Person>

and then, some time later when Joe (the father of Mary) is told by Mary
about that involvement, we want to put on record that he approves it. What
then? Using your listing again we could ALSO create the record [2](we don't
throw away the old one):

  <Involvement rdf:ID="Involvement_5">
    <involved1 rdf:resource="#Mary"/>
    <involved2 rdf:resource="#Pete"/>
  </Involvement>

and:

  <Person rdf:ID="Joe">
    <approves rdf:resource="#Involvement_5"/>
  </Person>

How then can we tell any reasoner that records [1] and [2] are semantically
(semi?)identical?

Regards,
Hans

-----Original Message-----
From: Christine Golbreich [mailto:Christine.Golbreich@univ-rennes1.fr]
Sent: Friday, November 24, 2006 9:52
To: Hans Teijgeler; Parsia, Bijan
Cc: public-owl-dev@w3.org
Subject: Re: Additions to scope of OWL1.1


> We could use an ObjectProperty AND a Relationship class, but then we 
> have no way to tell that a particular instance of the one is 
> semantically equivalent to a particular instance of the other. It would
require a.k.a.
> cross-over between equivalentClass and equivalentProperty.

Find below a small OWL1.1 ontology, indeed using reification (quite similar
to yours) but more constrained. What is missing ?
I am not sure about what you need/want to express Could you be more explicit
about your problem : "to tell that a particular instance of the one is
semantically equivalent to a particular instance of the other" ?
I also asked for some extensions to n-ary relations at the OWL1.1 meeting.
as we also used reifications instead.
In my opinion this should be dealt in a future version, whatever 1.1 or 2.0,
or other But we should provide clear examples of our strong needs of it.
So I completely join Bijan encouraging you "to write up your requirements
with lots of examples and some idea of what you want it all to mean and
submit it to  OWLED2007 (CFP coming soon!)."

Christine

  <owl:Class rdf:ID="Involvement">
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Restriction>
            <owl:cardinality
rdf:datatype="http://www.w3.org/2001/XMLSchema#int">1</owl:cardinality>
            <owl:valuesFrom rdf:resource="#InvolvedPerson"/>
            <owl:onProperty>
              <owl:ObjectProperty rdf:ID="involved1"/>
            </owl:onProperty>
          </owl:Restriction>
          <owl:Restriction>
            <owl:onProperty>
              <owl:ObjectProperty rdf:ID="involved2"/>
            </owl:onProperty>
            <owl:valuesFrom rdf:resource="#InvolvedPerson"/>
            <owl:cardinality
rdf:datatype="http://www.w3.org/2001/XMLSchema#int">1</owl:cardinality>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
  </owl:Class>

  <owl:Class rdf:ID="InvolvedPerson">
    <owl:equivalentClass>
      <owl:Class>
        <owl:intersectionOf rdf:parseType="Collection">
          <owl:Class rdf:ID="Person"/>
          <owl:Restriction>
            <owl:onProperty>
              <owl:SymmetricProperty rdf:ID="isInvolved"/>
            </owl:onProperty>
            <owl:someValuesFrom rdf:resource="#Person"/>
          </owl:Restriction>
        </owl:intersectionOf>
      </owl:Class>
    </owl:equivalentClass>
  </owl:Class>

  <owl:ObjectProperty rdf:about="#involved1">
    <rdfs:domain rdf:resource="#Involvement"/>
    <rdfs:range rdf:resource="#InvolvedPerson"/>
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:about="#involved2">
    <rdfs:domain rdf:resource="#Involvement"/>
    <rdfs:range rdf:resource="#InvolvedPerson"/>
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="isFather">
    <rdfs:domain rdf:resource="#Person"/>
    <rdfs:range rdf:resource="#Person"/>
  </owl:ObjectProperty>

  <owl:ObjectProperty rdf:ID="approve">
    <rdfs:range rdf:resource="#Involvement"/>
    <rdfs:domain rdf:resource="#Person"/>
  </owl:ObjectProperty>

  <owl:SymmetricProperty rdf:about="#isInvolved">
    <rdfs:domain rdf:resource="#Person"/>
    <owl:inverseOf rdf:resource="#isInvolved"/>
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
    <rdfs:range rdf:resource="#Person"/>
  </owl:SymmetricProperty>

  <InvolvedPerson rdf:ID="Mary">
    <isInvolved>
      <InvolvedPerson rdf:ID="Pete">
        <isInvolved rdf:resource="#Mary"/>
      </InvolvedPerson>
    </isInvolved>
  </InvolvedPerson>

  <Involvement rdf:ID="Involvement_5">
    <involved1 rdf:resource="#Mary"/>
    <involved2 rdf:resource="#Pete"/>
  </Involvement>

  <Person rdf:ID="Joe">
    <isFather rdf:resource="#Mary"/>
    <approve rdf:resource="#Involvement_5"/>
  </Person>


----- Original Message -----
From: Hans Teijgeler
To: Parsia, Bijan
Cc: public-owl-dev@w3.org
Sent: Thursday, November 23, 2006 9:55 PM
Subject: Additions to scope of OWL1.1


Bijan,

Is the scope definition of OWL1.1 closed, or are proposals for additions
still possible?

In the world of ISO 15926 we are struggling with the problem that in RDF we
cannot model something like:

    :Joe isFatherOf :Mary
    :Mary isInvolvedWith :Pete
    :Joe approves [:Mary isInvolvedWith :Pete]

Often it is necessary to say something about a relationship between two
individuals (relations involving relations, like above example), with the
requirement to constrain that in an OWL schema.

ISO 15926 uses classes for (binary) relationships. These classes have two
properties, the ranges of which coincide with the domain and range of an
owl:ObjectProperty. For example:

    :Mary isInvolvedWith :Pete

maps to:

    <Involvement rdf:ID="ME329800">
        <involved1 rdf:resource="#Mary"/>
        <involved2 rdf:resource="#Pete"/>
    </Involvement>

where any subsequent approval of this relationship can be done like:

    <Approval rdf:ID="ME324199">
        <approved rdf:resource="#ME329800"/>
        <approver rdf:resource="#Joe"/>
    </Approval>

We could use an ObjectProperty AND a Relationship class, but then we have no
way to tell that a particular instance of the one is semantically equivalent
to a particular instance of the other. It would require a.k.a. cross-over
between equivalentClass and equivalentProperty.

This may be way out of line for the OWL1.1 exercise. In that case I
apologize for taking your time.

Regards,
Hans
____________________
OntoConsult
Hans Teijgeler
ISO 15926 specialist
Netherlands
+31-72-509 2005
www.InfowebML.ws
hans.teijgeler@quicknet.nl




--
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.430 / Virus Database: 268.14.14/547 - Release Date: 22-Nov-06
17:41

--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.430 / Virus Database: 268.14.14/548 - Release Date: 23-Nov-06
15:22
 
  

-- 
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.430 / Virus Database: 268.14.14/548 - Release Date: 23-Nov-06
15:22
 

-- 
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.430 / Virus Database: 268.14.19/555 - Release Date: 27-Nov-06
18:09
 
Received on Tuesday, 28 November 2006 11:31:18 GMT

This archive was generated by hypermail 2.3.1 : Wednesday, 27 March 2013 09:32:53 GMT