- From: Sean Luke <seanl@cs.umd.edu>
- Date: Fri, 12 May 2000 19:29:32 -0400 (EDT)
- To: Dan Connolly <connolly@w3.org>
- cc: Jeff Heflin <heflin@cs.umd.edu>, www-rdf-interest@w3.org
[context everyone: Jeff does SHOE, Dan is working informally on a SHOE -> RDF converter and had asked some SHOE questions] On Fri, 12 May 2000, Dan Connolly wrote: > Jeff Heflin wrote: > > > <rdfs:Class rdf:about="http://schema.org/web#Web_Developer"> > > <rdfs:subclassOf rdf:resource="#Silly_Person"> > > </rdfs:Class> > > > > I do not see any restrictions in the RDFS spec to prevent such a > > statement. > > Why should we prevent such a statement? Anyone can say anything > about anything, no? [snip] > > Also, as I understand it way namespaces are used in RDF is > > only to uniquely identify what object you're talking about, not which > > sets of definitions you subscribe to. Thus, if I state that I am > > Web_Developer, then do I also imply that I am a Silly_Person? > > If you say P and P->Q, then you imply Q, yes. But > if you say P and somebody else says P->Q, then a third > party may or may not decide to trust you both enough > to conclude Q. What if a third party Foo says P->Q, you rely on this to make all sorts of statements about P under the assumption that your clients will use Foo's claim to understand that you're really talking about Q, and then Foo drops off the face of the earth? Say, because the ILOVEYOU virus brings down their system for a week. They're still very trustworthy: everything they say is true. But right now they're not saying anything, and your clients don't find their stuff and so interpret your semantics in a different way than you did when you posted your data originally. Or Foo updated its claims and dropped a few statements that you relied on, not knowing that you were doing so. You're left hanging in the wind. It seems to me that trust isn't a great model for this kind of stuff in a distributed, uncontrolled environment. I think that dealing with the weirdness caused by a lack of control inherent in a distributed system is one of the features that RDF needs to work more on. Because RDF lets "anyone say anything about anything", with no notion of authority at all, then people are free to redefine the semantics of a language in a very fine-grained, highly distributed fashion. Combine this with a cooperative reliance on who said what about what in order to understand the proper semantics of some claim X, and you're gonna see a lot of semantic misinterpretation as little parts of the distributed RDF web come up and down. SHOE's model counters this in two ways, which Jeff is getting at I think. First, it separates schema from data, which at least attempts to provide *some* semblence of authority, or at least a well-defined semantic language so we're very clear on what I intend to be inferred when I say thing Foo. SHOE also takes a stab at providing versioning in schema, since in the real world schema change over time, independent of the claims made using them. Second for those few "inferential" statements that can be made in data (basically classification statements), SHOE's model does not permit you to rely on another person's statement. So if person X says that Fido is a Dog, and you rely on this to state chases(Fido,Bell), where the first argument of chases must be a Dog, and then person X retracts his claim that Fido is a Dog (or the client doesn't see his statement, or it's unavailable, or whatever), in SHOE by saying chases(Fido,Bell), what you're *really* saying is threefold: 1. I claim that chases(Fido,Bell). 2. I claim that Fido is a Dog. 2. I claim that Bell is a Cat. Thus what person X said about Fido is really immaterial -- you're not relying on him for semantic context. But in RDF this is not always the case, as Jeff had pointed out. Without a full collection of statements, you could have a lot of disconnected claims without their full semantic understanding. RDF would work great in a "sandbox environment" typical of most KR systems, where the system has the entire body of knowledge (so to speak) stored internally and so can interpret statements in its system under the semantics of the full universe of facts at its disposal. But I think that RDF does not take into consideration the uncomfortable fact that the web is not a sandbox. People say anything they want, even trusted ones. And they can stop saying these things at any time, and for any reason. Relying on the availability, correctness, and completeness of others' statements in order to put your own into context is pretty dangerous. Sean
Received on Friday, 12 May 2000 19:29:39 UTC