Re: [prov-o] How to express Involvement as as an "Abstract" class in OWL

Hi Khalid,

Just trying to expand on this idea:

:a1 a prov:Activity
   prov:used :e1
   prov:usage [a Usage
                       prov:usedEntity  :e1
                       prov:usedTime t]


Then, in prov-s (s for structure)


  prov:usedEntity subPropertyOf provs:entity
  prov:Usage subclassOf provs:EntityInvolvement
  prov:usedTime subRelationOf provs:hadTemporalExtent
  provs:entity domain: provs:EntityInvolvement
                      range  prov:Entity

   prov:usage subrelationOf provs:qualified
   provs:qualified domain: provs:Element
                            range: provs:Involvement
   prov:Activity subclassOf provs:Element
   prov:Entity subclassOf provs:Element

All the patterns are preserved. The concern about Involvement not
being abstract has disappeared. In prov, you can't express instance
of involvement, its' only in provs you can.

Thoughts?

Luc

On 02/23/2012 11:52 AM, Khalid Belhajjame wrote:
> On 23/02/2012 11:44, Luc Moreau wrote:
>> Hi Khalid,
>>
>> Can the structure and vocabulary be in separate ontologies?
>> This would allow the vocabulary to be kept as simple as possible, as 
>> close to the data model as possible.
>> I don't think it would be a requirement for the structure-part to be 
>> OWL-RL compatible.
>
> I haven't thought about it hard, but I guess one of the issue we may 
> need to solve in that case is the properties that are common to the 
> sub-classes and defined at the level of the "abstract" class. For 
> example, EntityInvolvement has the property "entity" that is used to 
> specify the involved entity. If we opt for the solution you are 
> suggesting, then we will need to define such property for every 
> descendent class that can be instantiated.
>
> Khalid
>> Thoughts?
>>
>> Luc
>>
>> On 02/23/2012 10:59 AM, Khalid Belhajjame wrote:
>>>
>>> In the prov-o ontology, the involvement class is used as a mean for 
>>> giving a structure to the ontology. There are different types of 
>>> involvement, e.g., Usage, Generation and Derivation. However, as it 
>>> is, the ontology allows specifying an instance of Involvement that 
>>> is not an instance of any of its sub-classes. That should not be 
>>> allowed.
>>>
>>> In OWL, the notion of abstract class does not exist, however, one 
>>> thing that can be done to avoid the above issue is to ass a 
>>> constraint specifying that Involvement is equivalent to the class 
>>> constructed by unionining its sub-class. While this solution is 
>>> plausible, I am not sure if this constraint is OWL-RL compatible. I 
>>> suspect so, but we need a confirmation.
>>>
>>> The same problem occurs in other cases in the ontology where the 
>>> classes have been introduced for shaping the structure of the 
>>> ontology, for example Element, ActivityInvolvement, 
>>> EntityInvolvement and AgentInvolvement.
>>>
>>> khalid
>>>
>>
>

-- 
Professor Luc Moreau
Electronics and Computer Science   tel:   +44 23 8059 4487
University of Southampton          fax:   +44 23 8059 2865
Southampton SO17 1BJ               email: l.moreau@ecs.soton.ac.uk
United Kingdom                     http://www.ecs.soton.ac.uk/~lavm

Received on Thursday, 23 February 2012 12:41:33 UTC