On Tue, Oct 12, 2010 at 18:16, Jorge de Jesus <[email protected]> wrote:
> <element name="outputResult" maxOccurs="1" minOccurs="1"
> type="wps:dummyType">
..

> <complexType name="dummyType">
> <sequence>
> <any namespace="##any" processContents="skip" minOccurs="1"
> maxOccurs="1"></any>
> The outputResult output from the splitter outputs something like:
>
> <outputResult><a><b/></a><outputResult>
>
> I would except for the splitter to return just "<a></b></a>", since its
> the content to the outputResult

No, you'll unfortunately get the containing element as well, as the
type is not guaranteed to contain only a single element.. So say the
dummyType was instead:

<complexType name="dummyType">
  <sequence>
      <element name="fish" ... />
      <element name="soup" ... />
  </sequence>
</complexType>

In which case you could get from the service:


<ExecuteProcessResponse>
  <textResult>asdasd</textResult>
  <outputResult>
    <fish>sd</fish>
    <soup>sdfsdf</soup>
  </outputResult>
</ExecuteProcessResponse>

- the XML splitter would then on the "outputResult" port output only
give <outputResult><fish>..</fish><soup>..</soup></outputResult>  - so
that it is still valid XML (potentially going to other XML splitters
or other web services)

In fact - on the input to the XML splitter - the outer element is ignored.

I assume in the workflow above you are not able to add another output
XML splitter to the ExecuteProcess_Returner_Process_Output splitter,
perhaps Taverna gets confused by xsd:any..


Using your current schema, you might want to use the XPath plugin
instead - where you can easily select the 'any' element below
<outputResult>. To install the XPath plugin - go to Advanced ->
Updates and plugins -> Find new plugins and look under 'Prototype
plugins'.

Add an XPath parser from the 'Local services' folder, and in the
wizard paste an example XML from your service before you make the
element selection.


-- 
Stian Soiland-Reyes, myGrid team
School of Computer Science
The University of Manchester

------------------------------------------------------------------------------
Download new Adobe(R) Flash(R) Builder(TM) 4
The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly 
Flex(R) Builder(TM)) enable the development of rich applications that run
across multiple browsers and platforms. Download your free trials today!
http://p.sf.net/sfu/adobe-dev2dev
_______________________________________________
taverna-users mailing list
[email protected]
[email protected]
Web site: http://www.taverna.org.uk
Mailing lists: http://www.taverna.org.uk/about/contact-us/

Reply via email to