prov:value versus KeyValuePair

prov-wg,

When modeling Dictionaries, PROV-O had a straightforward way to model KeyValuePairs:

[ 
   a prov:KeyValuePair;
   prov:key     "goalie"; 
   prov:value  :joe_the_tank;
]

Then, DM introduced the reserved property "value" to do things like:

entity(ex:in, [prov:value="abcd"]) 
entity(ex:out, [prov:value=4]) 
activity(ex:len, [prov:type="string-length"])
used(ex:len,ex:in)
wasGeneratedBy(ex:out,ex:len)
wasDerivedFrom(ex:out,ex:in)

DM's "value" property is exactly how rdf:value has been used in the past decade:

:parameter_1
     a prov:Entity;
     rdf:value 1024;
.

but we wanted to reestablish prov:value because rdf:value's definition was "a bit" cloudy.
So, we end up with:


:parameter_1
     a prov:Entity;
     prov:value 1024;
.


Unfortunately, the KeyValuePair's value collides with the DM's new value (rdf:value).

So, we could:

1) relax prov:value's domain from KeyValuePair to Entity

This would allow us to use prov:value in both KeyValuePairs as well as arbitrary "number entities".


2) Rename DM's "value" to "chars", inspired by cnt:chars from 
http://www.w3.org/TR/Content-in-RDF10/#ContentAsTextClass



Which of these options would the group prefer?

Thanks,
Tim

ISSUE-363

Received on Tuesday, 15 May 2012 12:56:34 UTC