- From: Jeff Thompson <jeff@thefirst.org>
- Date: Thu, 28 May 2009 10:34:29 -0700
- To: cwm talk <public-cwm-talk@w3.org>
CWM gets math through builtins like math:cos which require extending RDF to allow subject literals and using ad-hoc hooks for "intercepting" the use of builtins as predicates: @forSome :_g0 . 0.0 math:cos :_g0 . :myDoor :hasHeight :_g0 . (Thus, the reasoner can conclude :myDoor :hasHeight 1.0 .) But can't the same thing be achieved through the OWL DatatypeRestriction? :myDoor a [owl:onProperty :hasHeight; owl:someValuesFrom [owl:onDatatype xsd:double; withRestrictions (mathx:cos 0.0)]] Datatype restrictions are where OWL allows "hooks" where the reasoner must have builtins to know about datatypes. The reasoner can conclude that [owl:onDatatype xsd:double; withRestrictions (math2:cos 0.0)]] is a singleton class which is equivalent to [owl:oneOf (1.0)] and so myDoor a [owl:onProperty :hasHeight; owl:someValuesFrom [owl:oneOf (1.0)]] is equivalent to myDoor a [owl:onProperty :hasHeight; owl:hasValue 1.0] which is finally :myDoor :hasHeight 1.0 This is all pretty convoluted, but it stays within the semantics of OWL and relies in its given hooks for builtins (and could really use some syntactic sugar to help out). Has anyone looked at using DatatypeRestriction to get functions like math:cos into OWL reasoners? Thanks for any help, - Jeff
Received on Thursday, 28 May 2009 17:35:05 UTC