Re: Update on PROV-O OWL file (Action item 55)

Hi Ivan, al.

That's very useful input.

Time is introduced in PROV-DM differently:

- for activity, there is a 'startTime' and 'endTime'
- for entity ... currently no time information
     if we wanted to allow "scruffy" time, i guess we would have a 
'generationTime' and 'destructionTime'

- generation, usage, derivation each have 'time'.

Time values are all instants.
So, the second issue you raised does not occur, in this case.

It would still occur for 'time'  in generation, usage, derivation.

Cheers,
Luc

On 02/16/2012 09:25 AM, Ivan Herman wrote:
> Satya et al,
>
> My apologies for chiming in from the 'outside'...
>
> I am not a logician, so you may want to check this with a real expert. But in my reading of the OWL 2 Profile document[1], this OWL ontology does not fall into OWL 2 RL[2]. If that is true, that may be a problem; it may jeopardize its acceptance by large communities that do not think in terms of more complex OWL reasoners but which do begin to adopt OWL 2 RL.
>
> The issue I have is with:
>
> <owl:ObjectProperty rdf:about="hadTemporalValue">
>      <rdf:type rdf:resource="&owl;IrreflexiveProperty"/>
>      <rdfs:label xml:lang="en">has temporal value</rdfs:label>
>      <rdfs:range rdf:resource="Time"/>
>      <rdfs:domain>
>         <owl:Class>
>              <owl:unionOf rdf:parseType="Collection">
>                  <rdf:Description rdf:about="Activity"/>
>                  <rdf:Description rdf:about="Entity"/>
>                  <rdf:Description rdf:about="QualifiedInvolvement"/>
>              </owl:unionOf>
>          </owl:Class>
>      </rdfs:domain>
> </owl:ObjectProperty>
>
> Indeed, if I look at the formal spec of the OWL 2 RL document, it says:
>
> ObjectPropertyDomain := 'ObjectPropertyDomain' '(' axiomAnnotations ObjectPropertyExpression superClassExpression ')'
>
> with
>
> superClassExpression :=
>      Class other than owl:Thing |
>      superObjectIntersectionOf | superObjectComplementOf |
>      superObjectAllValuesFrom | ObjectHasValue | superObjectMaxCardinality |
>      DataAllValuesFrom | DataHasValue | superDataMaxCardinality
> superObjectIntersectionOf := 'ObjectIntersectionOf' '(' superClassExpression superClassExpression { superClassExpression } ')'
> superObjectComplementOf := 'ObjectComplementOf' '(' subClassExpression ')'
> superObjectAllValuesFrom := 'ObjectAllValuesFrom' '(' ObjectPropertyExpression superClassExpression ')'
> superObjectMaxCardinality :=
>      'ObjectMaxCardinality' '(' zeroOrOne ObjectPropertyExpression [ subClassExpression ] ')' |
>      'ObjectMaxCardinality' '(' zeroOrOne ObjectPropertyExpression owl:Thing ')'
> superDataMaxCardinality := 'DataMaxCardinality' '(' zeroOrOne DataPropertyExpression [ DataRange ] ')'
>
> ie, using a union of classes as part of the domain is not allowed. The rules also express this. And, although a layperson in terms of hard core logic, I can see why: if a resource is the subject of that property, a simple rule engine _cannot_ find out which of the constituents of the union it belongs to. Ie, it cannot make any intelligent deduction.
>
> A similar issue arises with:
>
> <owl:Class rdf:about="Time">
>      <owl:equivalentClass>
>          <owl:Class>
>              <owl:unionOf rdf:parseType="Collection">
>                  <rdf:Description rdf:about="Instant"/>
>                  <rdf:Description rdf:about="Interval"/>
>              </owl:unionOf>
>          </owl:Class>
>      </owl:equivalentClass>
>      <rdfs:comment rdf:datatype="&xsd;string"
>          >TemporalEntity represents time information, both time instant (having 0 time duration) and interval (having a non-zero duration).</rdfs:comment>
> </owl:Class>
>
> The corresponding functional spec for OWL 2 RL is indeed:
>
> EquivalentClasses := 'EquivalentClasses' '(' axiomAnnotations equivClassExpression equivClassExpression { equivClassExpression } ')'
>
> equivClassExpression :=
>      Class other than owl:Thing |
>      equivObjectIntersectionOf |
>      ObjectHasValue |
>      DataHasValue
> equivObjectIntersectionOf := 'ObjectIntersectionOf' '(' equivClassExpression equivClassExpression { equivClassExpression } ')'
>
> I.e., again, we do not have a Union.
>
> I am not sure what this means back in the model that is transcribed into OWL.
>
> Ivan
>
>
> [1] http://www.w3.org/TR/owl2-profiles/
> [2] http://www.w3.org/TR/owl2-profiles/#OWL_2_RL
>
> On Feb 14, 2012, at 23:24 , Satya Sahoo wrote:
>
>    
>> Hi all,
>> After two meetings by the PROV-O team on Feb 13 and Feb 14 [1], we have updated the OWL file and made it available for review by the WG [2].
>>
>> We would like to note that we support only the wasStartedBy defined between an activity and an agent, and not wasStartedBy defined between activity and activity, and activity and entity (the definition of wasStartedBy is defined in three ways by DM-TPWD in Section 6.2 and Section 5.3.2.2).
>>
>> All feedback is welcome!
>>
>> Thanks.
>>
>> Best,
>> Satya
>>
>> [1] Minutes of the PROV-O telcon: http://www.w3.org/2011/prov/wiki/PIL_OWL_Ontology_Meeting_2012-02-13
>> [2] PROV-O OWL File: http://dvcs.w3.org/hg/prov/raw-file/default/ontology/ProvenanceOntology.owl
>>      
>
> ----
> Ivan Herman, W3C Semantic Web Activity Lead
> Home: http://www.w3.org/People/Ivan/
> mobile: +31-641044153
> FOAF: http://www.ivan-herman.net/foaf.rdf
>
>
>
>
>
>    

-- 
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, 16 February 2012 11:21:42 UTC