W3C home > Mailing lists > Public > public-sws-ig@w3.org > July 2004

OWL-S: Parameter modeling

From: Stephane Fellah <fellah@pcigeomatics.com>
Date: Fri, 2 Jul 2004 11:05:35 -0400
Message-ID: <8ED21571324EB145933ACCD22B86AC36627700@bach.ncr.pcigeomatics.com>
To: <public-sws-ig@w3.org>

Hi,

I have a question related to parameter modeling in OWL-S. Prior to version 1.0, parameter,input,output,precondition,effect where modeled as rdf:Property, then there have been changed to become owl:Class. I cannot find the rationale of the change in the documentation of the ontology and in the mailing list. I have found the former version more practical, because the range of the parameter (called parameterType in OWL-S 1.0,1.1) can naturally be expressed as the range of the property. 

A parameter description should have a number of properties: unique name,  description, type (datatype, or a owl:class), and optionally a set of constraints (enumeration of single values, interval with specific resolution, or a mix of both). You can think a parameter as an OLAP dimension, in dimension modeling.

To express the properties of image scale operator (process),you may describe the scaleX parameter the following way:

<owl:DatatypeProperty rdf:id="scaleX">
    <rdfs:subPropertyOf rdf:resource="http://www.daml.org/services/owl-s/0.9/Process.owl#parameter"/>
    <rdfs:domain rdf:resource="http://www.foo.com#ScaleOperator"/>    
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#float"/>
    <parameterName>scaleX</parameterName>
    <description>scale in X</description>
</owl:DatatypeProperty>


You can declare parameterName in the following way:

 <owl:DatatypeProperty rdf:ID="parameterName">
    <rdfs:domain rdf:resource="http://www.daml.org/services/owl-s/0.9/Process.owl#parameter"/>
    <rdfs:range rdf:resource="http://www.w3.org/2001/XMLSchema#string"/>
  </owl:DatatypeProperty>


When a operator is used, you can directly use the parameter property:

<ScaleOperator rdf:id="myScaleOp">
   <scaleX>1.43</scaleX>
   <scaleY>1.43</scaleY>
</ScaleOperator>


I have found this approach much more readable than the current approach used in OWL-S 1.0 and 1.1. Moreover it can bind nicely to Process Object.  

Is there any problem for OWL-S to use this approach. Are we in 2nd order predicate logic here ? Does the existing OWL inference engine work this way ? Are we still in OWL-DL ?

I would like you to discuss the pro and cons of each approach. Thanks in advance.


Best regards
 
Stephane Fellah
Web Chief Architect
 
PCI Geomatics
490, Boulevard St Joseph
Hull, Quebec
Canada J8Y 3Y7
Tel: 1 819 770 0022 Ext. 223
Fax 1 819 770 0098
Visit our web site:  www.pcigeomatics.com
 
Received on Friday, 2 July 2004 11:06:06 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 17:32:45 UTC