Re: Named graphs etc

On Mar 09, 2004, at 18:21, ext Pat Hayes wrote:

>
> --DS8873936390185439286
>
>> On Mar 09, 2004, at 06:47, ext Pat Hayes wrote:
>>
>>>
>>> --DS-5576863329265350185
>>>
>>>> On Feb 27, 2004, at 03:13, ext Pat Hayes wrote:
>>>>
>>>>>  We may, though, end up with an infinite recursion. I.e., we have
>>>>>  a graph X that is asserted. In order to say that X is asserted,
>>>>>  we have to have another graph X' containing a statement that
>>>>>  X is asserted. But if X' is also asserted, we have to have another
>>>>>  graph X'' with a statement saying that X' is asserted, etc., etc.
>>>>>
>>>>> Lewis Carroll was there first:
>>>>>
>>>>> http://www.lewiscarroll.org/achilles.html
>>>>>
>>>>>
>>>>>  ???
>>>>>
>>>>>
>>>>>
>>>>> Nah, don't worry about it. Once you assert something, its 
>>>>> asserted. You don't need to assert the assertion.
>>>>>
>>>>
>>>> Sorry, Pat. I don't follow you.
>>>>
>>>> If there is a graph X and a graph Y, and there is a triple in graph 
>>>> Y
>>>> that says that graph X is asserted, yet we find no triple saying 
>>>> that
>>>> graph Y is asserted, then is graph X actually asserted? If the 
>>>> triple
>>>> asserting graph X is not asserted, then how can graph X be asserted?
>>>
>>> Maybe we are at cross purposes. I'm assuming that publishing a graph 
>>> amounts to asserting it. If not, then you are right: there is no way 
>>> to get something asserted by just publishing more statements about 
>>> it, if publication does not qualify as assertion. You have to have a 
>>> plain assertion somewhere to get the process started.
>>
>>> On the other side of the coin, if publication (or maybe, publication 
>>> in some mode or form) amounts to assertion, then there's no need to 
>>> add another graph asserting the assertion. That's what I meant in my 
>>> response above.
>>>
>>
>> No. I was not presuming that publishing a graph equates to asserting 
>> it. Publishing
>> a graph is simply that, making it publically available. How it is 
>> intended to be used
>> or what its overall purpose is, is another matter entirely.
>>
>> This came up in the long debates about social meaning. TimBL wanted 
>> what you are
>> suggesting, that if someone publishes a graph, they are accountable 
>> for the
>> statements made therein, as automatically asserted.
>>
>> The problem with that, is (a) is publishing an RDF/XML instance the 
>> same as
>> publishing a graph?
>
> Yes, of course. You cannot publish an abstraction.

Fair enough. Though I'm wondering if the RDF specs reflect this, or was 
that
part of the "social meaning" stuff that was yanked out?

>
>> (b) how can one publish a graph as an example, such that
>> its purpose has nothing to do with the substance of any statements 
>> within it,
>> yet use of the graph as an example requires manipulation of triples 
>> (not
>> other forms of quotation, reification, etc.).
>
> Good question, and we need a way to do that. The standard logicians 
> answer would be to introduce some kind of graph-quoting, and what you 
> publish in this case is the quotation. It could be as simple as an XML 
> property on the RDF header. See below.

Well, that's the approach I originally took with TriX, by introducing 
the attribute
'asserted' taking an xsd:boolean value. But that's (partially) what 
sparked off
this discussion...

I see the XML attribute and the bootstrapping vocabulary with 
intra-graph only
interpretation to be roughly equivalent in purpose -- the latter has 
the benefit,
though, of being more in the RDF world than the former, but both 
require "special"
interpretation not presently covered by the RDF MT.

>
>>
>> The ability to explicitly mark a graph as asserted is, I think, a 
>> needed mechanism.
>
> Or, to cancel the default that it is asserted. We need to be able to 
> make the distinction, surely.

Right. Per my recent response to Chris, allowing the presumption of 
assertion, if
no explicit statement, or the ability to explicitly state that a graph 
is or is not
asserted.

>
>>
>> Publication of a graph, or an RDF/XML instance, should not equate to 
>> assertion.
>
> I don't think that follows. And in any case, its too late to try to 
> change this now, seems to me.

Perhaps.

I think, though, that there might be a valid argument that publication 
of an RDF/XML
instance is just publication of an XML serialization, and is one form 
of quoting. It's
not until you map that serialization into an actual RDF graph that 
issues of assertion
arise.

The bootstrapping vocabulary I proposed, I think, would address this 
quite nicely; in
that, we can then presume that an RDF/XML serialization is not asserted 
(including
e.g. RDF/XML in XML literals) and that, once that RDF/XML is mapped to 
(interpreted
as) an RDF graph, one can examine any graph qualification statements to 
determine
the nature of the graph.

Thus, applications could pass around RDF/XML instances, publish them, 
etc. and
stay within the domain of XML syntax, and decide when to enter the 
domain of
the RDF MT by interpreting that RDF/XML as a graph.

Note that this also applies to e.g. XML Query *interpreting* an RDF/XML 
instance
as a graph, rather than an XML structure, versus some generic XML tool 
operating
on the same RDF/XML instance simply as XML serialized data.

The application simply must decide whether it is operating in terms of 
a graph
(semantically, per the RDF MT) or XML structure (syntactically per the 
RDF/XML
serialization).

Eh?

>
>>
>>> Either way, there's no utilility in having a graph X saying that 
>>> another graph Y is asserted. Unless X is asserted then it has no 
>>> effect on Y ( as you note); and if you can assert X in some way, the 
>>> you can do that to Y directly, so X is unnecessary (as I note).
>>
>> Right. Hence my recent proposal of a special vocabulary having 
>> intra-graph
>> bound semantics, which can be used to qualify graphs.
>
> That doesn't work. YOu can't get a graph asserted by relating it to 
> another graph, unless that graph in turn is asserted somehow.

You seem to have missed a key feature of what I was proposing.

I'm talking about having only *one* graph, where that graph contains 
statements
with predicates from a special bootstrapping vocabulary, which is used 
to
qualify the graph itself.

I had myself already pointed out earlier the problem of infinite 
assertion
of one graph by a statement in another.

Please re-read my earlier posting and see if it becomes clearer what I 
was
trying to say. If not, I'll try again...

> Asserting isn't a kind of logical sentence, it's a speech act. It 
> stands outside the logical semantics.
>
>>
>>>
>>>> That said, I'm starting to appreciate some of Chris' arguments about
>>>> all statements being asserted, no matter what.
>>>>
>>>> I still have some questions about how to "bootstrap" trust, such 
>>>> that
>>>> it seems there must be some requirement for each graph to contain
>>>> statements reflecting its source/authority (a signature perhaps?)
>>>> otherwise, how do you anchor your trust in terms of a given graph?
>>>
>>> There are folk who worry about this in other settings. I gather 
>>> there are recognized techniques, eg having a 'super' source which is 
>>> trusted by everyone and acts as a kind of World Bank for certifying 
>>> trusted signatures. Things like notary publics are useful as well. 
>>> But there dos have to be some kind of infrastructure for anchoring 
>>> the trust in, you can't just make it happen by asserting things.
>>>
>>
>> Right. One way or another, you've got to bootstrap your architecture. 
>> But
>> ideally, that bootstrapping machinery should be as lightweight as 
>> possible,
>> pushing as much as possible into the scope of the RDF MT.
>>
>> It also should be as decentralized as possible.
>
> Well, how about this. Publication is assertion: but what gets asserted 
> depends on the publication mode, which is set by an optional 
> 'publishMode' property in the RDF XML element tag. If it isnt set, 
> then the graph is asserted by the publication: the default case. If 
> the mode="quote" then what is asserted by the publication is simply 
> that the graph exists and has the name that it has, ie this 
> publication is like saying
>
> here is the graph named "ex:foo" : "......"
>
> without asserting the graph itself. This still allows other people to 
> import it if they want to assert it.
> The combination of a publication with mode="quote" and then having 
> another asserted graph which just imports he first graph is almost 
> exactly like publishing the graph plain.
>
> This mechanism is obviously expandable by allowing other values for 
> that property, eg maybe someone wants to say publishMode="deny" or 
> publishMode="archaic". It even allows for URIs in there pointing to 
> hypothetical future ontologies of publication mode types, whatever. 
> And it doesn't require any modification to RDF or to OWL, and its 
> uniform across media types.

Well, as noted above, TriX presently defines:

<!ATTLIST graph asserted (true|false) "true">

(i.e. graphs are presumed to be asserted unless specified as unasserted)

which appears to do essentially the same thing, though limited to simply
defining assertion versus non-assertion (which can be equated to 
quoting).

Still, I agree with Chris that if it can be done using a vocabulary,
then that is better.

>
> Pat
>
>>
>> Patrick
>>
>>
>>> Pat
>>>
>>>>
>>>> Patrick
>>>>
>>>>> Pat
>>>>>
>
> Sounds like the chorus of an Irish pub song. Do you know "Mush mush 
> tooraliaddie"?

No. Could you hum a few bars...?  ;-)

Patrick

--

Patrick Stickler
Nokia, Finland
patrick.stickler@nokia.com

Received on Wednesday, 10 March 2004 02:52:12 UTC