- From: Gabe Beged-Dov <begeddov@jfinity.com>
- Date: Tue, 21 Nov 2000 21:06:28 -0800
- To: Jonathan Borden <jborden@mediaone.net>
- CC: "www-rdf-interest@w3.org" <www-rdf-interest@w3.org>
Jonathan Borden wrote: > > > > > Being able to talk about statements is a central concept of RDF and I > > think it should be anchored in the RDF model more intrinsically than it > > is done currently. I don't see a need to bootstrap reification using 4 > > special RDF statements. I'd rather have it built-in. It may be a central concept to many but there is a significant potential audience for RDF that is blissfully unaware of reification and probably wants to remain so. I agree that it is a pain to deal with 4 statements but that's what we have. At least that's the case at the level of the raw RDF model that some people have compared to assembly language. The RDF M&S says in section 6 says that alot of reification should be going on that isn't in existing implementations: [[ The Description element itself represents an instance of a Bag resource. The members of this Bag are the resources corresponding to the reification of each of the statements in the Description. If the bagID attribute is specified its value is the identifier of this Bag, else the Bag is anonymous. ]] Some implementations provide a configuration setting (or not) to control whether the presence of BagId on a Description will cause the statements in the Description to be reified. As far as I know, no implementations do what the spec says which is to reify all the statements in all the Descriptions. If they did, there would probably be more discussion of how to manipulate rdf:Statement instances rather than how to manipulate triples. An rdf:Statement instance is required by the spec to have the four statements that can then be manipulated as the quad that many implementations use. Maybe what we need to do at the API/framework level is to talk about quad producers and consumers rather than triple producers and consumers. This still leaves various problems like how to distinguish how the identifier for a quad/rdf:Statement was generated, i.e. by what algorithm or policy. Sergey's Skolem function approach is certainly one algorithm but the reality is that there are other algorithms that are allowed and we can't rule their use out. > Another point: In general RDF statements will be anonymous triples and > reification is just as you say. The context of this discussion is the > possibility of colliding ***named*** statements. The only way I can see > doing this is by applying an ID to a typedNode of which rdf:Statement is an > example. This 'bootstraping' process simply allows one to 'replace' your > Skolem function with a selected URI in terms of reification. My conclusion > is that triples remain unique. There are two ways in the RDF/XML syntax of explicitly specifying the identifer for a reified statement resource. The first is to specify a value for the about or ID attribute of a resource element that has a rdf:type property with the value of rdf:Statement (it may be a rdf:Statement typednode). The second is to specify an rdf:ID for a property element. > Jonathan Cordially from Corvallis, Gabe -- --------------------------- http://www.jfinity.com/gabe
Received on Tuesday, 21 November 2000 23:06:00 UTC