- From: Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk>
- Date: Thu, 16 Jun 2011 15:37:16 +0100
- To: W3C provenance WG <public-prov-wg@w3.org>
On Tue, Jun 14, 2011 at 12:09, Graham Klyne <GK@ninebynine.org> wrote: > Suppose that the "Dynamic resource has a number of different observable > properties, some of which do not change over time, and others which do. > Then the View resource would be a resource for with a similar set of > properties such that do not change over time, but correspond to the dynamic > resource properties at a given time (including properties that do not change > over time). If the Dynamic resource does not change over time, then it may > also serve as its own view resource: the has view property can be > reflexive. > > The provenance resource is an assertion about the properties of the view > resource. I believe the key requirement that we try to capture is that the > properties about which the provenance resource makes assertions are > invariant - there is no assertion in the provenance resource which is not > always true of the view resource. This is a very beautifully simple model which I think we should keep in mind before digging too much into the exciting discussions. "simplified" for the File example: :i0 a :DynamicResource ; :name "/home/towns.txt" ; :content [ :bytes "" ] ; :creator :Alice . :i0View a :ViewResource ; :viewOf :i0 ; :name "/home/towns.txt" ; :creator :Alice . # Metadata stored in filesystem :i0Provenance a :ProvenanceResource ; :provenanceOf :i0View ; :account :FileSystem ; :processes ( [ :agent :Alice ; :location :server1 ; :process :fileCreation ; :time "2011-06-15 18:00:01 UTC" ] ) . # however the log file claims the file was created on her workstation (not server), and 1 second later (clocks out of sync?) :i0Provenance2 a :ProvenanceResource ; :provenanceOf :i0View ; :account :ServerLogFile ; :processes ( [ :agent :Alice ; :location :AliceWorkstation; :process :fileCreation ; :time "2011-06-15 18:00:02 UTC" ] ) . ### New graph - Content changed :i0 a :DynamicResource ; :content [ :bytes "New York\nLos Angeles\n" ] ; :name "/home/towns.txt" ; :creator :Alice ; :readBy (:Alice :Bob :Charles :David) :i2 a :ViewResource ; :viewOf :i0 ; :name "/home/towns.txt" ; :creator :Alice ; :content [ :bytes "New York\nLos Angeles\n" ] . :i2Provenance a :ProvenanceResource ; :provenanceOf :i2 ; :account :FileSystem ; :processes ( [ :agent :Alice ; :location :server1 ; :process :fileCreation ; :time "2011-06-15 18:00:03 UTC" ] # Lost as :FileSystem metadata only keeps last-modified # [ :agent :Alice ; # :location :server1 ; # :process :fileWrite ; # :time "2011-06-15 18:00:03 UTC" ] [ # :agent :Bob; - not recorded as only owner/creator is kept :location :server1 ; :process :fileWrite ; :time "2011-06-15 18:14:12 UTC" ] ) . So say there are additional mutable properties such as :readBy above - would you consider those propagating into the view as mutable properties? There could be another view over :i2 for the file before it was read by Charles, where :readBy is an immutable property. The example graph above does not distinguish between mutable and immutable properties - perhaps we shouldn't as they could be difficult to find, identify and measure. Here :readBy is not kept by neither the log file or file system and is a kind of conceptual property - it could be discovered by simply asking everyone who could have read it, or inferred from traced file usage, like if its sent in an email. -- Stian Soiland-Reyes, myGrid team School of Computer Science The University of Manchester
Received on Thursday, 16 June 2011 14:38:17 UTC