- From: Dave Reynolds <der@hplb.hpl.hp.com>
- Date: Wed, 01 Sep 2004 12:02:47 +0100
- To: Kianoush Eshaghi <Kianoush.Eshaghi@metadat.at>
- Cc: "'RDF interesting groupe'" <www-rdf-interest@w3.org>
Hi Kianoush: > I think an appropriate RDFS Validator should be able to analyse all > instances of classes, which have been defined in some given RDF > Vocabulary. If by "analyse" you mean "infer the additional type statements based on subClassOf and domain/range declarations" then any of the RDFS processors should do that (Jena, the RDFS-aware stores like 3Store and Sesame etc). > It should be able also to analyse, whether the used > properties in an instance satisfy the definition of domain and renge of > the respective properties, which have been also defined in given RDF > Vocabulary. As Richard points out, the defined behaviour of RDFS is to infer additional type information on the instances from the use of such properties rather than apply them as constraints. The only violation that occurs is when the inferred type is not compatible with the instance type. Since RDFS can't express disjointness of classes this only occurs with datatype values (such as finding an xsd:string value for a property with range xsd:int). RDFS, despite its name, is not a schema language in any normal sense. It is a vocabulary definition language. It is possible to have application specific tools which apply RDFS more strictly than the specs. For example, requiring that an instance be explicitly typed to match domain/range constraints. I do think an RDFS "lint" like that could be useful to help catch some slips, and wouldn't take much to build, but on its own it wouldn't turn RDFS into a real schema language. Dave
Received on Wednesday, 1 September 2004 11:02:57 UTC