- From: Jeen Broekstra <jbroeks@cs.vu.nl>
- Date: Thu, 24 Aug 2000 09:27:04 +0200 (CEST)
- To: Francois-Paul Servant <hypersol@micronet.fr>, www-rdf-interest@w3.org
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