Re: log:forSome/#rdfms-identity-anon-resources

Graham Klyne wrote:
[...]
> (1) Unknown binding...
[...]
> Following this line, any pair of names can bind to the same object in the
> domain of interpretation that matches what we know about them, so from your
> examples:
> 
> [[[
> <http://skolem.example#432oj34oij2o3ijo23j>
> <http://purl.org/dc/elements/1.1/title> "Fractals Everywhere" .
>   :
> ]]]
> 
> and
> 
> [[[
> <http://booksRus.example/inv2001-06-25#item342323>
> <http://purl.org/dc/elements/1.1/title> "Fractals Everywhere" .
>   :
> ]]]
> 
> Can be matched by an interpretation in which
> <http://skolem.example#432oj34oij2o3ijo23j> and
> <http://booksRus.example/inv2001-06-25#item342323> indicate the same value.

But that's the case only for *some* interpretations;
using the formula in existentially-quantified
form, before skolemiziation, *all* interpretations
that satisfy the bookseller's database satisfy
the query; i.e. going from one to the other
is a valid inference.

> The problem here seems to be one of computation rather than logic:  if
> *any* pair of constants must be tested to see if they match the same
> conditions, then the search space becomes impossibly large for a practical
> problem.

No, it's a problem of logic: going from
	(title item34 "f a")
to
	(title sk1 "f a")
is not a valid inference; but going from

	(title item34 "f a")
to
	(exists (?x0) (title ?x0 "f a"))
is.



>  So the information you want to preserve would seem to be that
> only some of the names are to be considered as possibly equivalent to other
> names, in order that the query can be  resolved in reasonable time.
> 
> (2) Variable terms
> 
> The model theories I have seen distinguish between constant names and
> variable names:  the meaning of a constant name is defined entirely by an
> interpretation.  The meaning of a variable name is defined by the
> interpretation AND some variable substitution.

exactly.

> It seems to me that your "anonymous" node could be viewed as a node named
> by a variable.  The statement containing such a name would be satisfiable
> under a given interpretation iff there exists a substitution of a value in
> the domain of interpretation for the variable that makes the target
> expression true.

Yup; that's what I'm saying when I claim that

_:g0 <http://purl.org/dc/elements/1.1/title> "Fractals Everywhere" .

can be writtein in KIF as

(exists (?x0 )
  (PropertyValue http\:\/\/purl\.org\/dc\/elements\/1\.1\/title
     ?x0
     "Fractals Everywhere")
)


> The query then becomes the problem of finding a variable substitution that
> satisfies an interpretation defined by the database.


aka proving a theorem of the form "there exists...".


-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/

Received on Wednesday, 27 June 2001 01:56:37 UTC