[RDF] Re: Klyne Contexts: 5.2 Contexts as statements
Graham Klyne
GK@Dial.pipex.com
Thu, 23 Nov 2000 13:23:46 +0000
At 11:38 AM 11/23/00 +0100, Jonas Liljegren wrote:
>Hi! I'm finaly started reading your page [1].
>
>There seems to be an error in section 5.2.1.1:
>
>I believe C36 and C37 should point at S9 and S10 respectively.
Yes, you're right. Thanks.
>Further. If I understand correctly: The context can be used for
>inferencing statements. If all the rdfc:assumes statements are
>asserted, all the rdfc:asserted statements will also be asserted.
I am finding this is a difficult area. Some days it is clearer than
others. Let me draw out a few points:
- The focus here is on description rather than inference (though with an
eye to limited inference that allows descriptions to be simplified).
- the statements about context [LAO] are not inferences, but a set of
premises that are referenced by [USL] and [SHS].
- The particular point I am trying to make is that if context [C1] assumes
[C2] one cannot infer from that alone that statements true in [C2] are also
true in [C1]. I am defining "assumes" applied to a context in such a way
that it incorporates the _explicit_ assumptions of the referenced context,
but says nothing about any implicit assumptions. Thus, assertions that may
depend on the implicit assumptions are not necessarily true. This is in
contrast to the definition of "asserts" applied to a context (see below).
I think it's fair to question whether there is any point in defining the
'assumes' property as I have, or indeed at all. At the time I felt it
captured something that is not otherwise expressed by assertion, and also
captured an aspect of John McCarthy's description of contexts. For me,
this whole area remains under review.
I'll address your specific points...
> But
>that means that you can't mix two inference rules as done in the
>example:
>
> C31: [LAO] --rdf:type------> [rdfc:Context]
> C32: [LAO] --rdfc:assumes--> [S5]
> C33: [LAO] --rdfc:assumes--> [S6]
> C34: [LAO] --rdfc:asserts--> [S7]
> C35: [LAO] --rdfc:assumes--> [S8]
> C36: [LAO] --rdfc:assumes--> [S9]
> C37: [LAO] --rdfc:asserts--> [S10]
These aren't inferences or inference rules. They're just statements. I am
defining a context that contains all these statements.
>It should rather be two separate contexts:
>
> C31: [LAO1] --rdf:type------> [rdfc:Context]
> C32: [LAO1] --rdfc:assumes--> [S5]
> C33: [LAO1] --rdfc:assumes--> [S6]
> C34: [LAO1] --rdfc:asserts--> [S7]
>
> C35: [LAO2] --rdf:type------> [rdfc:Context]
> C36: [LAO2] --rdfc:assumes--> [S8]
> C37: [LAO2] --rdfc:assumes--> [S9]
> C38: [LAO2] --rdfc:asserts--> [S10]
In my view that's a legitimate, but different, description.
>But that usage doesn't seem to be consistent with the use of
>rdfc:assuems for inclusion of subcontexts:
>
> C21: [USL] --rdf:type------> [rdfc:Context]
> C22: [USL] --rdfc:asserts--> [S1]
> C23: [USL] --rdfc:asserts--> [S2]
> C24: [USL] --rdfc:asserts--> [S4]
> C25: [USL] --rdfc:assumes--> [LAO]
>
>I think that it should use asserts also for subcontext inclusion:
>
> C21: [USL] --rdf:type------> [rdfc:Context]
> C22: [USL] --rdfc:asserts--> [S1]
> C23: [USL] --rdfc:asserts--> [S2]
> C24: [USL] --rdfc:asserts--> [S4]
> C25: [USL] --rdfc:asserts--> [LAO]
In my approach, this is a different statement covered in section 5.2.2
That is, 'asserts' is a stronger statement than 'assumes' because it
incorporates implicit as well as explicit assumptions, hence the truth of
all asserted statements.
>And to make it complete:
>
> C39: [LAO] --rdf:type------> [rdfc:Context]
> C40: [LAO] --rdfc:asserts--> [LAO1]
> C41: [LAO] --rdfc:asserts--> [LAO2]
>
>
>And it's importent to note that an inference can't be done in a
>context unless you have explicitly stated that you believe that the
>inference rules are true. That's what's done in C25.
Yes.
This effectively establishes one simple form of "lifting rule" for deducing
the truth of statements in one context from some statement(s) in another
context.
>If you say [Context1] --rdfc:assuems--> [Context2], that should be
>interpreted as that we test the truth of Context2 to determine if the
>assertions of Context1 is to be taken as true.
In my approach, 'assumes' is weaker than that: I have defined it to mean
simply that the _explicit_ assumptions of [Context2] (i.e. those stated by
'assumes' properties) are also taken as explicit assumptions of
[Context1]. I think 'asserts' has the properties you are expecting.
(And I think that 'asserts' is probably a more useful relationship between
contexts.)
>[1] http://public.research.mimesweeper.com/RDF/RDFContexts.html
#g
------------
Graham Klyne
(GK@ACM.ORG)