Re: Reconciliation of concerns, re islands and dataset semantics?

A quick comment on part of this exchange (sorry, dont have time to respond to it all right now):

On Mar 1, 2012, at 6:31 AM, Antoine Zimmermann wrote:

> Le 01/03/2012 13:05, Ivan Herman a écrit :
>> 
>> On Mar 1, 2012, at 12:42 , Antoine Zimmermann wrote:
>> 
>> [...]
>> 
>>> If such is your proposal, then it's viable in the sense that it can
>>> work as a logic, but I'm wondering how this would solve the
>>> endorsement/beliefs/provenance/temporal use cases.
>>> 
>> 
>> My understanding of the discussion is that, in your case, what
>> happens is that if there is a resource (URI) that appears in both G1
>> and G2, the respective interpretations (or models) may be different
>> on that resource, depending on whether you use the interpretation for
>> G2 or G2. This is the issue I want to take away, while still keeping
>> the graphs separate
> 
> Yes. The interpretation of a URI is contextual. Note that it's like the interpretation of the word "graph", which in some context means a pair of sets (V,E), in other contexts it means a set of triples.
> 
>>>> 
>>>> If
>>>> 
>>>> E =  (H, (<m1>,H1), (<m2>,H2), ... , (<mk>,Hk))
>>>> 
>>>> is another dataset, than we can say that 'D' entails 'E' if for
>>>> all interpretations 'I' of 'D',
>>>> 
>>>> 'I|H', 'I|H1', ... , 'I|Hk'
>>>> 
>>>> are all interpretations, which seems to be the same as saying
>>>> that 'I' is also an interpretation of 'E'.
>>> 
>>> I guess here you mean "model" rather than interpretation (i.e., an
>>> interpretation that satisfies the dataset).
>> 
>> Sorry. I did refer to the fact that the interpretation abides to the
>> semantic conditions of RDF(S) et al, I guess that is the same. (RDF
>> Semantics does not use the term 'model', only rdf-interpretation,
>> rdfs-interpretation, etc...)
> 
> Looking at the specs again, I understand why the term "model" is not used (in that sense): see http://www.w3.org/TR/rdf-mt/#glossModeltheory
> 
>> 
>>> Said otherwise, entailment is defined "as usual":
>>> 
>>> D entails E iff all models of D are models of E.
>>> 
>> 
>> I guess that is correct
>> 
>>> (Pat just reminded me in his last email that I do not use the
>>> "usual" definition of entailment in the dataset proposal, but I'm
>>> gonna fix this).
>>> 
>>> 
>>>> This means that there is level of consistency shared by all
>>>> graphs in a dataset, ie, if a resource 'R' is in 'G1' and 'G2',
>>>> then we are sure that an interpretation maps it identically,
>>>> because 'I' is defined as a mapping on the *union* of all graphs.
>>>> But the semantic conditions, as well as the entailments, are
>>>> restricted to the individual graphs.
>>>> 
>>>> Can that work?
>>> 
>>> This certainly works as a logic, but the question is whether it
>>> addresses the use cases dealing with multiple graphs. Take the case
>>> when I want to have the following information:
>>> 
>>> :x thinks that { :a owl:sameAs :b } :y thinks that { :a
>>> owl:differentFrom :b }
>>> 
>>> which could be reformulated in :x endorses the first graph, :y
>>> endorses the other graph, or the document at :x contains the first
>>> graph, the one at :y contains the second, or again, a SPARQL
>>> dataset contains the two graphs respectively "named" :x and :y.

These are *different* meanings. IMO, we should be distinguishing them and providing distinct ways to represent them, if indeed we are setting out to represent them at all. Because otherwise (as Sandro emphasised in the telecon) interchange of information expressed in this way will produce confusion.

And, a prior point, we need to be clear as to whether we are indeed intending to use datastores to REPRESENT such things as beliefs, endorsements, provenance information and/or contextual assertions like time-dependent archives. Not that they get used internally in some applications in these ways (not our concern) but that the RDF standard endorses and specifies how to use them publicly as an information exchange notation in these ways. FWIW, I think it is worth doing this for time-indexing, as it is relatively easy and uncontroversial how to do it (I say RELATIVELY) and there is an obvious need for it. I think the other cases are both more obscure and less necessary. Just to have several graphs in a store and keep their conclusions separated does not require any new semantics at all, and so if that is all we want to do, we should not be talking about semantics. 

>>> 
>> 
>> If (:a owl:sameAs :b) and (:a owl:differentFrom :b) appeared in the
>> same graph, then an OWL reasoner, using the definition of the
>> predicates, would deduce that there is a inconsistence. I mean: the
>> triples themselves are just fine, it is up to a reasoner to find the
>> problem.
>> 
>> If they are in different graphs, then the inconsistence would not
>> occur, because we only care about the models in separate graphs,
>> independently from one another.
> 
> Hmm, this seems to contradict what you said above. If URIs are interpreted identically in all graphs with overlapping vocabularies, how can :a be interpreted as the same thing as :b and at the same time as something different then :b? Either you have an inconsistency, or you interpret the URIs differently in the two graphs.

Yes, exactly. The inconsistency is there in RDF. Whether or not a reasoner decides to do anything about it is up to the application, but nothing is gained by putting the semantics' head in the sand so it can't see the inconsistency. OR, we can say there really is *not* an inconsistency here because these separate graphs are asserted in different contexts (maybe :a and :b merged at time :t), then we need a genuinely contextual model theory which shows how to express things likwe this clearly, and treat (some?) datasets as having this extended meaning, a different meaning than simply a bundle of RDF graphs. But we shouldnt haver and try to do two things at once or tell people to do two different things in the same way.


Pat


> 
>> [...]
>> 
>>> 
>>> Now, if you want to do temporal reasoning, provenance, trust, it's
>>> more complicated. But the fierceful rejection by Pat on the mere
>>> idea of a multi-interpretation semantics has deviated the
>>> discussion away from these issues.
>> 
>> And I do not think this working group should deal with temporal
>> reasoning, provenance, or trust. Just giving the basis in terms of
>> that semantics is what should be done.
> 
> I do not mean the WG should provide a standard for temporal reasoning etc. I just mean that we have to analyse these use cases in light of the various options we have for defining a semantics of datasets/quads/multiple-graph structure.

I really dont follow your thinking here. Are these use cases or not? IF they are, then surely the standard needs to address them as such and handle them properly. Or, if they are not, then we need to tell people to not rely on the standard to do these things, and they are running at their own risk if they do so. I dont feel that we are facing up to the decisions we need to make. In a nutshell: if these really are use cases, then we DO need to provide a standard for temporal reasoning (etc.) Or, if we decide we aren't doing that, then these are not use cases so much as misuse cases. 

Pat

> 
> > [...]
>>> 
>>> True, but this is difficult to put in the formal semantics as model
>>> theory is only interested in what is true from a given logical
>>> theory. It does not normally deal with behaviour, what an
>>> application should *do*. That is why owl:imports does not have a
>>> particularly constraining model theoretic semantics. The mechanism
>>> behind owl:imports is defined outside the semantic documents.
>> 
>> I *think* I understand what you say, and it does not seem to
>> contradict what I said: what, say, rdf:GETSemanticClass means is
>> defined outside the model theoretic semantics. That is what I meant
>> at least.
> 
> Then we are on the same page. Good.
> 
>> 
>> Ivan
>> 
>>> 
>>> Similarly, we can very well define mechanisms that have no
>>> representation in terms of model theory.
>>> 
>>> 
>>>> Now is my turn to be torn apart by Pat:-)
>>> 
>>> Good luck ;)
>>> 
>>> 
>>> AZ
>>> 
>>>> 
>>>> Ivan
>>>> 
>>>> ---- Ivan Herman, W3C Semantic Web Activity Lead Home:
>>>> http://www.w3.org/People/Ivan/ mobile: +31-641044153 FOAF:
>>>> http://www.ivan-herman.net/foaf.rdf
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>> 
>>> -- Antoine Zimmermann ISCOD / LSTI - Institut Henri Fayol École
>>> Nationale Supérieure des Mines de Saint-Étienne 158 cours Fauriel
>>> 42023 Saint-Étienne Cedex 2 France Tél:+33(0)4 77 42 83 36
>>> Fax:+33(0)4 77 42 66 66 http://zimmer.aprilfoolsreview.com/
>>> 
>> 
>> 
>> ---- Ivan Herman, W3C Semantic Web Activity Lead Home:
>> http://www.w3.org/People/Ivan/ mobile: +31-641044153 FOAF:
>> http://www.ivan-herman.net/foaf.rdf
>> 
>> 
>> 
>> 
>> 
> 
> 
> -- 
> Antoine Zimmermann
> ISCOD / LSTI - Institut Henri Fayol
> École Nationale Supérieure des Mines de Saint-Étienne
> 158 cours Fauriel
> 42023 Saint-Étienne Cedex 2
> France
> Tél:+33(0)4 77 42 83 36
> Fax:+33(0)4 77 42 66 66
> http://zimmer.aprilfoolsreview.com/
> 
> 

------------------------------------------------------------
IHMC                                     (850)434 8903 or (650)494 3973   
40 South Alcaniz St.           (850)202 4416   office
Pensacola                            (850)202 4440   fax
FL 32502                              (850)291 0667   mobile
phayesAT-SIGNihmc.us       http://www.ihmc.us/users/phayes

Received on Thursday, 1 March 2012 17:17:20 UTC