Re: PROV-ISSUE-229 (Refactor-and-sub-edit): Document would benefit from refactoring and editing [prov-dm]

Hi Stian,

Response interleaved.

On 01/31/2012 11:32 AM, Stian Soiland-Reyes wrote:
> On Tue, Jan 31, 2012 at 09:15, Luc Moreau<>  wrote:
>>>    Entity(id)
>>>    Activity(id, start?, end?)
>>>    Agent(id)
>>>    Plan(id)
>>>    Event(Id, time?)
>>>    Account(id)
>>>    Attributes(id, [attr1=val1, attr2=val2, ...])
>> I don't understand what you save with this syntactic rewriting. Can you
>> clarify?
> I believe Graham means that this simplifies most of the subsections
> that now each have to spend an additional paragraph about attributes.

What do you mean, avoid one item in a bullet list such as
"attributes: an optional set of attribute-value pairs [ attr1=val1, 
...], representing this entity's situation in the world."

I don't see this as a significant repetition. I think that a key aspect 
of an entity is the attributes associated with
him. Why should we separate them?

>> This seems to imply that Attributes, can be explain by themselves, that they
>> are standalone.  Not sure this still corresponds to this idea of
>> characterized thing we had for entity.
> We already allow multiple 'attributes' statements in separate entity records:
> entity(e0)
> entity(e0, [ex:thing="fred", ex:soup="tomato"])
> entity(e0, [ex:blah="1337"])
> which is interpreted the same as a single merged record:
> entity(e0, [ex:thing="fred", ex:soup="tomato", ex:blah="1337"]
> .. and this fits well with the open world assumption in RDF.
> I don't see any difference here if we allow attributes independently
> of the entity/activity/* record:
> attributes(e0, [ex:blah="1337"])
> .. we just don't know what e0 is here. If we follow Graham's logic,
> then e0 is always an entity, but might also be an activity, agent or
> plan.

A few issues here:
- elements and relations all have attributes, so you cant' infer the 
type of e0 from attributes(e0, ...)
- why would  you force humans to write more to express the same thing?
- in your strategy of breaking things down, why do you stop there?
   why not attribute(e0, ex:blah, "1137") ...
   or do you want to write some rdf directly ;-)

> However from that logic you could just keep the current entity()
> record and remove attributes from the other records - no need for the
> new attributes() record. Using attributes() instead of entity() would
> de-emphasize the 'is an entity' statement for types like activity and
> agent.
I just don't understand this. All elements/relations have got attributes.


Professor Luc Moreau
Electronics and Computer Science   tel:   +44 23 8059 4487
University of Southampton          fax:   +44 23 8059 2865
Southampton SO17 1BJ               email:
United Kingdom           

Received on Tuesday, 31 January 2012 12:08:09 UTC