W3C home > Mailing lists > Public > semantic-web@w3.org > November 2006

RE: rdf:Property used as rdf:object in a triple

From: Hans Teijgeler <hans.teijgeler@quicknet.nl>
Date: Sun, 5 Nov 2006 19:29:42 +0100
To: "'Frank Manola'" <fmanola@acm.org>
Cc: "'Leo Sauermann'" <leo.sauermann@dfki.de>, "'Paul Gearon'" <gearon@ieee.org>, "'SW-forum'" <semantic-web@w3.org>, "'Chris Wilper'" <cwilper@cs.cornell.edu>
Message-ID: <001201c70108$6076e800$6c7ba8c0@hans>

Hi Frank,

The direct reason for this thread is the following:
- In the data model of ISO 15926-2 we model (binary) relationships as
objects with two attributes (say rdf:properties).
- when representing that data model in OWL I represented these relationships
as OWL Classes
- some (knowledgeable) people in our scene maintain that that is not-done in
OWL, and that we must represent our (binary) relationships with
owl:ObjectProperty (actually two, one the inverseOf the other)
- but then comes the problem that we have some 55 situations in the data
model (not counting all sorts of subtypes of Classification (rdf:type) and
of Specialization (rdfs:subClassOf), where a Relationship or a
ClassOfRelationship is required at the rdf:Object location in a triple
- unless we find an elegant solution for this we may have to stick to
representing binary Relationships as OWL Classes
- now you state below: 
QUOTE 
...what you think of as a relationship in the application (like the
relationship between John and Jane) needs to be modeled as an object (thing)
in the data model, because you want to make statements about it (describe
its attributes) and, at least in RDF (and, in fact, in most data models),
the things you make statements about have to be objects (in RDF, resources).

UNQUOTE
- my question to you is: Is representing our binary Relationships as OWL
Classes fall in this category?
- and if not:
	- what did you mean exactly in terms of OWL and RDF?
	- would that representing binary Relationships as OWL Classes be
wrong or disadvantageous in some way?

Regards,
Hans


-----Original Message-----
From: Frank Manola [mailto:fmanola@acm.org] 
Sent: Sunday, November 05, 2006 18:33
To: Hans Teijgeler
Cc: 'Leo Sauermann'; 'Paul Gearon'; 'SW-forum'; 'Chris Wilper'
Subject: Re: rdf:Property used as rdf:object in a triple

Hans--

Technically there is more than one kind of reification.  You don't
necessarily want to use "RDF reification" (talking about individual
statements, and using the RDF reification vocabulary), but you do, I think,
want to use the generic idea of "reification" in information modeling (you
can Google it).  Specifically, the examples you've cited involve treating
connections and relationships between John and Jane as things you want to
make statements about (or "objects in the domain of discourse", if you're
reading a logic text), and that's a form of reification (whether you use the
RDF concept of reification or not).  The thing that often causes some
difficulty is this:  any data model (object model, information model, etc.;
predicate logic is an example) provides a way to describe "objects"
(entities,  
things, ...) and attributes of/relationships between those objects.   
RDF provides "resources" to represent (actually denote) things, and
statements to represent attributes and relationships.  Your job as an
information modeler is to map the objects, attributes, and relationships you
want to describe in your application to the  
objects, attributes, and relationships provided by the data model.   
But those aren't always in one-to-one correspondence.  Here, for example,
what you think of as a relationship in the application (like the
relationship between John and Jane) needs to be modeled as an object (thing)
in the data model, because you want to make statements about it (describe
its attributes) and, at least in RDF (and, in fact, in most data models),
the things you make statements about have to be objects (in RDF, resources).

--Frank

On Nov 5, 2006, at 11:33 AM, Hans Teijgeler wrote:

> Hi Leo,
>
> In your 1st link I read:
> It may be natural to think of RDF reification when representing n- ary 
> relations. We do not want to use the RDF reification vocabulary to 
> represent n-ary relations in general for the following reasons.
> The RDF reification vocabulary is designed to talk about statements— 
> individuals that are instances of rdf:Statement. A statement is a 
> object, predicate, subject triple and reification in RDF is used to 
> put additional information about this triple. This information may 
> include the source of the information in the triple, for example.
> In n-ary relations, however, additional arguments in the relation do 
> not usually characterize the statement but rather provide additional 
> information about the relation instance itself. Thus, it is more 
> natural to talk about instances of a diagnosis relation or a purchase 
> rather than about a statement. In the use cases that we discussed in 
> the note, the intent is to talk about instances of a relation, not 
> about statements about such instances.
>
> In your 2nd link I read in chapter 4.3:
> For one thing, it is important to note that in the conventional use of 
> reification, the subject of the reification triples is assumed to 
> identify a particular instance of a triple in a particular RDF 
> document, rather than some arbitrary triple having the same subject, 
> predicate, and object. . . . . . Thus, to fully support this 
> convention, there needs to be some means of associating the subject of 
> the reification triples with an individual triple in some document. 
> However, RDF provides no way to do this.
>
> This does not increase my enthousiasm for reification.
>
> Besides that I still see no sign that one can generalize this in an 
> OWL schema for validation purposes.
>
> Regards,
> Hans
>
> From: Leo Sauermann [mailto:leo.sauermann@dfki.de]
> Sent: Sunday, November 05, 2006 15:55
> To: Hans Teijgeler
> Cc: 'Paul Gearon'; 'SW-forum'; 'Chris Wilper'; Manola, Frank
> Subject: Re: rdf:Property used as rdf:object in a triple
>
> Hi Hans,
>
> have you looked into Reification and did you try it out for your 
> problem?
>
> checkout reification, it will do what you need.
> http://www.w3.org/TR/swbp-n-aryRelations/#RDFReification
> http://www.w3.org/TR/2004/REC-rdf-primer-20040210/#reification
>
> Or read this article, which explains why Reification may be what you 
> may need:
> or if you should go for indivivduals
> http://www.w3.org/TR/swbp-n-aryRelations/
>
>
> greetings
> Leo
>
> Es begab sich aber da Hans Teijgeler zur rechten Zeit 05.11.2006
> 10:47 folgendes schrieb:
>> Hi Paul,
>>
>> Thanks for your response! (and thanks as well to Chris and Frank).
>>
>> Let me explain this with a simple example:
>> John isInvolvedWith Jane
>> Jane's father Pete givesApprovalTo that relationship This means that 
>> the isInvolvedWith relationship is the rdf:object of the predicate 
>> 'givesApprovalTo'.
>>
>> We then also want to represent the owl:Restriction that Fathers 
>> approve such relationships of their daughters (granted, it's a bit 
>> old-fashioned, but it's just an example).
>>
>> This example is not rare. Another one is:
>> Nozzle N1 isWeldedTo Vessel V1
>> that welded connection isInspectedBy John I guess that I should start 
>> using reification, but quite honestly I am too dumb to understand the 
>> text in [1] [1] http://www.w3.org/TR/rdf-mt/#Reif
>>
>> Is reification at all possible in an OWL environment? It seems not to 
>> be the case.
>>
>> Mind you, we define "templates" with Restrictions in OWL that will be 
>> used to validate the zillions of instances of those templates in RDF. 
>> So for example we define, using 15926 model lingo, a template for 
>> DirectConnection of two PossibleIndividuals, and make sure, using 
>> owl:Restrictions, that any instance of that template has an instance 
>> of PossibleIndividual at both sides. These templates can be 
>> specialized by onProperty restrictions to, for example, a template 
>> for welded connections that can only be between instances of 
>> PossibleIndividual that can be welded at all.
>>
>> I hope I haven't made this too complex :-)
>>
>> Regards,
>> Hans
>>
>> ____________________
>> OntoConsult
>> Hans Teijgeler
>> ISO 15926 specialist
>> Netherlands
>> +31-72-509 2005
>> www.InfowebML.ws
>> hans.teijgeler@quicknet.nl
>>
>>
>> From: Paul Gearon [mailto:gearon@ieee.org]
>> Sent: Saturday, November 04, 2006 23:56
>> To: Hans Teijgeler
>> Cc: SW-forum
>> Subject: Re: rdf:Property used as rdf:object in a triple
>>
>>
>> On Nov 4, 2006, at 6:25 AM, Hans Teijgeler wrote:
>>
>>> Folks,
>>>
>>> rdf:Property is a subClassOf rdfs:Resource, so syntactically a 
>>> property could be the rdf:object of a triple.
>>>
>>> My question is, whether or not there is something against doing that 
>>> from a semantics/reasoning point of view.
>>>
>>> Can anybody shed some light on this?
>>
>> There's certainly no rule against it.  Reification requires it.   
>> So does rdfs:subPropertyOf.
>>
>> As for semantics... you can get away with a lot in RDF.  But if you 
>> want to keep things as valid OWL-Lite or OWL-DL then you have to be 
>> more careful, as properties are treated a little differently to other 
>> resources.  Properties only start getting back the "privileges" of 
>> other types of resources (like classes) when you get up to OWL-Full.
>>
>> Paul
>>
>> --
>> No virus found in this incoming message.
>> Checked by AVG Free Edition.
>> Version: 7.5.430 / Virus Database: 268.13.28/518 - Release Date:  
>> 04-Nov-06 17:30
>>
>>
>> --
>> No virus found in this outgoing message.
>> Checked by AVG Free Edition.
>> Version: 7.5.430 / Virus Database: 268.13.28/518 - Release Date:  
>> 04-Nov-06 17:30
>
>
> -- ____________________________________________________ DI Leo 
> Sauermann http://www.dfki.de/~sauermann DFKI GmbH P.O. Box 2080
> Fon: +49 631 205-3503 67608 Kaiserslautern Fax: +49 631 205-3472 
> Germany Mail: leo.sauermann@dfki.de 
> ____________________________________________________
> --
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.430 / Virus Database: 268.13.28/518 - Release Date: 04-
> Nov-06 17:30
>
>
> --
> No virus found in this outgoing message.
> Checked by AVG Free Edition.
> Version: 7.5.430 / Virus Database: 268.13.28/518 - Release Date: 04-
> Nov-06 17:30

--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.430 / Virus Database: 268.13.28/518 - Release Date: 04-Nov-06
17:30
 

-- 
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.430 / Virus Database: 268.13.28/518 - Release Date: 04-Nov-06
17:30
 
Received on Sunday, 5 November 2006 18:30:18 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 21:45:12 GMT