W3C home > Mailing lists > Public > public-rdf-wg@w3.org > February 2011

Re: [GRAPHS] g-box, g-snap, and g-text

From: Pierre-Antoine Champin <pierre-antoine.champin@liris.cnrs.fr>
Date: Fri, 25 Feb 2011 19:11:42 +0100
Message-ID: <4D67F0DE.3060708@liris.cnrs.fr>
To: "nathan@webr3.org" <nathan@webr3.org>
CC: Sandro Hawke <sandro@w3.org>, Ivan Herman <ivan@w3.org>, public-rdf-wg <public-rdf-wg@w3.org>
On 02/25/2011 06:37 PM, Nathan wrote:
> Sandro / Ivan,
>
> AIUI, a g-box is a "box" which contains triples, the contents of the box
> can change over time, and the contents of the box at a particular point
> in time form a Set of Triples, a g-snap (a snapshot of the contents, the
> value of the box at time t, the state of the box at time t), g-snaps can
> be represented lexically in a data format so that they can be
> transferred over the wire, these serialized g-snaps are called g-texts.
>
> some clarifications to sandro's text following my understanding:
>
> Sandro Hawke wrote:
>> On Fri, 2011-02-25 at 17:30 +0100, Ivan Herman wrote:
>>> Another way of putting it is that a g-text is a special form of a
>>> g-box, which has the peculiarity of representing a g-snap in a text
>>> file.
>>
>> No, a g-text is not a special form of a g-box.  A g-text is a fixed
>> sequence of characters or bytes; a g-box is a potentially-mutable
>> collection.   If two g-texts are the same sequence, they are the same
>> g-text; that's not at all true of g-boxes.
>>
>> In a low-level language, like assembly or C, g-box would be some area of
>> memory, while a g-text would be some values that might be stored in that
>> memory.
>
> a g-box would be some area of memory, a g-snap would be the set of
> values stored in that memory at a point in time, and a g-text would be a
> serialization of that set of values.

According to Sandro's original definition [1], a g-snap is "an 
*idealized* snapshot of a g-box: it's a mathematical set (...)".
What is stored in memory is *not* a mathematical set, but a 
*representation* of the set, just as a serialization in a text file is a 
*representation*. Hence my proposal to unify both under the concept of 
g-text.

I like Antoine's proposal in [1] to consider g-snaps as elements of a 
value space, while g-texts would be elements of a lexical space (Antoine 
didn't use the g-* terminology, but I think I don't betray his thought).

>> Computer files are boxes, not texts, in this terminology -- they can
>> change, and they have an identity separate from their contents.
>
> Indeed, and g-texts have their own identity separate to both the
> contents of the box, and the box it self.

Agreed; but would you agree that a file foaf.rdf does not contain a 
graph; it contains a serialization. Similarly, an in-memory structure 
contains a sequence of bytes which are a *representation* of a graph, 
not the graph itself. The graph is unreachable.

> Relating to real life, let's say it's an apple box a-box:
>
> An a-box contains apples, the contents of the a-box at a particular
> point in time is an a-snap, a written list or photo of the contents at
> that point in time is an a-snap.

For the last occurence of "a-snap", you mean "a-text", of course :-D

It seems a bit farfetched to compare a "mathematical set" to a bunch of 
apples ;-D

Let me put it another way: if you buy a box containing '10 apples', you 
wouldn't mind if I ate one of the apples and replaced it with another 
one, as long as you still have the '10 apples' you paid for in your box. 
The a-set is the Idea of '10 apples'. The a-text are the 10 actual 
apples that happen to be in the box. The photo or written list does not 
count, as you can't eat them!

> Sorry to be a bit pedantic here, but I feel it's critical to keep clear
> distinctions between the three concepts

Sorry to be over-pendantic, but I agree with you that we need to have 
clear concepts :)

> box: a container
> snap: contents of the box at a point in time (or, the state of the box,
> or, the set of things in the box - set in the mathematical sense)
> text: a representation of a snap

again, if the snap is a mathematical object, you can not put it in a 
box. You can merely put an instance/token/representation of it in the box.

   pa

[1] http://lists.w3.org/Archives/Public/public-rdf-wg/2011Feb/0092.html
[2] http://lists.w3.org/Archives/Public/public-rdf-wg/2011Feb/0083.html

>
> Best,
>
> Nathan
>
Received on Friday, 25 February 2011 18:12:17 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 16:25:39 GMT