Re: R: questions on assertion

Hello Franco!

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

Franco Salvetti wrote:
> <rdf:Description rdf:about="http//">
>   <rdfs:domain rdf:resource=""/>
>   <rdfs:domain rdf:resource=""/>
> </rdf:Description>
> <rdf:Description rdf:about="http//">
>   <rdfs:subPropertyOf rdf:resource=""/>
>   <rdfs:domain rdf:resource=""/>
> </rdf:Description>
> <rdf:Description rdf:about="http//">
>   <ont:q rdf:resource=""/>
> </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)


(a little bit outdated, sorry, but maybe still helpful in some respects)

Received on Wednesday, 10 July 2002 09:04:37 UTC