- From: Sandro Hawke <sandro@w3.org>
- Date: Thu, 04 Apr 2002 18:22:42 -0500
- To: Graham Klyne <GK@ninebynine.org>
- cc: www-rdf-logic@w3.org
> I think that the existential-conjunctive (EC) subset of FOL that is > expressible in RDF is a very interesting waypoint from simple propositional > assertions (e.g. a relational database) to full FOL. It is simple enough > to be easily processed, yet rich enough to capture ideas with a degree of > abstraction. A striking example from John Sowa's book Knowledge > Representation is the mapping of musical notation to EC logic. My question is what does EC give you that propositional assertions dont? I know in a formal sense, but I can't think of a semantic-web use case. That may have to do with my vision of how the semantic web works -- perhaps this discussion will flush that out. > I'm interested in your claim that RDF query languages don't use this > approach. To the extent that they are expressible in basic RDF, I cannot > see how this can be. An RDF query language certainly involves some kind of variables -- whether existentially or universally quantified is largely a matter of perspective -- but that language is not itself RDF, and those features don't need to be in RDF. The RDF query languages I've seen do NOT use bNodes as their query variables; they use their own sort of query variables. > Your point 4 doesn't make sense to me. Using existentials is not a matter > of being fuzzy; it seems to me a case of being very precise that the > particular identity or instance of some resource is unknown. The fuzziness in #4 is about how a shared naming is established among parties communicating via the Semantic Web. I understand this is something philosphers have been debating for a long time. I have my own theory of how it works, but until I convince the world of it, I'll still say it's a gray area. (My theory is you constrain the models until you're sufficiently convinced no "reasonable" person could have an interpretation materially different from yours. Dialog makes this much easier. The W3C spec-writing process is all about this, as far as I can tell.) So it's quite clear, yes, that using an existential means you are not using a name for some object, but it's *not* perfectly clear what using a name for an object means. It means at least that if the same name is used by two parties, they are by definition talking about the same object. But since we can use UUIDs to prevent that from happening accidentally, I'm at a loss to find an application scenario where existentials are particularly useful. I should add Reason #5, paraphrase from Dave Beckett on IRC: in some computing environments (handhelds) it may be impossible to generate good UUIDs. My response is that it's okay to have existentials in some serialization languages, for these cases and for human authors, but to have the model encourage Skolemization as soon as it's practical. Reason #6, reading between the lines of something else Dave said, is that it's harder to debug parsers which are doing Skolemization, because the output is harder to compare. I don't have an answer to that one right now, but I don't think it's a compelling reason in and of itself. We can help parser writers without complicating the model theory. -- sandro
Received on Thursday, 4 April 2002 18:24:09 UTC