- From: Oliver Ruebenacker <curoli@gmail.com>
- Date: Wed, 27 Mar 2013 11:02:24 -0400
- To: David Booth <david@dbooth.org>
- Cc: public-semweb-lifesci@w3.org
Hello David, So if I understand your view correctly, then it could be expressed in a language close to yours as: "Some people believe that if a URI occurs twice within a graph or statement, it refers to the same thing. But this is a myth! RDF never guarantees that two occurrences of the same URI mean the same thing." Take care Oliver On Wed, Mar 27, 2013 at 9:37 AM, David Booth <david@dbooth.org> wrote: > Hi Oliver, > > On 03/25/2013 04:02 PM, Oliver Ruebenacker wrote: >> >> Hello David, >> >> We agree that there are different interpretations. But you haven't >> shown that the boundaries between interpretations are graphs >> boundaries (others, including me, think that each interpretation is >> global). > > > I don't know what you mean by "boundaries between interpretations". > An interpretation may be applied to any graph or statement to determine its > truth value (or to a URI to determine the resource to which it is bound in > that interpretation). > > The notion of a graph boundary is purely a matter of convenience and > utility. A graph can consist of *any* set of RDF triples. If you wanted, > you could apply an interpretation to a graph consisting of three randomly > selected triples from each RDF document on the web, but it probably wouldn't > be very useful to do so, because you probably would not care about the truth > value of that graph. We generally only apply an interpretation to a graph > whose truth value we care about. > > An interpretation corresponds to the *use* of a graph. Suppose I have a > graph that "ambiguously" uses the same URI to denote both a toucan and its > web page, without asserting that toucans cannot be web pages: > > @prefix : <http://example/> > :tweety a :Toucan . > :tweety a :WebPage . > > When a conforming RDF application takes that RDF graph as input, assumes it > is true, and produces some output such as "Tweety is a toucan", in effect > the application has chosen a particular interpretation to apply to that > graph. In effect, the choice of interpretation causes the app to produce > that particular output. For example, the app might categorize animals into > species, choosing an interpretation that maps :tweety to a kind of bird. > But a different conforming RDF application that only cares about web page > authorship might take that *same* RDF graph as input and choose a different > interpretation that maps :tweety to a web page, instead outputting "Tweety > is a web page". In effect, the app has chosen an interpretation that is > appropriate for its purpose. > > If the graph had also asserted :Toucan owl:disjointWith :WebPage, then the > graph cannot be true under OWL semantics, and the graph (as is) would be > unusable to both apps. > >> >> That makes me wonder whether you consider it in conformance with the >> specs to choose different boundaries? >> >> For example, would you consider it conforming to apply a different >> interpretation to each statement? Or how about a different >> interpretation for each node of a statement? Do you see anything in >> the specs against doing so? > > > Sure it is in conformance with the spec. An interpretation can be applied > to any graph or any RDF statement. And certainly you could determine the > truth value of N different statements according to N different > interpretations. But would it be useful to do so? Probably not. > Furthermore, if two statements are true under two different interpretations, > that would not tell you whether a graph consisting of those two statements > would be true under a single interpretation. > > OTOH, it *is* useful to apply different intepretations to different graphs, > and one reason is that you may be using those graphs for different > applications, each app in effect applying its own interpretation. But the > fact that those graphs may be true under different interpretations does > *not* tell you whether the merge of those graphs will be true under a single > interpretation. > > The RDF Semantics spec only tells you how to compute the truth value of one > <interpretation, graph> pair at a time, but you can certainly apply it to as > many <interpretation, graph> pairs as you want -- in full conformance with > the intent of the spec. This is the same as if I define a function f of two > arguments, such that f(x,y) = x+y, that function definition only tells you > how to compute f(x,y) for one pair of numbers at a time, but you can > certainly apply it to as many pairs as you want, without in any way > violating the intent of f's definition. > > David -- IT Project Lead at PanGenX (http://www.pangenx.com) The purpose is always improvement
Received on Wednesday, 27 March 2013 15:02:55 UTC