Tom Van Eetvelde wrote: > > > I would like to introduce now the class 'carnivore' as subclass of animal > > > with the restriction that 'carnivore' only eats 'animal'. > > > > This is not possible in RDFS. You can not restrict domain/range > > of a property locally (= in a class definition). > > This is exactly what my question is all about: why should this not be possible? Why has W3C put such > restricitons on the use of 'domain'? I agree that such limitation is a shame, but the aim of RDF-Schema is *not* to define a full-featured logic language... By the way, the example you propose : <rdfs:Class rdf:ID="Carnivore"> <rdfs:subClassOf rdf:resource = "Animal"/> <s:eats rdf:resource="#Animal"/> </rdfs:Class> is definitely wrong (IMHO) : it would mean that the set of all carnivors (an abstract entity) eats itself ! What you really want to express is : each *instance* of that set eats only animals. So you want to characterize a class by its instances properties, the way Description Logics do : carnivore <= animal AND (ALL eat IN animal) (may DL people excuse me if this is approximative... I'm not a DL expert...) This is a useful construct, but not a trivial one, so RDFS designers considered it out of the scope of RDFS. And I think they're right... Pierre-Antoine -- Sometimes I think the surest sign that intelligent life exists elsewhere in the universe is that none of it has tried to contact us. (Bill Watterson -- Calvin & Hobbes)Received on Thursday, 12 October 2000 08:06:23 UTC
This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:44:25 UTC