- From: Sergey Melnik <melnik@DB.Stanford.EDU>
- Date: Wed, 17 Nov 1999 13:17:02 -0800
- To: guha@epinions.com
- CC: www-rdf-interest@w3.org
Nodes do exist. We know that all nodes we can ever think of exist. However, we are not particular interested in this fact and are not willing and able to explicitly represent it in our RDF models using URI --rdf:type--> rdfs:Resource where URI iterates over an infinite set (notice that even in this case every node would hang on an arc). About a year ago I was able to formally prove that the "largest" most general RDF model that contains all possible URIs, all possible statements you can form with them and *all reifications* of that statements ad infinitum does exist (the proof is non-trivial). This knowledge is important from the theoretical point of view. However, for the sake of practicability, I'm arguing that we need a usable API rather than a precise understanding of what it means to exist. We can view every RDF model as if it implicitly contained all well-formed URIs. Still, if we want to emphasize the difference between a model that contains "loose" nodes that we know nothing about, it is always possible to add a "existential" statement like the one above. I've coded many thousands lines of code using a superset of the API that I proposed for as a seed for a general discussion. I have never experienced the need to ask a model whether it contains a resource that it knows nothing about. As to RDF vs predicate logic: you are right in the sense that the expression power of RDF lies strictly within the limits of predicate logic. However, an algebra for RDF might look quite different, since we still need to have properties as first-class objects in our model. If you want to represent RDF predicates as "real" predicates in your algebraic structure, you also need to "reify" them in your object universe and add a set of logical predicates to establish a relationship between them. The proof I was talking about above was based on the algebraic representation of RDF as shown in http://www-diglib.stanford.edu/diglib/ginf/WD/rdf-alg/rdf-alg.ps Note that in this model, reification is a *partial* function, therefore such proof is not needed. In fact, RDF specs states this fact explicitly. However, it is possible to make it a total function for research purposes ;) Best, Sergey
Received on Wednesday, 17 November 1999 16:12:30 UTC