<workflow xmlns="http://taverna.sf.net/2008/xml/t2flow" version="1" producedBy="taverna-2.2.0"><dataflow id="a0059959-9a35-4366-b5c7-af22146bfaaf" role="top"><name>Workflow37</name><inputPorts><port><name>AGI_identifier</name><depth>0</depth><granularDepth>0</granularDepth><annotations /></port></inputPorts><outputPorts><port><name>result</name><annotations /></port></outputPorts><processors><processor><name>GabiPDCheckMaterialByAGI</name><inputPorts><port><name>Object(Identifier)</name><depth>0</depth></port></inputPorts><outputPorts><port><name>BasicClone(Collection - 'Material' As Simples)</name><depth>1</depth><granularDepth>1</granularDepth></port></outputPorts><annotations /><activities><activity><raven><group>net.sf.taverna.t2.activities</group><artifact>biomoby-activity</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.activities.biomoby.BiomobyActivity</class><inputMap><map from="Object(Identifier)" to="Object(Identifier)" /></inputMap><outputMap><map from="BasicClone(Collection - 'Material' As Simples)" to="BasicClone(Collection - 'Material' As Simples)" /></outputMap><configBean encoding="xstream"><net.sf.taverna.t2.activities.biomoby.BiomobyActivityConfigurationBean xmlns="">
  <mobyEndpoint>http://moby.ucalgary.ca/moby/MOBY-Central.pl</mobyEndpoint>
  <serviceName>GabiPDCheckMaterialByAGI</serviceName>
  <authorityName>www.gabipd.org</authorityName>
  <category />
  <serviceType />
  <secondaries />
</net.sf.taverna.t2.activities.biomoby.BiomobyActivityConfigurationBean></configBean><annotations /></activity></activities><dispatchStack><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
  <maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
  <backoffFactor>1.0</backoffFactor>
  <initialDelay>1000</initialDelay>
  <maxDelay>5000</maxDelay>
  <maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer></dispatchStack><iterationStrategyStack><iteration><strategy><cross><port name="Object(Identifier)" depth="0" /></cross></strategy></iteration></iterationStrategyStack></processor><processor><name>Object</name><inputPorts><port><name>id</name><depth>0</depth></port></inputPorts><outputPorts><port><name>mobyData</name><depth>0</depth><granularDepth>0</granularDepth></port></outputPorts><annotations /><activities><activity><raven><group>net.sf.taverna.t2.activities</group><artifact>biomoby-activity</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.activities.biomoby.BiomobyObjectActivity</class><inputMap><map from="id" to="id" /></inputMap><outputMap><map from="mobyData" to="mobyData" /></outputMap><configBean encoding="xstream"><net.sf.taverna.t2.activities.biomoby.BiomobyObjectActivityConfigurationBean xmlns="">
  <mobyEndpoint>http://moby.ucalgary.ca/moby/MOBY-Central.pl</mobyEndpoint>
  <serviceName>Object</serviceName>
  <authorityName>openinformatics.com</authorityName>
</net.sf.taverna.t2.activities.biomoby.BiomobyObjectActivityConfigurationBean></configBean><annotations /></activity></activities><dispatchStack><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
  <maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
  <backoffFactor>1.0</backoffFactor>
  <initialDelay>1000</initialDelay>
  <maxDelay>5000</maxDelay>
  <maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer></dispatchStack><iterationStrategyStack><iteration><strategy><cross><port name="id" depth="0" /></cross></strategy></iteration></iterationStrategyStack></processor><processor><name>Parse Moby Data(BasicClone)</name><inputPorts><port><name>mobyData('BasicClone')</name><depth>0</depth></port></inputPorts><outputPorts><port><name>Material_'Identifier'</name><depth>1</depth><granularDepth>1</granularDepth></port><port><name>Material_'Kind'</name><depth>1</depth><granularDepth>1</granularDepth></port><port><name>Material_'AccessPageUrl'</name><depth>1</depth><granularDepth>1</granularDepth></port><port><name>Material_'Sequence'_'Length'</name><depth>1</depth><granularDepth>1</granularDepth></port><port><name>Material_'Sequence'_'SequenceString'</name><depth>1</depth><granularDepth>1</granularDepth></port></outputPorts><annotations /><activities><activity><raven><group>net.sf.taverna.t2.activities</group><artifact>biomoby-activity</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.activities.biomoby.MobyParseDatatypeActivity</class><inputMap><map from="mobyData('BasicClone')" to="mobyData('BasicClone')" /></inputMap><outputMap><map from="Material_'Sequence'_'SequenceString'" to="Material_'Sequence'_'SequenceString'" /><map from="Material_'Identifier'" to="Material_'Identifier'" /><map from="Material_'Kind'" to="Material_'Kind'" /><map from="Material_'Sequence'_'Length'" to="Material_'Sequence'_'Length'" /><map from="Material_'AccessPageUrl'" to="Material_'AccessPageUrl'" /></outputMap><configBean encoding="xstream"><net.sf.taverna.t2.activities.biomoby.MobyParseDatatypeActivityConfigurationBean xmlns="">
  <datatypeName>BasicClone</datatypeName>
  <registryEndpoint>http://moby.ucalgary.ca/moby/MOBY-Central.pl</registryEndpoint>
  <articleNameUsedByService>Material</articleNameUsedByService>
</net.sf.taverna.t2.activities.biomoby.MobyParseDatatypeActivityConfigurationBean></configBean><annotations /></activity></activities><dispatchStack><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
  <maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
  <backoffFactor>1.0</backoffFactor>
  <initialDelay>1000</initialDelay>
  <maxDelay>5000</maxDelay>
  <maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer></dispatchStack><iterationStrategyStack><iteration><strategy><cross><port name="mobyData('BasicClone')" depth="0" /></cross></strategy></iteration></iterationStrategyStack></processor><processor><name>concatenate_results</name><inputPorts><port><name>matIDList</name><depth>2</depth></port><port><name>matKindList</name><depth>2</depth></port><port><name>matURLList</name><depth>2</depth></port><port><name>seqLengthList</name><depth>2</depth></port><port><name>seqStringList</name><depth>2</depth></port></inputPorts><outputPorts><port><name>output</name><depth>0</depth><granularDepth>0</granularDepth></port></outputPorts><annotations /><activities><activity><raven><group>net.sf.taverna.t2.activities</group><artifact>beanshell-activity</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.activities.beanshell.BeanshellActivity</class><inputMap><map from="matKindList" to="matKindList" /><map from="seqLengthList" to="seqLengthList" /><map from="seqStringList" to="seqStringList" /><map from="matIDList" to="matIDList" /><map from="matURLList" to="matURLList" /></inputMap><outputMap><map from="output" to="output" /></outputMap><configBean encoding="xstream"><net.sf.taverna.t2.activities.beanshell.BeanshellActivityConfigurationBean xmlns="">
  <script>output = "";

for (int i = 0; i &lt; matIDList.size(); ++i) {
	output += (i+1) + ". Clone\n";
	if (matIDList.get(i) != null &amp;&amp; matIDList.get(i).size() &gt; 0) {
		output += "\tIdentifier    : " + matIDList.get(i).get(0) + "\n";
	} else {
		output += "\tIdentifier    : \n";
	}
	if (matKindList.get(i) != null &amp;&amp; matKindList.get(i).size() &gt; 0) {
		output += "\tKind          : " + matKindList.get(i).get(0) + "\n";
	} else {
		output += "\tKind          : \n";
	}
	if (matURLList.get(i) != null &amp;&amp; matURLList.get(i).size() &gt; 0) {
		output += "\tAccessPageURL : " + matURLList.get(i).get(0) + "\n";
	} else {
		output += "\tAccessPageURL : \n";
	}
	if (seqLengthList.get(i) != null &amp;&amp; seqLengthList.get(i).size() &gt; 0) {
		output += "\tsequenceLength: " + seqLengthList.get(i).get(0) + "\n";
	} else {
		output += "\tsequenceLength: \n";
	}
	if (seqStringList.get(i) != null &amp;&amp; seqStringList.get(i).size() &gt; 0) {
		output += "\tsequenceString: " + seqStringList.get(i).get(0) + "\n";
	} else {
		output += "\tsequenceString: \n";
	}
}
</script>
  <dependencies />
  <classLoaderSharing>workflow</classLoaderSharing>
  <localDependencies />
  <artifactDependencies />
  <inputs>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
      <handledReferenceSchemes />
      <translatedElementType>java.lang.String</translatedElementType>
      <allowsLiteralValues>true</allowsLiteralValues>
      <name>matURLList</name>
      <depth>2</depth>
      <mimeTypes>
        <string>text/plain</string>
      </mimeTypes>
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
      <handledReferenceSchemes />
      <translatedElementType>java.lang.String</translatedElementType>
      <allowsLiteralValues>true</allowsLiteralValues>
      <name>matIDList</name>
      <depth>2</depth>
      <mimeTypes>
        <string>text/plain</string>
      </mimeTypes>
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
      <handledReferenceSchemes />
      <translatedElementType>java.lang.String</translatedElementType>
      <allowsLiteralValues>true</allowsLiteralValues>
      <name>matKindList</name>
      <depth>2</depth>
      <mimeTypes>
        <string>text/plain</string>
      </mimeTypes>
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
      <handledReferenceSchemes />
      <translatedElementType>java.lang.String</translatedElementType>
      <allowsLiteralValues>true</allowsLiteralValues>
      <name>seqStringList</name>
      <depth>2</depth>
      <mimeTypes>
        <string>text/plain</string>
      </mimeTypes>
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
      <handledReferenceSchemes />
      <translatedElementType>java.lang.String</translatedElementType>
      <allowsLiteralValues>true</allowsLiteralValues>
      <name>seqLengthList</name>
      <depth>2</depth>
      <mimeTypes>
        <string>text/plain</string>
      </mimeTypes>
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean>
  </inputs>
  <outputs>
    <net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
      <granularDepth>0</granularDepth>
      <name>output</name>
      <depth>0</depth>
      <mimeTypes />
    </net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean>
  </outputs>
</net.sf.taverna.t2.activities.beanshell.BeanshellActivityConfigurationBean></configBean><annotations /></activity></activities><dispatchStack><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Parallelize</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig xmlns="">
  <maxJobs>1</maxJobs>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ParallelizeConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.ErrorBounce</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Failover</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Retry</class><configBean encoding="xstream"><net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig xmlns="">
  <backoffFactor>1.0</backoffFactor>
  <initialDelay>1000</initialDelay>
  <maxDelay>5000</maxDelay>
  <maxRetries>0</maxRetries>
</net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.RetryConfig></configBean></dispatchLayer><dispatchLayer><raven><group>net.sf.taverna.t2.core</group><artifact>workflowmodel-impl</artifact><version>1.2</version></raven><class>net.sf.taverna.t2.workflowmodel.processor.dispatch.layers.Invoke</class><configBean encoding="xstream"><null xmlns="" /></configBean></dispatchLayer></dispatchStack><iterationStrategyStack><iteration><strategy><cross><port name="matIDList" depth="2" /><port name="matKindList" depth="2" /><port name="matURLList" depth="2" /><port name="seqLengthList" depth="2" /><port name="seqStringList" depth="2" /></cross></strategy></iteration></iterationStrategyStack></processor></processors><conditions /><datalinks><datalink><sink type="processor"><processor>GabiPDCheckMaterialByAGI</processor><port>Object(Identifier)</port></sink><source type="processor"><processor>Object</processor><port>mobyData</port></source></datalink><datalink><sink type="processor"><processor>Object</processor><port>id</port></sink><source type="dataflow"><port>AGI_identifier</port></source></datalink><datalink><sink type="processor"><processor>Parse Moby Data(BasicClone)</processor><port>mobyData('BasicClone')</port></sink><source type="processor"><processor>GabiPDCheckMaterialByAGI</processor><port>BasicClone(Collection - 'Material' As Simples)</port></source></datalink><datalink><sink type="processor"><processor>concatenate_results</processor><port>matIDList</port></sink><source type="processor"><processor>Parse Moby Data(BasicClone)</processor><port>Material_'Identifier'</port></source></datalink><datalink><sink type="processor"><processor>concatenate_results</processor><port>matKindList</port></sink><source type="processor"><processor>Parse Moby Data(BasicClone)</processor><port>Material_'Kind'</port></source></datalink><datalink><sink type="processor"><processor>concatenate_results</processor><port>matURLList</port></sink><source type="processor"><processor>Parse Moby Data(BasicClone)</processor><port>Material_'AccessPageUrl'</port></source></datalink><datalink><sink type="processor"><processor>concatenate_results</processor><port>seqLengthList</port></sink><source type="processor"><processor>Parse Moby Data(BasicClone)</processor><port>Material_'Sequence'_'Length'</port></source></datalink><datalink><sink type="processor"><processor>concatenate_results</processor><port>seqStringList</port></sink><source type="processor"><processor>Parse Moby Data(BasicClone)</processor><port>Material_'Sequence'_'SequenceString'</port></source></datalink><datalink><sink type="dataflow"><port>result</port></sink><source type="processor"><processor>concatenate_results</processor><port>output</port></source></datalink></datalinks><annotations><annotation_chain_2_2 encoding="xstream"><net.sf.taverna.t2.annotation.AnnotationChainImpl xmlns="">
  <annotationAssertions>
    <net.sf.taverna.t2.annotation.AnnotationAssertionImpl>
      <annotationBean class="net.sf.taverna.t2.annotation.annotationbeans.IdentificationAssertion">
        <identification>a0059959-9a35-4366-b5c7-af22146bfaaf</identification>
      </annotationBean>
      <date>2010-07-23 11:46:19.165 CEST</date>
      <creators />
      <curationEventList />
    </net.sf.taverna.t2.annotation.AnnotationAssertionImpl>
  </annotationAssertions>
</net.sf.taverna.t2.annotation.AnnotationChainImpl></annotation_chain_2_2></annotations></dataflow></workflow>