hi Wenfeng ZHAO,

Thanks for your valuable information...  can you send the system
requirements for this project..

Regards
M.Madhaiyan

On Tue, Sep 29, 2009 at 8:08 AM, Wenfeng ZHAO <[email protected]> wrote:

> Hello M.Madhaiyan,
>
> Although this topic has no relation with ODE, yet I happen to have learned
> something about it and I'd like to share my view to it in the following.
>
> I believe it is possible, but rarely efficient enough to be used in real
> world. Given additional functionality description, usually in form of
> Precondition&Effect, to WS - both requested and advertised - the problem can
> be reduced to AI planning problem[1][2] as well as automatic theorem proving
> problem[1]. And one can also build an automatic composition system from
> scratch by searching in the state space of the problem[3][4][5]. But the
> essence of the problem that it is at least NP-Hard causes a situation that
> such systems are either of rich expressivity but bad performance, or of poor
> expressivity but good performance. In my opinion, how to balance
> expressivity and computing complexity is a critical issue for this problem,
> especially when the target domain is given.
>
> There are some surveys on this topic, of which I found [1][6][7] are useful
> to me.
>
> Recently I've designed and implemented a new type of automatic composition
> system for information-providing WS, SCQR, which is based on a query
> rewriting algorithm MiniCon[8][9] from Data Integration domain, which can
> automatically create BPEL processes of composition plans that can be
> deployed directly on ODE1.3.2. Although its completeness is worse than
> previous methods, the performance is rather exciting. It can get first 20
> solutions out of a repository containing 1000 services in less than 10s for
> a typical request/services combination. You can download the source codes
> from http://semwebcentral.org/projects/scqr/ and try it according to the
> specification in ReadMe.txt. Sorry that a paper explaining it in English is
> not available now.
>
> Note the methods I said  all aim at stateless WS, and there are some work
> aiming at statful WS which are referenced in [6] as "Behavior-Based Service
> Composition".
>
> [1](2004-SWSWPC-RaoJH)A Survey of Automated Web Service Composition Methods
> [2] Klusch M. and Gerber A.  Semantic web service composition planning with
> OWLS-XPlan. In: the 1st Int. AAAI Fall Symposium on Agents and the Semantic
> Web. 2005.
> [3]     Kona S, Bansal A, Gupta G, et al.  Automatic Composition of
> Semantic Web Services. In: 2007 IEEE Int’l Conf. on Web Services (ICWS
> 2007), Salt Lake City, 2007.
> [4]     Liu Z, Ranganathan A, and Riabov A.  ModelingWeb Services using
> Semantic Graph Transformations to aid Automatic Composition. In: 2007 IEEE
> Int’l Conf. on Web Services (ICWS 2007), Salt Lake City, 2007.
> [5]     Ambite, J.L. and Kapoor D. Automatically Composing Data Workflows
> with Relational Descriptions and Shim Services, in The 6th Int’l Semantic
> Web Conf. (ISWC 2007). 2007: Busan, Korea.
> [6](2005-wshp-Kuster-24)A classification of issues and approaches in
> automatic service composition
> [7](2005-rpt-Peer-64)Web service composition as ai planning - a survey
> [8]Pottinger R. and Halevy A.  MiniCon: a scalable algorithm for answering
> queries using views. The Int’l Journal on Very Large Data Bases, 2001,
> 10(2-3): 182-198.
> [9]Afrati F, Li C and Mitra P, Rewriting queries using views in the
> presence of arithmetic comparisons. Theoretical Computer Science, Dec 2006,
> 368(1-2):88-123.
>
>
> Thanks for reading
>
> Wenfeng
>
> =======On 2009-09-29 at 01:17:06 M.Madhaiyan wrote: =======
>
> >hi.
> >i am doing project in anna university, chennai, india. during my first
> >review, the project reviewers asked me to do the web service composition
> >automatically.
> >
> >In BPEL we have to hard code the composition of various services, but the
> >execution is dynamic.. it depends on the user input.
> >
> >I need the composition should be automatic one.. is there any approach..
> plz
> >help me..
> >
> >Regards
> >M.Madhaiyan
> >
> >On Mon, Sep 28, 2009 at 4:08 PM, Tammo van Lessen <[email protected]
> >wrote:
> >
> >> Hi,
> >>
> >> looks like a namespace issue. The name element you're creating in your
> >> literal-copy is not in the null-namespace but rather in the BPEL
> >> namespace (the default namespace), which is wrong. Try the following
> >> literal assign expression:
> >>
> >> <literal>
> >>    <ns2:hello xmlns:ns2="http://hello.netbureau.it/";>
> >>         <name xmlns=""/>
> >>    </ns2:hello>
> >> </literal>
> >>
> >> HTH,
> >>  Tammo
> >>
> >> [email protected] wrote:
> >> > hi,
> >> >
> >> >
> >> > this is the correct soap msg i have to send to an external webservice
> >> HelloWs and it works:
> >> >
> >> > <?xml version='1.0' encoding='utf-8'?><soapenv:Envelope
> xmlns:soapenv="
> >> http://schemas.xmlsoap.org/soap/envelope/";><soapenv:Body><ns2:hello
> >> xmlns:ns2="http://hello.netbureau.it/
> >> "><name>pippo</name></ns2:hello></soapenv:Body></soapenv:Envelope>
> >> >
> >> > so i try to call with invoke ina  bpel process:
> >> >
> >> > valuating FROM expression "{Literal <?xml version="1.0"
> >> encoding="UTF-8"?>
> >> > <literal xmlns="
> http://docs.oasis-open.org/wsbpel/2.0/process/executable
> >> ">
> >> > <ns2:hello xmlns:ns2="http://hello.netbureau.it/";>
> >> >    <name/>
> >> > </ns2:hello>
> >> > </literal>}".
> >> >
> >> > This is the firts part of intialize a variable HelloIn that is the
> input
> >> of invoke.
> >> > defining a literal for instanciate a message to send is ok but in the
> >> second step why when i copy this into the HelloIn variable whose type is
> >> hello it give me a different soap message ( ns2: namespace prefix
> disappear
> >> and also the tag name get a bpel namespace..this is not correct!)
> >> >
> >> > ASSIGN Writing variable 'HelloIn' value '<?xml version="1.0"
> >> encoding="UTF-8"?>
> >> > <message><parameters><hello xmlns="http://hello.netbureau.it/";>
> >> > <name xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable
> "/>
> >> >  </hello></parameters></message>'
> >> >
> >> > this is wrong.. why???? so i get a SelectionFailure exception when i
> try
> >> to write into HelloIn..
> >> >
> >> > :(
> >> >
> >> > my wsdl contain <types> <schema....
> >> > and elementFormDefault= "unqualified"
> >> > instead bpel schema is qualified and so tns:input is the input of bpel
> >> process (Caller.bpel), that is:
> >> >
> >> > message><payload><CallerRequest xmlns="http://MyTest.com/Test";
> xmlns:S="
> >> http://schemas.xmlsoap.org/soap/envelope/";><input xmlns="
> >> http://MyTest.com/Test
> ">pippo</input></CallerRequest></payload></message>
> >> >
> >> >
> >> > Can help me?
> >> >
> >> > this is the bpel:
> >> >
> >> > <process
> >> >     name="Caller"
> >> >     targetNamespace="http://hello.netbureau.it/";
> >> >     xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/executable";
> >> >     xmlns:xsd="http://www.w3.org/2001/XMLSchema";
> >> >     xmlns:sxt="
> >> http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Trace";
> >> >     xmlns:sxed="
> >> http://www.sun.com/wsbpel/2.0/process/executable/SUNExtension/Editor";
> >> >     xmlns:tns="http://MyTest.com/Test";
> >> >     xmlns:ns2="http://hello.netbureau.it/";>
> >> >
> >> >     <!--schema def for bpel, adding to process tag-->
> >> >     <!--xsd:schemaLocation="ws_bpel_executable.xsd"-->
> >> >
> >> >      <!-- wsdl Caller + partnerLink defintion-->
> >> >     <import namespace="http://MyTest.com/Test"; location="Caller.wsdl"
> >> importType="http://schemas.xmlsoap.org/wsdl/"/>
> >> >      <!-- wsdl Ws Helloname + PartenrLinkType definition-->
> >> >     <import namespace="http://hello.netbureau.it/";
> >> location="Helloname.wsdl" importType="http://schemas.xmlsoap.org/wsdl/
> "/>
> >> >     <!-- xsd xhema for HellonameWs -->
> >> >     <!--import namespace="http://hello.netbureau.it/";
> >> location="Helloname.xsd" importType="http://www.w3.org/2001/XMLSchema
> "/-->
> >> >     <partnerLinks>
> >> >         <partnerLink name="HelloWs" partnerLinkType="ns2:Helloname"
> >> partnerRole="WriteHelloMsgRole"/>
> >> >         <partnerLink name="Caller" partnerLinkType="tns:Caller"
> >> myRole="CallerProvider"/>
> >> >     </partnerLinks>
> >> >     <variables>
> >> >         <variable name="CallerOut"
> >> messageType="tns:CallerResponseMessage"/>
> >> >         <variable name="HelloOut" messageType="ns2:helloResponse"/>
> >> >         <variable name="HelloIn" messageType="ns2:hello" />
> >> >         <variable name="ProcessIn"
> >> messageType="tns:CallerRequestMessage"/>
> >> >     </variables>
> >> >     <sequence>
> >> >         <receive name="ReceiveFromclient"
> >> >         createInstance="yes"
> >> >         partnerLink="Caller"
> >> >         operation="process" xmlns:tns="http://MyTest.com/Test";
> >> >         portType="tns:Caller"
> >> >         variable="ProcessIn"/>
> >> >         <assign name="Assign1">
> >> >             <copy>
> >> > <!-- first part soap message correct-->
> >> >                 <from>
> >> >                     <literal>
> >> >                         <ns2:hello xmlns:ns2="
> http://hello.netbureau.it/
> >> ">
> >> >                             <name/>
> >> >                         </ns2:hello>
> >> >                     </literal>
> >> >                 </from>
> >> > <!-- second part soap message wrong -->
> >> >                 <to variable="HelloIn" part="parameters"></to>
> >> >             </copy>
> >> >             <copy>
> >> >                 <from>$ProcessIn.payload/tns:input</from>
> >> >                 <to>$HelloIn.parameters/name</to>
> >> >             </copy>
> >> >         </assign>
> >> >         <invoke name="InvokeHelloname"
> >> >         partnerLink="HelloWs"
> >> >         operation="hello"
> >> >         portType="ns2:Helloname"
> >> >         inputVariable="HelloIn"
> >> >         outputVariable="HelloOut"/>
> >> >         <assign name="Assign2">
> >> >             <copy>
> >> >                 <from>
> >> >                     <literal>
> >> >                         <tns:CallerResponse>
> >> >                             <tns:result/>
> >> >                         </tns:CallerResponse>
> >> >                     </literal>
> >> >                 </from>
> >> >                 <to part="payload" variable="CallerOut"/>
> >> >             </copy>
> >> >             <copy>
> >> >                 <!-- this is work fine without namespace(it depends on
> >> web service response)-->
> >> >                 <from>$HelloOut.parameters/return</from>
> >> >                 <to>$CallerOut.payload/tns:result</to>
> >> >             </copy>
> >> >         </assign>
> >> >         <reply name="ReplyToClient" partnerLink="Caller"
> >> operation="process" portType="tns:Caller" variable="CallerOut"/>
> >> >     </sequence>
> >> >
> >> > </process>
> >> >
> >> >
> >> >
> >> >
> >>
> >>
> >> --
> >> Tammo van Lessen - http://www.taval.de
> >>
> >
>
> = = = = = = = = = = = = = = = = = = = =
> ZHAO Wenfeng (赵文峰)
> Ph.D. Candidate
> http://www.bupt.edu.cn
>
>

Reply via email to