Re: subPropertyOf

On Thu, 24 Aug 2000, Francois-Paul Servant wrote:

> I imagine that it is possible to declare that dc:Subject  (for
> instance) is a subProperty of a property myProp that I define
> in a schema of my own. ("it is easy for anyone to say anything
> they want about any existing resource" ...). Is the following a
> correct syntax for that purpose:
> 
> <rdf:Description about="http://...dublincore#Subject">
>       <rdfs:subPropertyOf rdf:resource="#myProp"/>
> </rdfs:Description>

That should be correct, yes. Or at least, that's how we do it as
well in our RDF schema for OIL.

> Assuming that this kind of declaration is actually allowed and
> makes sense, I come to another question, regarding cycles in
> subPropertyOf hierarchies, cycles that are forbidden by RDFS :
> "A property can never be declared to be a subproperty of
> itself, nor of any of its own subproperties." (RDFS 2.3.3)
> 
> This puzzles me a little bit, but I am confused about schemas,
> and I therefore could be missing something. My question is in
> fact about the link between schemas and applications dealing
> with them : I have the feeling that one application could be
> able to make something useful using a property p1 defined as a
> subproperty of a property p2, while another application would
> use p2 as a subproperty of p1.
> 
> Imagine for instance that you want to develop an application
> that produces and uses RDF files containing statements using a
> "keyword" property. You may want to define this property as a
> subproperty of dc:subject. This way, any application able to
> deal with dc:subject will be able to make something with your
> files.
> 
> But you also think that your application could make good use of
> any statement in any RDF file that uses dc:subject, as if it
> was a statement involving your own "keyword" property. In other
> words, you want your application to consider dc:Subject as a
> subProperty of "keyword", and you want therefore to declare
> that in a schema.
> 
> Does this makes sense?

What you seem to doing here is using a cycle to declare
equivalence between properties. And yes, I do think it makes
sense. Within our own work on the OIL RDF schema we hit upon this
same problem with rdfs:subClassOf, where we wanted to allow
cycles to express equivalence between classes. 

In other words: this constraint limits the kinds of models that
can be represented in RDF in a way which I think is undesirable.

The rationale for adding it in the first place probably has to do
with the complexity of inferencing over the schema, but on the
other hand parsing and validating is made more complex. I would
like to know if there are other considerations for imposing this
constraint on these properties, since - as I see it - the
benefits are doubtful.

Regards,

Jeen
-- 
                                                    Vrije Universiteit
						   Faculty of Sciences
Jeen Broekstra              division of Mathematics & Computer Science
jbroeks at cs.vu.nl                                 de Boelelaan 1081a
http://www.cs.vu.nl/~jbroeks        1081 HV Amsterdam, the Netherlands

Received on Thursday, 24 August 2000 03:27:14 UTC