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

Re: Time-varying g-boxes : a dataset pattern

From: David Wood <david@3roundstones.com>
Date: Tue, 11 Oct 2011 10:57:02 -0400
Message-Id: <7D9A5E7A-48D0-4DF6-A465-91EF710DA0A3@3roundstones.com>
Cc: RDF-WG <public-rdf-wg@w3.org>
To: Andy Seaborne <andy.seaborne@epimorphics.com>
Sorry, I must be missing something substantial.  Why would you want to record dataset changes upon access instead of only on g-box modification?


On Oct 11, 2011, at 8:47, Andy Seaborne <andy.seaborne@epimorphics.com> wrote:

> This is a quick sketch of how an application that requires quite
> detailed information about a g-box might go about it to illustrate the
> idea of dataset patterns.
> I'm sorry this is a bit rushed and a bit late.
>    Andy
> ==== Time-varying g-boxes
> This is a Dataset Usage Pattern for recording the state of a resource
> [AWWW], where accessing the resource using HTTP GET results in receiving
> an RDF graph.  The state of the resource is expected to change over
> time. The application wishes to have a record of the state of the
> resources at various times (it does not wish to just have a copy of the
> latest observed state).
> Each time a resource is accessed a new graph is added to the dataset as
> named graph.  The URI in the (URI, Graph) pair for the named graph is a
> unique identifier created as part of the process of accessing the
> resource.  The identifier is a URI and is never reused. The identifier
> is not the URL of the resource.
> Multiple resources can be tracked in the same dataset.
> Typically the identifier is a non-dereferencable URI such as a "tag:" or
> a "urn:uuid:".  URIs in these scheme can be allocated cheaply and
> locally but guaranteed to be globally unique.
> A description of the action that resulted in the triples is recorded.
> In the example below it is stored in the default graph of the dataset,
> using the default graph as a manifest for the named graphs in the rest
> of the dataset.
> == Example 1
> The resource <http://faraway/place> is read and returns a graph of one
> triple "<s> <p> <o>".  The dataset management process allocates URI
> <tag:store,2010:1234> for the g-snap and <tag:store,2010:9876> for the
> interaction.
> ["allocates...for" is intentionally weak wording to not require
> normative meaning to the dataset named graph pair as that would obstruct
> other dataset usage patterns.]
> The dataset is modified as follows by adding:
> # Record the gSnap:
> <tag:store,2010:1234> { <s> <p> <o> }
> # Record the information about the operation performed
> { <tag:process,2010:9876> :valueObserved <tag:store,2010:1234> ;
>      :actionTimestamp "2011-10-10T17:35:56Z"^^xsd:dateTime ;
>      :gBoxLocation <http://faraway/place> }
> == Example 2
> Later, the process reads the resource again, using a condition GET and
> is told the resource has not changed.  The dataset management process
> generates a URI for the process step <tag:store,2010:ABCD> and links to
> the previous named graph because the graph value is the same.
> { <tag:process,2010:ABCD> :valueObserved <tag:store,2010:1234> ;
>      :actionTimestamp "2011-10-11T09:35:56Z"^^xsd:dateTime ;
>      :gBoxLocation <http://faraway/place> }
> == Discussion:
> The modelling is merely illustrative.
> In the examples, the action description triples go into the default
> graph.  There is no necessary requirement for this.  They could be
> stored in a designated system graph.  They could be stored in a separate
> graph, not in the dataset or even in an associated dataset description
> with details such as a VoID details of the remote location.
> What the dataset is providing is the ability to query access the
> different observed g-snaps of the g-box.
Received on Tuesday, 11 October 2011 14:57:46 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:04:09 UTC