Re: OWL-2 property chain with a data property

Hi Simon,

thank you for your reply. I don't think the boxing option is so 
practical to use. I think I'll define my data property and I'll make 
redundant FIBO-compatible triples by means of SPARQL CONSTRUCTs (or Jena 
rules, or something like that).

Marco.


On 12/07/2017 18:55, Simon Spero wrote:
> OWL 2 role chains are only allowed for object properties; there is no 
> syntactic way to use a data property in a role chain. There was some 
> discussion about whether it would be safe to provide for role chains 
> that terminated in a data property, but I believe that the issue was 
> not pursued.
>
> Protégé uses the OWLAPI to parse ontology document into axioms, and by 
> default, parsing is done using several generations of error recovery 
> hackery is used to attempt to repair documents that are not strictly 
> legal.
> The resultant ontology is not OWL-DL because it  has something that is 
> both an Object and a Data  property (illegal punning). It is legal OWL 
> 2 "full" , but that is not supported by reasoners, and indeed cannot 
> strictly be parsed  from RDF - in this case, adding a HasKey axiom 
> using the property would generate an ambiguous rdf document.
>
> You might be able to do what you want if you "box" the data value and 
> define a new object property for use in the role chain.
>
> Simon
>
> On Jul 12, 2017 1:04 PM, "Marco Brandizi" <marco.brandizi@gmail.com 
> <mailto:marco.brandizi@gmail.com>> wrote:
>
>     Hi all,
>
>     I haven't clear the issue in the subject. I have this situation:
>
>     class *fibo_bft:Percentage*
>     (http://www.omg.org/spec/EDMC-FIBO/FND/Utilities/BusinessFacingTypes.rdf
>     <http://www.omg.org/spec/EDMC-FIBO/FND/Utilities/BusinessFacingTypes.rdf>)
>       having the data property *fibo_bft:hasPercentageValue*
>
>     I'd like to simplify it in my own ontology:
>
>     new object property: *my:has-percentage*, range: fibo_bft:Percentage
>     new datatype property: *my:has-percentage-value*
>       as equivalent to: my:has-percentage o fibo_bft:hasPercentageValue
>
>     I've tried to define the axiom above in Protegé 5.2:
>     - I cannot define a datatype property as subproperty of a chain axiom
>     - but I can do it for object properties
>
>     So, I defined the the above manually, by editing the ontology .owl
>     file:
>>         <owl:DatatypeProperty
>>     rdf:about="http://www.example.com/terms#has-percentage-value"
>>     <http://www.example.com/terms#has-percentage-value>>
>>             <owl:propertyChainAxiom rdf:parseType="Collection">
>>                 <rdf:Description
>>     rdf:about="http://www.example.com/terms#has-percentage"
>>     <http://www.example.com/terms#has-percentage>/>
>>                 <rdf:Description
>>     rdf:about="http://www.omg.org/spec/EDMC-FIBO/FND/Utilities/BusinessFacingTypes/hasPercentageValue"
>>     <http://www.omg.org/spec/EDMC-FIBO/FND/Utilities/BusinessFacingTypes/hasPercentageValue>/>
>>             </owl:propertyChainAxiom>
>>         </owl:DatatypeProperty>
>
>      but, when I reload it in Protegé, my:has-percentage-value is both
>     a data property and an object property.
>
>     Question: is *owl:propertyChainAxiom* available for object
>     property only, or is this a bug in Protegé?
>
>     Thanks in advance,
>     Marco
>
>

-- 

=========================================================================
Marco Brandizi <marco.brandizi@gmail.com>
http://www.marcobrandizi.info

Received on Wednesday, 12 July 2017 18:13:10 UTC