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

Creating Data Flow for Complex Messages

From: ahtisham aslam <ahtisham_a@yahoo.com>
Date: Mon, 10 Jul 2006 03:20:30 -0700 (PDT)
Message-ID: <20060710102030.4626.qmail@web34802.mail.mud.yahoo.com>
To: public-sws-ig@w3.org

Hi,

On mindswap site we have an example service "Book
Finder" which has an operation "GetInfo". "GetInfo"
operation take the input parameter "ISBN" which is of
type "String" and has output "GetInfoResult" which is
of type "bookInfo". The defination of "bookInfo"
message is as under:

<s:complexType name="bookInfo">
&#8722;
	<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="isbn"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="title"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="author"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="pubdate"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1"
name="publisher" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="format"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="imgUrl"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1"
name="timestamp" type="s:string"/>
<s:element minOccurs="0" maxOccurs="unbounded"
name="vendorprice" type="tns:bookInfoVendorprice"/>
</s:sequence>
</s:complexType>

where as the last element (i.e. "vendorprice") of
above complex message is of type "bookInfoVendorprice"
where as definition of "bookInfoVendorprice" is as
under:

<s:complexType name="bookInfoVendorprice">
&#8722;
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="name"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="siteUrl"
type="s:string"/>
<s:element minOccurs="0" maxOccurs="1"
name="pricePrefix" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="price"
type="s:string"/>
</s:sequence>
</s:complexType>

I want to create a composite service in which first
atomic process is "GetInfo" (above web service
operation) and second atomic process is
"checkIfVendorExist". The atomic process
"checkIfVendorExist" has input of type
"bookInfoVendorprice".

I want to create the data flow in which output
"bookInfoVendorprice" of the first atomic process is
given as input of the second atomic process.

How i can do that ? For example for a simple "String"
tpye parameter we can simply bind the output of an
atomic process as input for the other. What to do
here, since "bookInfoVendorprice" is complex message
and has further message parts. Either we have to
define some XSL Transformation or what ?

Bye.

__________________________________________________
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 
Received on Monday, 10 July 2006 10:20:33 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Sunday, 16 March 2008 00:11:05 GMT