- From: Francesco Cannistrà <fracan@inwind.it>
- Date: Tue, 17 Jun 2003 14:07:35 +0200
- To: <www-rdf-interest@w3.org>
I think that OWL can be leveraged to express mathematical functions as well. Consider the folowing example [that tries to assert: Y=MyFunction(X1,X2)] <FunctionData rdf:about="#Y"> <isFunctionValueOf> <Function rdf:about="MyFunction"> <argument> <FunctionData rdf:about="#X1"> <value>x1</value> </argument> <argument> <FunctionData rdf:about="#X2"> <value>x2</value> </argument> </Function> </isFunctionValueOf> </FunctionData> The ontology is the following: <owl:Class rdf:ID="FunctionData " /> <owl:DatatypeProperty rdf:ID="value"> <rdfs:domain rdf:resource="#FunctionData "/> </owl:DatatypeProperty> <owl:Class rdf:ID="Function"/> <owl:ObjectProperty rdf:ID="isFunctionValueOf"> <rdfs:domain rdf:resource="#FunctionData" /> <rdfs:range rdf:resource="#Function" /> </owl:ObjectProperty> <owl:ObjectProperty rdf:ID="argument"> <rdfs:domain rdf:resource="#Function" /> <rdfs:range rdf:resource="#FunctionData " /> </owl:ObjectProperty> <owl:Class rdf:ID="MyFunctionClass"> <owl:IntersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#Function"/> <owl:Restriction> <owl:onProperty rdf:resource="#argument"/> <owl:allValuesFrom rdf:resource="#X-Domain"/> <owl:cardinality rdf:datatype="&xsd;nonNegativeInteger">2</owl:cardinality> </owl:Restriction> </owl:IntersectionOf > </owl:Class> <MyFunctionClass rdf:ID="MyFunction"/> <owl:Class rdf:ID="X-Domain"> <owl:IntersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#FunctionData "/> <owl:Restriction> <owl:onProperty rdf:resource="#value"/> <owl:allValuesFrom rdf:resource="#X-Datatype"/> </owl:Restriction> </owl:IntersectionOf > </owl:Class> <owl:Class rdf:ID="Y-Domain"> <owl:IntersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#FunctionData "/> <owl:Restriction> <owl:onProperty rdf:resource="#value"/> <owl:allValuesFrom rdf:resource="#Y-Datatype"/> </owl:Restriction> </owl:IntersectionOf > </owl:Class> Note that you can also specialize the argument property so that no any confusion can arise with the order of arguments when these are of the same type. Francesco
Received on Tuesday, 17 June 2003 08:08:00 UTC