- From: Libby Miller <Libby.Miller@bristol.ac.uk>
- Date: Wed, 29 Nov 2000 13:27:55 +0000 (GMT)
- To: Seth Russell <seth@robustai.net>
- cc: Libby Miller <Libby.Miller@bristol.ac.uk>, www-rdf-interest@w3c.org
On Tue, 28 Nov 2000, Seth Russell wrote: > Thanks for your summary. I think it will be a very useful tool to help us > arrive at a consensus on these issues. If you are considering updating it, > maybe you could add a table of contents with anchors into the document, so > that we might have URIs with with to refer to our various arguments. thanks Seth :-) I've added a contents. > > Several places you refer to the idea that something or other is either in > "the model" or not; yet I can find no reference in the literature where > that notion is defined. Pending a more authoritative definition I would > like to propose my own: > > topic: in a RDF data model > definition: "A notion is [in a RDF data model] iff we can find a triple for > it in that model, or imply a triple for it in that model." > Graphically: "A notion is [in a RDF data model] iff we can find (or imply) > a particular labeled directed arc for it in the graph." > The various APIs for RDF have methods which test whether a triple is a model or not. It would probably be a good idea to formalize this. Your suggestion begs the questions, what is a model? and what do you mean by 'imply a triple for it'? It seems to me that the recent thread on rdf-logic and rdf-interest implies that what a model isn't is a proper container for statements, and that we do need something like Gabe's suggestion of bags of reified statements [1] at least as an interpretation of the information from a source of RDF (I don't think Gabe means that all serializations of RDF should follow this format, just the handling of rdf data from other sources - I might be wrong...). So this has implications for handling the triples we have in a consistent way from different sources, and therefore also implications about how we match triples (as in your suggestion) and by extension, for querying. I think Gabe is correct that we need to handle tracking the provenance of statements using the RDF M&S constructs of reification and containers. But then we need to think about the triples we will get and at which level we want to query them. The APIs currently use something like find(sub, pred, obj) which is really low level, if we're got a lot of bags and reifications. Looking at your definition of when a model contains, a reification of a statement exists independantly to the statement itself, according to the M&S, so that contains(s,p,o) would be false if the interpretation of the model only contains a reification of the statement. So because of our reinterpretation of the statements we've found from a rdf source, we get different query results than if we had not reified the statements. This is fine, except that (I think) we need to make RDF as easy to query and accessible as possible. One partial solution is to use something like Guha's rdfDB query language [2]. But this sort of query langauge loses a lot of its utility if in order to use it you have to navigate complex structures like bags and reifications. (I've been playing around with a similar query language too, so I've got an interest in this [3]). Just my 2pence worth. cheers, Libby [1] http://lists.w3.org/Archives/Public/www-rdf-logic/2000Nov/0103.html [2] http://web1.guha.com/rdfdb/query.html [3] http://swordfish.rdfweb.org/rdfquery/
Received on Wednesday, 29 November 2000 08:29:25 UTC