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

Tracker, this is  ISSUE-377

Tim

On May 15, 2012, at 11:02 AM, 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.
> 
> 
> 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
> 

Received on Monday, 21 May 2012 18:39:35 UTC