Re: PROV-ISSUE-89 (what-entity-attributes): How do we find the attributes of an entity? [Formal Model]

On Fri, Sep 16, 2011 at 09:49, Khalid Belhajjame
<> wrote:

> prov:Entity a owl:Class ;
> prov:CharacterizingAttributes a owl:Class ;
> prov:characetrizedBy
>    a rdf:Property ;
>    rdfs:domain prov:Entity .
>    rdfs:range prov:CharacterizingAttributes .
> The attributes that are used to characterize the entity can then be attached
> to the resource of type "CharacterizingAttributes" using data property or
> even object properies, if they are complex attributes.
> Other attributes that are associated to the entity and are not part of the
> characterization can be associated directly to the resource of type Entity.

Sounds good IMHO. Some clarifications:

a) Are characterizing attributes meant to also (implicitly or
explicitly) apply directly to the entity?

b) Are nested object properties included in the characterisation (like
a filter), or just auxiliary attributes?

A slight variation of this could be to have those characterizing
attribute values directly on the entity, but listing which property
names are characterizing:

    a owl:AnnotationProperty ;
    rdfs:domain prov:Entity .
    rdfs:range rdf:Property .

used like:

:car :characterizedBy :colour, :owner .

or perhaps better - as an rdf collection to lock down any future possibilities:

:car :characterizedBy [ :colour, :owner ] .

One advantage of these is that it is possible to say that an entity is
characterized by an attribute without saying/knowing which value it
had. This is going beyond the current Prov abstract model though.

Stian Soiland-Reyes, myGrid team
School of Computer Science
The University of Manchester

Received on Friday, 16 September 2011 10:11:06 UTC