Correspondance of Profile and Process IOPE's

 Dear All, 

 Since the Profile and the Process Model are two different descriptions of the same service, it is expected that there exist clear links between their IOPE parameters. However, the following facts indicate an inconsistency in this correspondence:

1) The Profile ontology[1] models a parameter as a property of Profile which ranges over ParameterDescription ("parameter"). Inputs, outputs, preconditions and effects are subproperties of the "parameter".

2) The link to the parameters in the Process model is done by the "refersTo" property of ParameterDescription.

<daml:ObjectProperty rdf:ID="refersTo">
  <daml:domain rdf:resource="#ParameterDescription" /> 
  <daml:range rdf:resource="http://www.daml.org/services/daml-s/0.9/Process.daml#parameter" /> 
</daml:ObjectProperty>


3) However, in the Process[2] model only the "input" and the "output" parameters are subproperties of "Process:parameter", while "precondition" and "effect" are not. 

From 1), 2) and 3) it results that "refersTo" cannot have as instance any "precondition" or "effect" parameters of the Process (since these are *not* subproperties of Process:parameter). Therefore, having a precondition(effect) in the Profile it is impossible to refer to its corresponding precondition(effect).



Checking the DAML-S 0.9 whitepaper [3] about this issue is even more confusing. 

	At one hand, it is said that preconditions(effects) can link to their corresponding parts in the Process Model through the ParameterDescription. 

For ex: "precondition: [...] takes as value an instance of ParameterDescription (4.2.5) that specifies an id of the precondition, a value and a reference to the corresponding precondition in the process model"

Indeed, this is what one would normally expect to happen.


	However, at the other hand ParameterDescription is introduced as being used just for IO's (which is inconsistent with the DAML-S ontology):

"The class ParameterDescription provides values to inputs and outputs. It collects in one class the name of the input or output that can be used as an identifier, its value and a reference to the corresponding input or output in the process model. 
[..]
refersTo provides a reference to the input or output in the process model."

This definitely conflicts what was said in the previous paragraph about preconditions and effects.


After all these I am very curious to find out what is the real intention of the model: 
	a) to allow correspondence between all types of parameters (I would vote for this)
	b) to allow correspondence only between IO's. Then why?

In any case, I think it is important to make the corresponding updates both in the ontology and in the documentation.

Looking forward for your answer,

-- 
 Marta Sabou


[1]http://www.daml.org/services/daml-s/0.9/Profile.daml
[2]http://www.daml.org/services/daml-s/0.9/Process.daml
[3]http://www.daml.org/services/daml-s/0.9/daml-s.pdf

Received on Thursday, 15 May 2003 10:01:24 UTC