W3C home > Mailing lists > Public > www-rdf-interest@w3.org > July 2002

Re: R: questions on assertion

From: Wolfram Conen <conen@gmx.de>
Date: Wed, 10 Jul 2002 15:07:48 +0200
Message-ID: <3D2C31A4.A0E3A211@gmx.de>
To: Franco Salvetti <franco.salvetti@tiscalinet.it>
CC: www-rdf-interest@w3.org, phayes@ai.uwf.edu, giles.hogben@jrc.it, DPawson@rnib.org.uk, Alessandro Provetti <provetti@gongolo.usr.dsi.unimi.it>

Hello Franco!

Let me resort below to the MT [1] for an approach to an answer:

Franco Salvetti wrote:
> <rdf:Description rdf:about="http//example.org/ont#p">
>   <rdfs:domain rdf:resource="http://example.org/ont#A"/>
>   <rdfs:domain rdf:resource="http://example.org/ont#B"/>
> </rdf:Description>
> <rdf:Description rdf:about="http//example.org/ont#q">
>   <rdfs:subPropertyOf rdf:resource="http://example.org/ont#p"/>
>   <rdfs:domain rdf:resource="http://example.org/ont#C"/>
> </rdf:Description>
> <rdf:Description rdf:about="http//example.org/ont#something">
>   <ont:q rdf:resource="http://example.org/ont#blabla"/>
> </rdf:Description>

First a brief rewrite for readability:

(1) domain(A,p), domain(B,p)
(2) subPropertyOf(q,p)
(3) statement(something,q,blabla)

> 1) What is the domain of ont:p?

see below.

> 2) What is the domain of ont:q?

We know from the rdfs closure rules of the MT [1] (For readability, I
use the re-write of the closure rules from [2]) is that

rdfs6:  subProperty(a,b), statement(x,a,y) =>  statement(x,b,y)


rdfs2:  statement(x,a,y), domain(z,a) => instanceOf(x,z)

Therefore, after applying the closure rules, every resource that was
used as an subject in a statement with q in predicate position will
necessarily be an instance of class C AND of BOTH classes A and B. 

Note that, on first sight, this seems to imply that, after applying the
closure rules, C will be a "subset" of A and a "subset" of B. This is,
however, not necessarily so (there can be members of C that are not used
as subjects in statements with q). What we know, however, is that the
"Urbild" of q (that is the set of resource to which q is actually
applied in our collection of statements under consideration) is a
"subset" of both classes, A and B (in other words: a "subset" of (A n

(To answer your question (1): the subject of any statement having p in
predicate position will be an instance of both classes A and B (after
applying the closure rules)

> 3) How can I verify that ont:something is in the domain of ont:q?

Note that with the current "axiomatic" interpretation of range/domain
"constraints", it is not (anymore) useful to want to verify (validate)
this: it is a (logical) consequence of the closures that the subject of
ANY statement with ont:q in predicate position is (at least) an instance
of the classes given as a "domain" of ont:q and the classes given as a
domain of the superclasses of q (this is to say that NOTHING can ever
violate a domain "constraint", or, in other words: whatever you use in
subject position will be (will become) an instance of the domain

This is also an (perhaps non-obvious) answer to the rest of your
(interesting) questions/thoughts, I think (I can make this more precise
if necessary, though, if you stick to the semantics as described in the
MT, everything follows straightforwardly. If this is what you
expected/want/like is, of course, another question)


[1] http://www.w3.org/TR/rdf-mt/
(a little bit outdated, sorry, but maybe still helpful in some respects)
Received on Wednesday, 10 July 2002 09:04:37 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:07:41 UTC