| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| |
| <xsd:schema elementFormDefault="unqualified" |
| targetNamespace="http://taverna.sf.net/2008/xml/t2activities" |
| xmlns:activities="http://taverna.sf.net/2008/xml/t2activities" |
| xmlns:tav="http://taverna.sf.net/2008/xml/t2flow" xmlns:xsd="http://www.w3.org/2001/XMLSchema" |
| xmlns:jxb="http://java.sun.com/xml/ns/jaxb" |
| jxb:version="1.0"> |
| |
| <xsd:annotation> |
| <xsd:appinfo> |
| <!-- --> |
| |
| <jxb:schemaBindings> |
| <jxb:package name="org.apache.taverna.scufl2.xml.t2flow.jaxb" /> |
| </jxb:schemaBindings> |
| </xsd:appinfo> |
| </xsd:annotation> |
| |
| <xsd:import namespace="http://taverna.sf.net/2008/xml/t2flow" |
| schemaLocation="t2flow.xsd" /> |
| |
| <xsd:complexType name="DataflowConfig"> |
| <xsd:annotation> |
| <xsd:documentation>Configuration for the nested dataflow activity. |
| The actual nested dataflow is referenced by uuid to identify the |
| dataflow element of the workflow container.</xsd:documentation> |
| </xsd:annotation> |
| <xsd:attribute name="ref" type="tav:uuid"></xsd:attribute> |
| </xsd:complexType> |
| <xsd:complexType name="ApiConsumerConfig"> |
| <xsd:sequence> |
| |
| <xsd:element name="apiConsumerName" type="xsd:string" /> |
| <xsd:element name="apiConsumerDescription" type="xsd:string" /> |
| <xsd:element name="description" type="xsd:string" /> |
| <xsd:element name="className" type="xsd:string" /> |
| <xsd:element name="methodName" type="xsd:string" /> |
| <xsd:element name="parameterNames" type="activities:ApiConsumerParameterNames" /> |
| |
| <xsd:element name="parameterDimensions" |
| type="activities:ApiConsumerParameterDimensions" /> |
| <xsd:element name="parameterTypes" type="activities:ApiConsumerParameterTypes" /> |
| <xsd:element name="returnType" type="xsd:string" /> |
| <xsd:element name="returnDimension" type="xsd:nonNegativeInteger" /> |
| <xsd:element name="isMethodStatic" type="xsd:boolean" /> |
| <xsd:element name="isMethodConstructor" type="xsd:boolean" /> |
| |
| <xsd:element name="classLoaderSharing" type="activities:ClassLoaderSharing" /> |
| <xsd:element name="localDependencies" type="activities:LocalDependencies" /> |
| <xsd:element name="artifactDependencies" type="activities:ArtifactDependencies" /> |
| <xsd:element name="inputs" type="activities:ActivityInputPorts" /> |
| <xsd:element name="outputs" type="activities:ActivityOutputPorts" /> |
| |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="ApiConsumerParameterNames"> |
| <xsd:sequence> |
| <xsd:element name="string" type="xsd:string" minOccurs="0" |
| maxOccurs="unbounded" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="ApiConsumerParameterDimensions"> |
| <xsd:sequence> |
| <xsd:element name="int" type="xsd:nonNegativeInteger" |
| minOccurs="0" maxOccurs="unbounded" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="ApiConsumerParameterTypes"> |
| <xsd:sequence> |
| <xsd:element name="string" type="xsd:string" minOccurs="0" |
| maxOccurs="unbounded" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="BeanshellConfig"> |
| <xsd:annotation> |
| <xsd:documentation>Configuration for the Beanshell activity. |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:all> |
| <xsd:element name="script" type="xsd:string"> |
| <xsd:annotation> |
| <xsd:documentation>A Beanshell script</xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="dependencies" type="activities:Dependencies" /> |
| <xsd:element name="classLoaderSharing" type="activities:ClassLoaderSharing" /> |
| <xsd:element name="localDependencies" type="activities:LocalDependencies" /> |
| <xsd:element name="artifactDependencies" type="activities:ArtifactDependencies" /> |
| <xsd:element name="inputs" type="activities:ActivityInputPorts" /> |
| <xsd:element name="outputs" type="activities:ActivityOutputPorts" /> |
| <xsd:element name="localworkerName" type="xsd:string" |
| minOccurs="0" /> |
| </xsd:all> |
| </xsd:complexType> |
| <xsd:complexType name="StringConstantConfig"> |
| <xsd:sequence> |
| <xsd:sequence> |
| <xsd:element name="value" type="xsd:string"></xsd:element> |
| </xsd:sequence> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="RShellConfig"> |
| <xsd:all> |
| <xsd:element name="inputs" type="activities:ActivityInputPorts" /> |
| <xsd:element name="outputs" type="activities:ActivityOutputPorts" /> |
| <xsd:element name="rVersion" type="xsd:string" minOccurs="0" /> |
| <xsd:element name="script" type="xsd:string" /> |
| <xsd:element name="connectionSettings" type="activities:RShellConnection" /> |
| <xsd:element name="inputSymanticTypes" type="activities:RShellSymanticType" /> |
| <xsd:element name="outputSymanticTypes" type="activities:RShellSymanticType" /> |
| </xsd:all> |
| </xsd:complexType> |
| <xsd:complexType name="RShellConnection"> |
| <xsd:sequence> |
| <xsd:element name="host" type="xsd:string" /> |
| <xsd:element name="port" type="xsd:unsignedShort" /> |
| <xsd:element name="username" type="xsd:string" minOccurs="0"/> |
| <xsd:element name="password" type="xsd:string" minOccurs="0"/> |
| <xsd:element name="keepSessionAlive" type="xsd:boolean" /> |
| <xsd:element name="newRVersion" type="xsd:boolean" default="false" minOccurs="0"/> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="RShellSymanticType"> |
| <xsd:sequence> |
| <xsd:element |
| name="net.sf.taverna.t2.activities.rshell.RShellPortSymanticTypeBean" minOccurs="0" maxOccurs="unbounded"> |
| |
| <xsd:complexType> |
| <xsd:annotation> |
| <xsd:appinfo> |
| <jxb:class name="RShellPortSymanticTypeBean" /> |
| </xsd:appinfo> |
| </xsd:annotation> |
| <xsd:sequence> |
| |
| <xsd:element name="name" type="xsd:string" /> |
| <xsd:element name="symanticType"> |
| <xsd:complexType> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="reference" type="xsd:string" |
| use="optional" /> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| |
| <xsd:complexType name="WSDLConfig"> |
| <xsd:annotation> |
| <xsd:documentation>Configuration for the WSDL activity. |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element name="wsdl" type="xsd:anyURI"> |
| <xsd:annotation> |
| <xsd:documentation>Location of WSDL specification as an URL. |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="operation" type="xsd:string"> |
| <xsd:annotation> |
| <xsd:documentation>Name of operation within the WSDL specification. |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="securityProfile" type="activities:WSDLSecurityProfile" |
| minOccurs="0"> |
| <xsd:annotation> |
| <xsd:documentation>Name of 'security profile' to apply. |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:simpleType name="WSDLSecurityProfile"> |
| <xsd:union memberTypes="activities:StandardWSDLSecurityProfile xsd:string" /> |
| </xsd:simpleType> |
| |
| <xsd:simpleType name="StandardWSDLSecurityProfile"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="HTTPDigestAuthN" /> |
| <xsd:enumeration value="HTTPBasicAuthNPlainTextPassword" /> |
| <xsd:enumeration value="WSSecurityTimestampUsernameTokenDigestPassword" /> |
| <xsd:enumeration value="WSSecurityTimestampUsernameTokenPlainTextPassword" /> |
| <xsd:enumeration value="WSSecurityUsernameTokenDigestPassword" /> |
| <xsd:enumeration value="WSSecurityUsernameTokenPlainTextPassword" /> |
| </xsd:restriction> |
| </xsd:simpleType> |
| |
| <xsd:complexType name="XMLSplitterConfig"> |
| <xsd:all> |
| <xsd:element name="wrappedTypeXML" type="xsd:string" /> |
| <xsd:element name="inputs" type="activities:ActivityInputPorts" /> |
| <xsd:element name="outputs" type="activities:ActivityOutputPorts" /> |
| </xsd:all> |
| </xsd:complexType> |
| <xsd:complexType name="BioMartConfig"> |
| <xsd:sequence> |
| <xsd:element name="MartService"> |
| <xsd:complexType> |
| <xsd:attribute name="location" type="xsd:anyURI"></xsd:attribute> |
| </xsd:complexType> |
| </xsd:element> |
| <xsd:element name="MartDataset" /> |
| <xsd:element name="Query" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="BioMobyConfig"> |
| <xsd:complexContent> |
| <xsd:extension base="activities:BioMobyObjectConfig"> |
| <xsd:sequence> |
| <xsd:element name="category" type="activities:BioMobyCategory"> |
| </xsd:element> |
| <xsd:element name="serviceType" type="activities:BioMobyServiceType"> |
| </xsd:element> |
| <xsd:element name="secondaries" type="activities:BioMobySecondaries"> |
| </xsd:element> |
| </xsd:sequence> |
| |
| </xsd:extension> |
| </xsd:complexContent> |
| </xsd:complexType> |
| |
| <xsd:complexType name="BioMobyObjectConfig"> |
| <xsd:sequence> |
| <xsd:element name="mobyEndpoint" type="xsd:anyURI" /> |
| <xsd:element name="serviceName" /> |
| <xsd:element name="authorityName" /> |
| |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| |
| <xsd:complexType name="BioMobyParserConfig"> |
| <xsd:sequence> |
| <xsd:element name="datatypeName" /> |
| <xsd:element name="registryEndpoint" type="xsd:anyURI" /> |
| <xsd:element name="articleNameUsedByService" /> |
| |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="SoaplabConfig"> |
| <xsd:annotation> |
| <xsd:documentation>Configuration for the SoapLab activity. |
| </xsd:documentation> |
| </xsd:annotation> |
| <xsd:sequence> |
| <xsd:element name="endpoint" type="xsd:anyURI"> |
| <xsd:annotation> |
| <xsd:documentation>Location of Soaplab endpoint as an URL. |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="pollingInterval" type="xsd:nonNegativeInteger"> |
| <xsd:annotation> |
| <xsd:documentation>Milliseconds between polling for asynchronous |
| service completion. If 0, the synchronous 'waitFor' method is |
| used |
| instead. |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="pollingBackoff" type="xsd:double"> |
| <xsd:annotation> |
| <xsd:documentation> |
| Multiplication factor to apply to current |
| polling interval (initially "pollingInterval"), gradually |
| increasing the polling interval. It is advisable |
| to keep this close |
| to 1.0, for instance 1.1. |
| The polling interval will however never |
| be larger than the specified |
| "pollingIntervalMax". Must be |
| above 0.0 |
| to avoid negative polling |
| intervals. |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| <xsd:element name="pollingIntervalMax" type="xsd:nonNegativeInteger"> |
| <xsd:annotation> |
| <xsd:documentation>Maximum polling interval in milliseconds after |
| multiplying with "pollingBackoff". Should be larger than |
| "pollingInterval". |
| </xsd:documentation> |
| </xsd:annotation> |
| </xsd:element> |
| |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| |
| <xsd:complexType name="SpreadsheetImportConfig"> |
| <xsd:sequence> |
| <xsd:element name="columnRange" type="activities:SpreadsheetRange" /> |
| <xsd:element name="rowRange" type="activities:SpreadsheetRange" /> |
| <xsd:element name="emptyCellValue" type="xsd:string" /> |
| <xsd:element name="columnNames" type="activities:SpreadsheetColumnNames" /> |
| <xsd:element name="allRows" type="xsd:boolean" /> |
| <xsd:element name="excludeFirstRow" type="xsd:boolean" /> |
| <xsd:element name="ignoreBlankRows" type="xsd:boolean" /> |
| |
| <xsd:element name="emptyCellPolicy" type="activities:SpreadsheetEmptyCellPolicy" /> |
| <xsd:element name="outputFormat" type="activities:OutputFormat" /> |
| <xsd:element name="csvDelimiter" type="xsd:string" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| |
| <xsd:simpleType name="SpreadsheetEmptyCellPolicy"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="EMPTY_STRING"></xsd:enumeration> |
| <xsd:enumeration value="USER_DEFINED"></xsd:enumeration> |
| <xsd:enumeration value="GENERATE_ERROR"></xsd:enumeration> |
| </xsd:restriction> |
| </xsd:simpleType> |
| |
| <xsd:simpleType name="OutputFormat"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="PORT_PER_COLUMN"></xsd:enumeration> |
| <xsd:enumeration value="SINGLE_PORT"></xsd:enumeration> |
| </xsd:restriction> |
| </xsd:simpleType> |
| |
| |
| <xsd:complexType name="SpreadsheetColumnNames"> |
| <xsd:sequence> |
| <xsd:element name="entry" type="activities:SpreadsheetColumnNameEntry" |
| minOccurs="0" maxOccurs="unbounded" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="SpreadsheetColumnNameEntry"> |
| <xsd:sequence> |
| <xsd:element name="string" type="xsd:string" minOccurs="2" |
| maxOccurs="2" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| |
| |
| <xsd:complexType name="SpreadsheetRange"> |
| <xsd:sequence> |
| <xsd:element name="start" type="xsd:nonNegativeInteger" /> |
| <xsd:element name="end" type="xsd:nonNegativeInteger" /> |
| <xsd:element name="excludes" type="activities:SpreadsheetExcludes" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="SpreadsheetExcludes"> |
| <xsd:sequence> |
| <xsd:element name="exclude" type="activities:SpreadsheetRange" |
| minOccurs="0" maxOccurs="unbounded" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| |
| <xsd:complexType name="LocalDependencies"> |
| |
| <xsd:sequence> |
| <xsd:element name="string" type="xsd:string" maxOccurs="unbounded" |
| minOccurs="0"> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="ArtifactDependencies"> |
| <xsd:sequence> |
| <xsd:element name="net.sf.taverna.raven.repository.BasicArtifact" |
| type="activities:BasicArtifact" maxOccurs="unbounded" minOccurs="0"> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| |
| <xsd:complexType name="Dependencies"> |
| <xsd:sequence> |
| <xsd:choice> |
| <xsd:element name="string" type="xsd:string" maxOccurs="unbounded" |
| minOccurs="0"> |
| </xsd:element> |
| <xsd:element name="element" type="activities:DependencyElement" |
| maxOccurs="unbounded" minOccurs="0"> |
| </xsd:element> |
| </xsd:choice> |
| </xsd:sequence> |
| <xsd:attribute name="class" type="xsd:string" use="optional"></xsd:attribute> |
| </xsd:complexType> |
| |
| |
| <xsd:complexType name="DependencyElement"> |
| <xsd:simpleContent> |
| <xsd:extension base="xsd:string"> |
| <xsd:attribute name="class" use="optional" /> |
| </xsd:extension> |
| </xsd:simpleContent> |
| </xsd:complexType> |
| |
| <xsd:simpleType name="ClassLoaderSharing"> |
| <xsd:restriction base="xsd:string"> |
| <xsd:enumeration value="workflow" /> |
| <xsd:enumeration value="system" /> |
| </xsd:restriction> |
| </xsd:simpleType> |
| |
| <xsd:complexType name="BasicArtifact"> |
| <xsd:sequence> |
| <xsd:element name="groupId" type="xsd:string" /> |
| <xsd:element name="artifactId" type="xsd:string" /> |
| <xsd:element name="version" type="xsd:string" /> |
| <xsd:element name="hashCode" type="xsd:string" minOccurs="0" /> |
| <xsd:element name="string" type="xsd:string" minOccurs="0" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| |
| <xsd:complexType name="ActivityInputPorts"> |
| <xsd:sequence> |
| <xsd:element |
| name="net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityInputPortDefinitionBean" |
| minOccurs="0" maxOccurs="unbounded" type="activities:ActivityPortDefinitionBean"> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="ActivityPortDefinitionBean"> |
| <xsd:choice minOccurs="1" maxOccurs="unbounded" id="activityPortChoice"> |
| <xsd:annotation> |
| <xsd:documentation> |
| These seem to come in any order depending on Activity type and Taverna |
| version (probably some internal hash maps involved) - and instead of |
| trying to model this using xsd:any, xsd:groups and xsd:choice, I just |
| went for an unbounded xsd:choice. Users will have to deal with the following |
| additional constaints: |
| |
| These elements are required, maximum 1 occurance: name, depth |
| |
| These can occur 0..unbounded times: |
| handledReferenceSchemes, translatedElementType |
| |
| The rest are optional, but must maximally appear once. |
| |
| </xsd:documentation> |
| </xsd:annotation> |
| |
| <xsd:element name="handledReferenceSchemes" type="xsd:string"/> |
| <xsd:element name="translatedElementType" type="xsd:string" /> |
| <xsd:element name="name" type="xsd:string" /> |
| <xsd:element name="depth" type="xsd:nonNegativeInteger" /> |
| <xsd:element name="allowsLiteralValues" type="xsd:boolean" /> |
| <xsd:element name="mimeTypes"> |
| <xsd:complexType> |
| <xsd:choice> |
| <xsd:element name="string" type="xsd:string" minOccurs="0" |
| maxOccurs="unbounded" /> |
| <xsd:element name="element" type="activities:DependencyElement" /> |
| </xsd:choice> |
| <xsd:attribute name="class" type="xsd:string" use="optional" /> |
| </xsd:complexType> |
| </xsd:element> |
| <xsd:element name="granularDepth" type="xsd:nonNegativeInteger" /> |
| |
| </xsd:choice> |
| </xsd:complexType> |
| |
| <xsd:complexType name="ActivityOutputPorts"> |
| <xsd:sequence> |
| <xsd:element |
| name="net.sf.taverna.t2.workflowmodel.processor.activity.config.ActivityOutputPortDefinitionBean" |
| minOccurs="0" maxOccurs="unbounded" type="activities:ActivityPortDefinitionBean"> |
| </xsd:element> |
| </xsd:sequence> |
| |
| </xsd:complexType> |
| <xsd:complexType name="BioMobyCategory"> |
| <xsd:sequence> |
| <xsd:any namespace="##any" processContents="lax" minOccurs="0" |
| maxOccurs="unbounded" /> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="BioMobyServiceType"> |
| <xsd:sequence> |
| <xsd:any minOccurs="0" maxOccurs="unbounded" namespace="##any" |
| processContents="lax"> |
| </xsd:any> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="BioMobySecondaries"> |
| <xsd:sequence> |
| <xsd:element minOccurs="0" maxOccurs="unbounded" name="entry" |
| type="activities:BioMobyEntry"> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| <xsd:complexType name="BioMobyEntry"> |
| <xsd:sequence> |
| <xsd:element minOccurs="2" maxOccurs="2" name="string" |
| type="xsd:anyType"> |
| </xsd:element> |
| </xsd:sequence> |
| </xsd:complexType> |
| </xsd:schema> |