[MOBY-l] Usage of Array Types and/or Collection
Michael Gerlich
MichaelGerlich at gmx.de
Sun Jul 27 09:29:40 UTC 2008
Hi all,
I encountered some sort of strange behaviour when working with Biomoby
Services trough Dashboard and Taverna.
When a serviece consumes an array, then you've got the possibility to add
multiple entries to this array via dashboard's simple client and these green
"+" signs. The xml output also shows that this array element has several
child elements according to your inputs.
So the service get's invoked one time with the complete list/array (and
collection has been disabled when registering the service).
If I try to invoke this service via Taverna, I can also add multiple inputs,
but this time the service doesn't get called one time, but e.g. 8 times if
your array consisted of 8 entries (that makes 8 single input fields in
Taverna).
I also can see that the xml output created by Taverna shows 8 different
inputs/outputs to the moby service instead of the one dashboard gave.
Now, after creating another service that didn't used an array, but just a
single field of that array and marked collection, things a vice versa.
Taverna allows that the inputs get stacked up as a list and the service is
called only one time, while in dashboard through using only one field, there
is also only one input without the ability to add more entries.
Is this strange or is this behaviour wanted?
Also Taverna can parse the different Biomoby inputs/outputs - is there some
kind of switch to say "add them all as array to make a single input or call
to the service?
In addition, could somebody tell me when it's right to choose an array as
input and when it's better to activate "collection" when registering a
service?
Is it appropriate to always check collection when dealing with arrays or
some sort of multiple inputs?
Best wishes,
Michael
More information about the moby-l
mailing list