[MOBY-dev] Moby Collections in Taverna

Edward Kawas edward.kawas at gmail.com
Wed Apr 19 14:50:52 UTC 2006


Hi Dirk,

You are right about the documentation and I plan on updating it today, but I
want to outline what the behaviour is now:

Service Output ----Connects to ---> Service Input
1  Simple					Simple 
2  Simple					Collection
3  Collection				Simple
4  Collection				Collection
5  CollAsSimples				Simples
6  CollAsSimples				Collection

Note that CollAsSimples transforms a collection into a list of simples.

Case 1, 4 are straight forward - the output is passed to the input as is.

Case 2, 6 - the simple (or a 'taverna list' of simples) are placed in a
collection and passed to the service.

Case 3 - the collection is broken down and each simple in the collection is
passed to the downstream service one at a time (in a single invocation message).
i.e. 
<MOBY>
  <mobyContent>
	<mobyData queryID="a0">
		<Collection>
			<Simple>1</Simple>
			<Simple>2</Simple>
			<Simple>3</Simple>
			<Simple>4</Simple>
		</Collection>
	</mobyData>
  </mobyContent>
</MOBY>

Becomes

<MOBY>
  <mobyContent>
	<mobyData queryID="a0_1">
		<Simple>1</Simple>
	</mobyData>
  </mobyContent>
</MOBY>

<MOBY>
  <mobyContent>
	<mobyData queryID="a0_2">
		<Simple>2</Simple>
	</mobyData>
  </mobyContent>
</MOBY>

<MOBY>
  <mobyContent>
	<mobyData queryID="a0_3">
		<Simple>3</Simple>
	</mobyData>
  </mobyContent>
</MOBY>

<MOBY>
  <mobyContent>
	<mobyData queryID="a0_4">
		<Simple>4</Simple>
	</mobyData>
  </mobyContent>
</MOBY>



Case 5 - The collection became a list of simples and this case becomes similar
to case 1.

Eddie


> -----Original Message-----
> From: moby-dev-bounces at lists.open-bio.org 
> [mailto:moby-dev-bounces at lists.open-bio.org] On Behalf Of Dirk Haase
> Sent: Wednesday, April 19, 2006 6:46 AM
> To: Core developer announcements
> Subject: Re: [MOBY-dev] Moby Collections in Taverna
> 
> Hi Eddie,
> 
> On Thursday 13 April 2006 15:56, Edward Kawas wrote:
> > Hi Dirk,
> >
> > The output port behaviour has been cloned for collections 
> with a new 
> > port, Collection 'As Simples'. So that port now takes the n 
> items in a 
> > collection and produces n simples that Taverna can iterate over.
> 
> Wow, that's what I call a prompt fix!
> 
> > However, if that port isn't used and a collection is passed to a 
> > service that expects a simple, I transparently break apart the 
> > collection with n items into n invocations containing a simple and 
> > then invoke the service n times, rather than one time with a n 
> > invocation message. This was done, because I noticed that 
> there were 
> > time out issues with very large collections.
> 
> OK, I see this behavior when I use the 'output' port. For the 
> old collection-type port  'Object(Collection - 
> <outputArticleName>)' things are
> strange: it seems that only the first element in the 
> collection is piped to the next service.
> 
> However, I think this solution is very convenient. The 
> drawback is that we now have three distinct types of output 
> ports for moby services, this will confuse people. What I 
> want to say is that good documentation is desperately needed ;-)
> 
> Thanks,
> dirk
> _______________________________________________
> MOBY-dev mailing list
> MOBY-dev at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/moby-dev




More information about the MOBY-dev mailing list