- From: Ale <ale_univ@yahoo.it>
- Date: Tue, 18 Oct 2005 12:35:12 +0200
- To: public-sws-ig@w3.org
just a simple question, look at this code taken from the "OWL-S Semantic Markup for Web Services" by David Martin e al. : <process:CompositeProcess rdf:ID="CP"> <process:hasInput rdf:ID="I1"/> <process:hasOutput rdf:ID="O1"/> <process:composedOf> <process:Sequence rdf:ID="CP"> <process:components rdf:parseType="Collection"> <process:Perform rdf:ID="Step1"> <process:process rdf:resource="&aux;#S1"/> <process:hasDataFrom> <process:InputBinding> <process:theParam rdf:resource="&aux;#I11"/> <process:valueFunction expressionLanguage="&drs;" rdf:parseType="Literal"> <drs:Functional_term> <drs:term_function rdf:resource="&arith;#incr"/> <drs:term_args rdf:parseType="Collection"> <process:valueOf> <process:theParam rdf:resource="#I1"/> <process:fromProcess rdf:resource="#TheParentPerform"/> </process:valueOf> </drs:term_args> </drs:Functional_term> </process:valueFunction> </process:InputBinding> <process:InputBinding> <process:theParam rdf:resource="&aux;#I12"/> <process:valueData xsd:datatype="&xsd;#string" >Academic</process:valueData> </process:InputBinding> </process:hasDataFrom> </process:Perform> <process:Perform rdf:ID="Step2"> <process:process rdf:resource="&aux;#S2"/> <process:hasDataFrom> <process:Binding> <process:theParam rdf:resource="&aux;#I21"/> <process:valueSource> <process:ValueOf> <process:theParam rdf:resource="#O11"/> <process:fromProcess rdf:resource="#Step1"/> </process:ValueOf> </process:valueSource> </process:Binding> </process:hasDataFrom> </process:Perform> </process:components> <process:Produce> <process:producedBinding> <process:OutputBinding> <process:theParam rdf:resource="#O1"/> <process:valueFunction expressionLanguage="&drs;" rdf:parseType="Literal"> <drs:Functional_term> <drs:term_function rdf:resource="&arith;#times"/> <drs:term_args rdf:parseType="Collection"> <xsd:Integer rdf:datatype="&xsd;#Float" >3.14159</xsd:Float> <drs:Functional_term> <drs:term_function rdf:resource="&arith;#max"/> <drs:term_args rdf:parseType="Collection"> <xsd:Integer rdf:datatype="&xsd;#Integer" >0</xsd:Integer> <process:valueOf> <process:theParam rdf:resource="#O21"/> <process:fromProcess rdf:resource="#S2"/> </process:valueOf> </drs:term_args> </drs:Functional_term> </drs:term_args> </drs:Functional_term> </process:valueFunction> </process:OutputBinding> </process:producedBinding> </process:Sequence> </process:composedOf> </process:CompositeProcess> (Sorry it's a bit long but it's the only good example I've Found....) They said: "Produce is a new class used to capture dataflows to the outputs of the ParentPerform. The outputs can't be declared once and for all, because in the presence of IfThenElses those outputs will depend on which branch of the conditional the agent takes. So at the point in a branch where the data required to compute the output are known, we insert a Produce pseudo-step to say what the output will be." OK! but... is the "process:Produce" ControlConstruct in the right place????? if "process:Poduce" is meant to be the last "pseudo-step" of the Sequence Construct, it should go before the </components> tag (because it should be the last component of the Sequence).. but if "process:Produce" is meant to be the last "pseudo-step" of the whole CompositeService it should go after the </Sequence> tag and before the </composedOf> tag... anyway it should not be placeed between </components> and </Sequence>!!!is it right? So the question is: "should Produce be the last Step of the Sequence constructoror Should it be the last Step of all the Compositeservice? thank you ___________________________________ Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB http://mail.yahoo.it
Received on Tuesday, 18 October 2005 10:35:24 UTC