W3C home > Mailing lists > Public > public-prov-wg@w3.org > May 2012

Re: [owl changed] PROV-ISSUE-372 (qualified-property-chains): ( prov:qualifedUsage prov:entity ) rdfs:subPropertyOf prov:used

From: Timothy Lebo <lebot@rpi.edu>
Date: Wed, 16 May 2012 11:33:07 -0400
Cc: Stian Soiland-Reyes <soiland-reyes@cs.manchester.ac.uk>, Provenance Working Group <public-prov-wg@w3.org>
Message-Id: <4F2EA7D4-1382-4D59-9D23-C97CD8CDE719@rpi.edu>
To: Ivan Herman <ivan@w3.org>
Thanks, Stian and Ivan. I'll include this point in our "RL++ appendix".

Tracker,  ISSUE-377

-Tim

On May 16, 2012, at 3:52 AM, Ivan Herman wrote:

> 
> On May 15, 2012, at 17:02 , Stian Soiland-Reyes wrote:
> 
>> I think it might be a bug in the OWL-API, as far as I understand the
>> RL specs then property chains should be fine.
>> 
> 
> Yes, that is also my impression
> 
> Ivan
> 
>> 
>> If I change:
>> 
>> prov:wasGeneratedBy
>>   a owl:AsymmetricProperty, owl:FunctionalProperty,
>> owl:IrreflexiveProperty, owl:ObjectProperty ;
>> 
>> to:
>> 
>> prov:wasGeneratedBy
>>   a  owl:ObjectProperty ;
>> 
>> 
>> the error goes away.
>> 
>> Before:
>> 
>> PS C:\Users\stain\src\prov\ontology> java -jar bin/profilechecker.jar
>> prov.ttl OWL2RLProfile 2>&1 |grep non-simple|grep wasGener
>> + java <<<<  -jar bin/profilechecker.jar prov.ttl OWL2RLProfile 2>&1
>> |grep non-simple|grep wasGener
>> Use of non-simple property in IrrefexiveObjectProperty axiom:
>> [IrreflexiveObjectProperty(<http://www.w3.org/ns/prov#wasGeneratedBy>)
>> in <http://www.w3.org/ns/prov#><http
>> Use of non-simple property in AsymmetricObjectProperty axiom:
>> [AsymmetricObjectProperty(<http://www.w3.org/ns/prov#wasGeneratedBy>)
>> in <http://www.w3.org/ns/prov#><http:
>> Use of non-simple property in FunctionalObjectProperty axiom:
>> [FunctionalObjectProperty(<http://www.w3.org/ns/prov#wasGeneratedBy>)
>> in <http://www.w3.org/ns/prov#><http:
>> 
>> After:
>> 
>> PS C:\Users\stain\src\prov\ontology> java -jar bin/profilechecker.jar
>> prov.ttl OWL2RLProfile 2>&1 |grep non-simple|grep wasGener
>> + java <<<<  -jar bin/profilechecker.jar prov.ttl OWL2RLProfile 2>&1
>> |grep non-simple|grep wasGener
>> PS C:\Users\stain\src\prov\ontology> java -jar bin/profilechecker.jar
>> prov.ttl OWL2RLProfile 2>&1 |grep wasGener
>> 
>> 
>> 
>> PS C:\Users\stain\src\prov\ontology> hg diff
>> diff -r 8eef80481036 ontology/prov.ttl
>> --- a/ontology/prov.ttl Tue May 15 10:08:12 2012 -0400
>> +++ b/ontology/prov.ttl Tue May 15 16:01:40 2012 +0100
>> @@ -1015,7 +1015,7 @@
>>    rdfs:subPropertyOf rdfs:seeAlso .
>> 
>> prov:used
>> -    a owl:AsymmetricProperty, owl:IrreflexiveProperty, owl:ObjectProperty ;
>> +    a owl:ObjectProperty ;
>>    rdfs:comment "A prov:Entity that was used by this prov:Activity.
>> For example, :baking prov:used :spoon, :egg, :oven ."@en ;
>>    rdfs:domain prov:Activity ;
>>    rdfs:range prov:Entity ;
>> @@ -1067,7 +1067,7 @@
>>    prov:qualifiedForm prov:Attribution, prov:qualifiedAttribution .
>> 
>> prov:wasDerivedFrom
>> -    a owl:AsymmetricProperty, owl:IrreflexiveProperty, owl:ObjectProperty ;
>> +    a owl:ObjectProperty ;
>>    rdfs:comment "A derivation is a transformation of an entity into
>> another, a construction of an entity into another, or an update of an
>> entity, resulting in a new one."@en ;
>>    rdfs:domain prov:Entity ;
>>    rdfs:range prov:Entity ;
>> @@ -1097,7 +1097,7 @@
>>    prov:qualifiedForm prov:End, prov:qualifiedEnd .
>> 
>> prov:wasGeneratedBy
>> -    a owl:AsymmetricProperty, owl:FunctionalProperty,
>> owl:IrreflexiveProperty, owl:ObjectProperty ;
>> +    a owl:ObjectProperty ;
>>    rdfs:comment "wasGeneratedBy links Entitites with Activity
>> representing that entity was generated as a result of Activity"@en ;
>>    rdfs:domain prov:Entity ;
>>    rdfs:range prov:Activity ;
>> @@ -1117,7 +1117,7 @@
>>    rdfs:range prov:Activity ;
>>    rdfs:subPropertyOf prov:involved ;
>>    owl:propertyChainAxiom (prov:qualifiedCommunication
>> -        prov:entity
>> +        prov:activity
>>    ) ;
>>    prov:category "starting-point" ;
>>    prov:component "entities-activities" ;
>> 
>> 
>> Now only 2 errors:
>> 
>> PS C:\Users\stain\src\prov\ontology> java -jar bin/profilechecker.jar
>> prov.ttl OWL2RLProfile
>> 
>> Use of non-superclass expression in position that requires a
>> superclass expression:
>> ObjectUnionOf(<http://www.w3.org/ns/prov#Association>
>> <http://www.w3.org/ns/prov#End>
>> <http://www.w3.org/ns/prov#Generation>
>> <http://www.w3.org/ns/prov#Start> <http://www.w3.org/ns/prov#Usage>)
>> [ObjectPropertyDomain(<http://www.w3.org/ns/prov#hadRole>
>> ObjectUnionOf(<http://www.w3.org/ns/prov#Association>
>> <http://www.w3.org/ns/prov#End> <http://www.w3.org/ns/prov#Generation>
>> <http://www.w3.org/ns/prov#Start> <http://www.w3.org/ns/prov#Usage>))
>> in <http://www.w3.org/ns/prov#><http://www.w3.org/TR/2012/WD-prov-o-2012MMDD>]
>> 
>> Use of non-superclass expression in position that requires a
>> superclass expression:
>> ObjectUnionOf(<http://www.w3.org/ns/prov#Derivation>
>> <http://www.w3.org/ns/prov#Invalidation>
>> <http://www.w3.org/ns/prov#Responsibility>
>> <http://www.w3.org/ns/prov#Start>)
>> [ObjectPropertyDomain(<http://www.w3.org/ns/prov#hadActivity>
>> ObjectUnionOf(<http://www.w3.org/ns/prov#Derivation>
>> <http://www.w3.org/ns/prov#Invalidation>
>> <http://www.w3.org/ns/prov#Responsibility>
>> <http://www.w3.org/ns/prov#Start>)) in
>> <http://www.w3.org/ns/prov#><http://www.w3.org/TR/2012/WD-prov-o-2012MMDD>]
>> 
>> 
>> I'm not suggesting we add that patch.
>> 
>> I'll test with the latest snapshot of OWL API and report to their
>> mailing list. I'll also ask Bijan upstairs.
>> 
>> 
>> On Tue, May 8, 2012 at 8:24 AM, Ivan Herman <ivan@w3.org> wrote:
>>> Well... I do not really understand this; maybe Stian should investigate.
>>> 
>>> Looking at
>>> 
>>> http://www.w3.org/TR/owl2-profiles/#OWL_2_RL
>>> 
>>> the only restriction on properties in the case of OWL 2 RL is that reflexive properties are not in use. Otherwise, it says:
>>> 
>>> [[[
>>> 4.2.2 Property Expressions
>>> 
>>> Property expressions in OWL 2 RL are identical to the property expressions in the structural specification [OWL 2 Specification].
>>> ]]]
>>> 
>>> As such, adding a property chains for object properties defined in the Ontology should not affect its RL compliance. That being said, I am not an OWL reasoning expert and I might miss something. However, chains clearly appears in the rule set, so a rule based OWL RL reasoner should be able to handle that without any problems. (I know my implementation does it.)
>>> 
>>> Stian, could you investigate a little? I know you rely on the OWL API, so you are only a go-between, but nevertheless...
>>> 
>>> Thanks
>>> 
>>> Ivan
>>> 
>>> On May 7, 2012, at 19:54 , Timothy Lebo wrote:
>>> 
>>>> Ivan,
>>>> 
>>>> I'm using a RL checker that Stian made for us to use.
>>>> It is described at [1].
>>>> 
>>>> I'm not sure what the messages intend to convey.
>>>> 
>>>> Regards,
>>>> Tim
>>>> 
>>>> [1] http://www.w3.org/2011/prov/wiki/PIL_OWL_Ontology#JAR_checker
>>>> 
>>>> On May 7, 2012, at 1:26 PM, Ivan Herman wrote:
>>>> 
>>>>> Tim,
>>>>> 
>>>>> I am not sure I understand thos RL violation errors, actually. I thought property chains are part of RL. Or are these errors independent of the usage of property chains?
>>>>> 
>>>>> Thanks
>>>>> 
>>>>> Ivan
>>>>> 
>>>>> ---
>>>>> Ivan Herman
>>>>> Tel:+31 641044153
>>>>> http://www.ivan-herman.net
>>>>> 
>>>>> (Written on mobile, sorry for brevity and misspellings...)
>>>>> 
>>>>> 
>>>>> 
>>>>> On 7 May 2012, at 19:21, Timothy Lebo <lebot@rpi.edu> wrote:
>>>>> 
>>>>>> I've committed
>>>>>> 
>>>>>> http://dvcs.w3.org/hg/prov/rev/d59de1d6a8ba
>>>>>> 
>>>>>> to include chain properties such as:
>>>>>> 
>>>>>>> (prov:qualifiedUsage prov:entity) rdfs:subPropertyOf prov:used .
>>>>>> 
>>>>>> Note that Stian's RL checker gives the following "RL violations", which we will need to "justify" in the appendix of the next PROV-O HTML release:
>>>>>> 
>>>>>> Use of non-simple property in IrrefexiveObjectProperty axiom: [IrreflexiveObjectProperty(<http://www.w3.org/ns/prov#wasGeneratedBy>) in <http://www.w3.org/ns/prov#>]
>>>>>> Use of non-simple property in IrrefexiveObjectProperty axiom: [IrreflexiveObjectProperty(<http://www.w3.org/ns/prov#used>) in <http://www.w3.org/ns/prov#>]
>>>>>> Use of non-simple property in AsymmetricObjectProperty axiom: [AsymmetricObjectProperty(<http://www.w3.org/ns/prov#wasDerivedFrom>) in <http://www.w3.org/ns/prov#>]
>>>>>> Use of non-simple property in AsymmetricObjectProperty axiom: [AsymmetricObjectProperty(<http://www.w3.org/ns/prov#used>) in <http://www.w3.org/ns/prov#>]
>>>>>> Use of non-simple property in IrrefexiveObjectProperty axiom: [IrreflexiveObjectProperty(<http://www.w3.org/ns/prov#wasDerivedFrom>) in <http://www.w3.org/ns/prov#>]
>>>>>> Use of non-simple property in FunctionalObjectProperty axiom: [FunctionalObjectProperty(<http://www.w3.org/ns/prov#wasGeneratedBy>) in <http://www.w3.org/ns/prov#>]
>>>>>> Use of non-simple property in AsymmetricObjectProperty axiom: [AsymmetricObjectProperty(<http://www.w3.org/ns/prov#wasGeneratedBy>) in <http://www.w3.org/ns/prov#>]
>>>>>> 
>>>>>> Regards,
>>>>>> Tim
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>> On May 7, 2012, at 8:28 AM, Provenance Working Group Issue Tracker wrote:
>>>>>> 
>>>>>>> PROV-ISSUE-372 (qualified-property-chains): ( prov:qualifedUsage prov:entity ) rdfs:subPropertyOf prov:used
>>>>>>> 
>>>>>>> http://www.w3.org/2011/prov/track/issues/372
>>>>>>> 
>>>>>>> Raised by: Timothy Lebo
>>>>>>> On product:
>>>>>>> 
>>>>>>> http://www.w3.org/mid/D3BF08F5-B11F-4766-919D-FD81DD9D59C7@w3.org
>>>>>>> 
>>>>>>> (I have not found yet the semantics document, I am not sure whether what I write makes sense...)
>>>>>>> 
>>>>>>> Looking at the Prov-o and the qualified terms. Taking the first time in the list, ie, qualifiedUsage. Isn't it correct that, at least conceptually, if I have
>>>>>>> 
>>>>>>> ex:E a prov:Entity;
>>>>>>> prov:qualifiedUsage [
>>>>>>> a prov:Usage ;
>>>>>>> prov:entity ex:E
>>>>>>> ] .
>>>>>>> 
>>>>>>> then, again conceptually, I would expect something like
>>>>>>> 
>>>>>>> ex:E prov:used ex:E .
>>>>>>> 
>>>>>>> to be 'present'. It strikes me that this is exactly what the OWL 2 property chains do (and those are still OWL RL), by saying:
>>>>>>> 
>>>>>>> (prov:qualifiedUsage prov:entity) rdfs:subPropertyOf prov:used .
>>>>>>> 
>>>>>>> Isn't it worth adding it to the OWL ontology? Or do I miss something here?
>>>>>>> 
>>>>>>> Ivan
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>> 
>>>>> 
>>>>> 
>>>> 
>>> 
>>> 
>>> ----
>>> 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
>>> 
>>> 
>>> 
>>> 
>>> 
>> 
>> 
>> 
>> -- 
>> Stian Soiland-Reyes, myGrid team
>> School of Computer Science
>> The University of Manchester
> 
> 
> ----
> 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
> 
> 
> 
> 
> 
> 
> 
Received on Wednesday, 16 May 2012 15:33:51 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Wednesday, 16 May 2012 15:33:51 GMT