- From: Drew McDermott <drew.mcdermott@yale.edu>
- Date: Thu, 11 Sep 2003 13:48:38 -0400 (EDT)
- To: www-ws@w3.org
[Charlie Abela] Is it possible, in the process model, to describe a service who's output/effects are conditioned by a conditional statement? That is, given a certain value for that condition an outputs/effect A is produced while given another value, an output/effect B is produced. I know that there is the if-then-else construct but it is used in case the condition regards a choice between two processcomponeents and not outputs/effets. DAML-S has conditional effects and conditional outputs for atomic processes (as well as composite ones). An atomic process has no internal structure, so it can't use an if-then-else to describe conditional outputs and effects. There is some question about how the presence of conditional outputs affects a grounding to WSDL, which doesn't have them. The class Condition as described in the process model is still undefined since it is expected that DAML+OIL or OWL will be used to describe it more fully. Will this problem be solved by having a mathematical ontology that defines mathematical relations such as =, >, < etc? Or is it the case that rules have to be introduced to solve this problem? I think the consensus is that conditions should be describable by RDF structures, using Decker's TRIPLE system, the DRS system developed by me and some other people, or RuleML (layered on top of RDF). All of these systems represent atomic formulas roughly thus: <atomic-formula> <predicate>R</predicate> <leftarg>A</leftarg> <rightarg>B</rightarg> </atomic-formula> with various gimmicks for non-binary predicates. The key point is that the atomic formula R(a,b) can't be represented as the triple [a R b] because then there would be no way to refer to it without asserting it. One alternative to this layering device is to extend RDF as CWM does, by providing an explicit notation for referring to triples without automatically asserting them. Another alternative is to do what BPEL4WS does, which is to punt and make conditions be strings with their own internal syntax, which somehow relate to the XML around them. If you're going to do that, you might as well make the whole language have its own syntax. See below. The definition of the condtionaloutput and conditionaleffect in the process model is somewhat cumbersome to define. Since work is being done on the PAI model of DAML-S can such issues be tackled to make these more readable. It would be quite an advantage for both developer creating ontologies and tools to automatically generate them and also for the less expert user. PAI helps a lot, but RDF is just intrinsically verbose. I'm not sure what you mean by "tools to automatically generate them," but it would not be hard to produce a nice simple syntax for processes, and have the RDF versions be generated by computer. My recent postings on PAI surface syntax address this issue. -- -- Drew McDermott Yale University CS Dept.
Received on Thursday, 11 September 2003 13:48:40 UTC