You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by st...@apache.org on 2015/02/23 11:05:56 UTC

[71/79] incubator-taverna-language git commit: validation moved into api

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/IncompleteWorkflowProblem.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/IncompleteWorkflowProblem.java b/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/IncompleteWorkflowProblem.java
deleted file mode 100644
index f58174f..0000000
--- a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/IncompleteWorkflowProblem.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural.report;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-import org.apache.taverna.scufl2.validation.ValidationProblem;
-
-
-/**
- * @author alanrw
- */
-public class IncompleteWorkflowProblem extends ValidationProblem {
-	public IncompleteWorkflowProblem(WorkflowBean bean) {
-		super(bean);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingIterationStrategyStackProblem.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingIterationStrategyStackProblem.java b/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingIterationStrategyStackProblem.java
deleted file mode 100644
index d1e97ce..0000000
--- a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingIterationStrategyStackProblem.java
+++ /dev/null
@@ -1,32 +0,0 @@
-package org.apache.taverna.scufl2.validation.structural.report;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-import org.apache.taverna.scufl2.validation.ValidationProblem;
-
-
-public class MissingIterationStrategyStackProblem extends ValidationProblem {
-	public MissingIterationStrategyStackProblem(WorkflowBean bean) {
-		super(bean);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingMainIncomingDataLinkProblem.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingMainIncomingDataLinkProblem.java b/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingMainIncomingDataLinkProblem.java
deleted file mode 100644
index 24a256f..0000000
--- a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/MissingMainIncomingDataLinkProblem.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural.report;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-import org.apache.taverna.scufl2.validation.ValidationProblem;
-
-
-/**
- * @author alanrw
- */
-public class MissingMainIncomingDataLinkProblem extends ValidationProblem {
-	public MissingMainIncomingDataLinkProblem(WorkflowBean bean) {
-		super(bean);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnrecognizedIterationStrategyNodeProblem.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnrecognizedIterationStrategyNodeProblem.java b/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnrecognizedIterationStrategyNodeProblem.java
deleted file mode 100644
index 9a42082..0000000
--- a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnrecognizedIterationStrategyNodeProblem.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural.report;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-import org.apache.taverna.scufl2.validation.ValidationProblem;
-
-
-/**
- * @author alanrw
- */
-public class UnrecognizedIterationStrategyNodeProblem extends ValidationProblem {
-	public UnrecognizedIterationStrategyNodeProblem(WorkflowBean bean) {
-		super(bean);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedOutputProblem.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedOutputProblem.java b/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedOutputProblem.java
deleted file mode 100644
index 00c8f4b..0000000
--- a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedOutputProblem.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural.report;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-import org.apache.taverna.scufl2.validation.ValidationProblem;
-
-
-/**
- * @author alanrw
- */
-public class UnresolvedOutputProblem extends ValidationProblem {
-	public UnresolvedOutputProblem(WorkflowBean bean) {
-		super(bean);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedProcessorProblem.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedProcessorProblem.java b/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedProcessorProblem.java
deleted file mode 100644
index 4fa89e4..0000000
--- a/taverna-scufl2-validation-structural/src/main/java/org/apache/taverna/scufl2/validation/structural/report/UnresolvedProcessorProblem.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural.report;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-import org.apache.taverna.scufl2.validation.ValidationProblem;
-
-
-/**
- * @author alanrw
- */
-public class UnresolvedProcessorProblem extends ValidationProblem {
-	public UnresolvedProcessorProblem(WorkflowBean bean) {
-		super(bean);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/CrossProductTest.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/CrossProductTest.java b/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/CrossProductTest.java
deleted file mode 100644
index 0b3676c..0000000
--- a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/CrossProductTest.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural;
-/*
- *
- * 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.
- *
-*/
-
-
-import static org.junit.Assert.assertEquals;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.taverna.scufl2.api.core.Processor;
-import org.apache.taverna.scufl2.api.iterationstrategy.CrossProduct;
-import org.apache.taverna.scufl2.api.iterationstrategy.IterationStrategyStack;
-import org.apache.taverna.scufl2.api.iterationstrategy.PortNode;
-import org.apache.taverna.scufl2.api.port.InputProcessorPort;
-import org.apache.taverna.scufl2.validation.structural.StructuralValidator;
-import org.junit.Test;
-
-
-
-/**
- * @author alanrw
- *
- */
-public class CrossProductTest {
-	
-	private InputProcessorPort a;
-	private InputProcessorPort b;
-
-	private CrossProduct getCross(int depthA, int depthB) {
-		a = new InputProcessorPort();
-		a.setName("a");
-		a.setDepth(0);
-		CrossProduct cp = new CrossProduct();
-		PortNode nipn1 = new PortNode(cp, a);
-		nipn1.setDesiredDepth(depthA);
-		
-		b = new InputProcessorPort();
-		b.setName("b");
-		b.setDepth(0);
-		PortNode nipn2 = new PortNode(cp, b);
-		nipn2.setDesiredDepth(depthB);
-
-		return cp;
-	}
-	
-	@Test
-	public void testSingletonCrossUnstagedIteration(){
-		CrossProduct cp = getCross(0, 0);
-		
-		StructuralValidator sv = new StructuralValidator();
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a, 1);
-		tempDepths.put(b, 1);
-
-		assertEquals(Integer.valueOf(2), sv.getIterationDepth(cp,
-		tempDepths));
-	}
-	
-	@Test
-	public void testListCrossUnstagedIteration() {
-		CrossProduct cp = getCross(0, 0);
-		StructuralValidator sv = new StructuralValidator();
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a,2);
-		tempDepths.put(b,2);
-		
-		assertEquals(Integer.valueOf(4), sv.getIterationDepth(cp,
-		tempDepths));
-	}
-	
-	@Test
-	public void testListCrossDifferentIterationsUnstagedIteration() {
-		CrossProduct cp = getCross(0, 0);
-		StructuralValidator sv = new StructuralValidator();
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a,1);
-		tempDepths.put(b,2);
-		
-		assertEquals(Integer.valueOf(3), sv.getIterationDepth(cp,
-		tempDepths));
-		
-	}
-	
-	@Test
-	public void testDifferentDepthsCrossUnstagedIteration() {
-		CrossProduct cp = getCross(0, 1);
-		StructuralValidator sv = new StructuralValidator();
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a,3);
-		tempDepths.put(b,4);
-		
-		assertEquals(Integer.valueOf(6), sv.getIterationDepth(cp,
-		tempDepths));
-		
-	}
-	
-	@Test
-	public void testStagedCombinationOfCross() {
-		
-		Processor p = new Processor();
-		IterationStrategyStack iss = new IterationStrategyStack(p);
-
-	iss.add(getCross(1, 1));
-	iss.add(getCross(0, 0));
-	StructuralValidator sv = new StructuralValidator();
-	sv.getValidatorState().setProcessor(p);
-	Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-	tempDepths.put(a,2);
-	tempDepths.put(b,2);
-
-	assertEquals(Integer.valueOf(4), sv.calculateResultWrappingDepth(tempDepths));
-
-}
-
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DepthInheritanceTest.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DepthInheritanceTest.java b/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DepthInheritanceTest.java
deleted file mode 100644
index cbbf223..0000000
--- a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DepthInheritanceTest.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural;
-/*
- *
- * 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.
- *
-*/
-
-
-import static org.junit.Assert.*;
-
-import org.apache.taverna.scufl2.api.container.WorkflowBundle;
-import org.apache.taverna.scufl2.api.core.DataLink;
-import org.apache.taverna.scufl2.api.core.Processor;
-import org.apache.taverna.scufl2.api.core.Workflow;
-import org.apache.taverna.scufl2.api.iterationstrategy.CrossProduct;
-import org.apache.taverna.scufl2.api.iterationstrategy.IterationStrategyStack;
-import org.apache.taverna.scufl2.api.iterationstrategy.PortNode;
-import org.apache.taverna.scufl2.api.port.InputProcessorPort;
-import org.apache.taverna.scufl2.api.port.InputWorkflowPort;
-import org.apache.taverna.scufl2.api.port.OutputProcessorPort;
-import org.apache.taverna.scufl2.api.port.OutputWorkflowPort;
-import org.apache.taverna.scufl2.validation.structural.ReportStructuralValidationListener;
-import org.apache.taverna.scufl2.validation.structural.StructuralValidator;
-import org.apache.taverna.scufl2.validation.structural.ValidatorState;
-import org.junit.Test;
-
-
-/**
- * @author alanrw
- * 
- */
-public class DepthInheritanceTest {
-
-	@Test
-	public void testDataLinkInheritanceFromInputWorkflowPorts() {
-		WorkflowBundle wb = new WorkflowBundle();
-		Workflow w = new Workflow();
-		wb.setMainWorkflow(w);
-
-		InputWorkflowPort a = new InputWorkflowPort(w, "a");
-		a.setDepth(0);
-
-		InputWorkflowPort b = new InputWorkflowPort(w, "b");
-		b.setDepth(7);
-
-		OutputWorkflowPort outA = new OutputWorkflowPort(w, "outA");
-		OutputWorkflowPort outB = new OutputWorkflowPort(w, "outB");
-
-		DataLink aLink = new DataLink(w, a, outA);
-		DataLink bLink = new DataLink(w, b, outB);
-
-		StructuralValidator sv = new StructuralValidator();
-		ReportStructuralValidationListener l = new ReportStructuralValidationListener();
-		sv.checkStructure(wb, l);
-		ValidatorState vs = sv.getValidatorState();
-		assertEquals(0, l.getIncompleteWorkflows().size());
-		assertEquals(Integer.valueOf(0), vs.getDataLinkResolvedDepth(aLink));
-		assertEquals(Integer.valueOf(7), vs.getDataLinkResolvedDepth(bLink));
-		assertEquals(Integer.valueOf(0), vs.getPortResolvedDepth(outA));
-		assertEquals(Integer.valueOf(7), vs.getPortResolvedDepth(outB));
-	}
-
-	@Test
-	public void testMergingToOutputWorkflowPort() {
-		WorkflowBundle wb = new WorkflowBundle();
-		Workflow w = new Workflow();
-		wb.setMainWorkflow(w);
-
-		InputWorkflowPort a = new InputWorkflowPort(w, "a");
-		a.setDepth(0);
-
-		InputWorkflowPort b = new InputWorkflowPort(w, "b");
-		b.setDepth(7);
-
-		OutputWorkflowPort outA = new OutputWorkflowPort(w, "outA");
-		OutputWorkflowPort outB = new OutputWorkflowPort(w, "outB");
-
-		DataLink aLink = new DataLink(w, a, outA);
-		aLink.setMergePosition(0);
-		DataLink bLink = new DataLink(w, b, outA);
-		bLink.setMergePosition(1);
-
-		DataLink aLink2 = new DataLink(w, a, outB);
-		aLink2.setMergePosition(1);
-		DataLink bLink2 = new DataLink(w, b, outB);
-		bLink2.setMergePosition(0);
-
-		StructuralValidator sv = new StructuralValidator();
-		ReportStructuralValidationListener l = new ReportStructuralValidationListener();
-		sv.checkStructure(wb, l);
-		ValidatorState vs = sv.getValidatorState();
-		assertEquals(0, l.getIncompleteWorkflows().size());
-		assertEquals(Integer.valueOf(0), vs.getDataLinkResolvedDepth(aLink));
-		assertEquals(Integer.valueOf(7), vs.getDataLinkResolvedDepth(bLink));
-		assertEquals(Integer.valueOf(1), vs.getPortResolvedDepth(outA));
-		assertEquals(Integer.valueOf(8), vs.getPortResolvedDepth(outB));
-
-	}
-
-	@Test
-	public void testSimpleIteration() {
-		WorkflowBundle wb = new WorkflowBundle();
-		Workflow w = new Workflow();
-		wb.setMainWorkflow(w);
-
-		InputWorkflowPort a = new InputWorkflowPort(w, "a");
-		a.setDepth(1);
-
-		Processor p = new Processor(w, "p");
-
-		InputProcessorPort ipp = new InputProcessorPort(p, "in");
-		ipp.setDepth(0);
-
-		OutputProcessorPort opp = new OutputProcessorPort(p, "out");
-		opp.setDepth(3);
-
-		DataLink inLink = new DataLink(w, a, ipp);
-
-		IterationStrategyStack iss = new IterationStrategyStack(p);
-		CrossProduct cp = new CrossProduct();
-		iss.add(cp);
-		PortNode portNode = new PortNode(cp, ipp);
-		portNode.setDesiredDepth(0);
-
-		StructuralValidator sv = new StructuralValidator();
-		ReportStructuralValidationListener l = new ReportStructuralValidationListener();
-		sv.checkStructure(wb, l);
-		ValidatorState vs = sv.getValidatorState();
-		assertEquals(0, l.getIncompleteWorkflows().size());
-		assertEquals(Integer.valueOf(1), vs.getPortResolvedDepth(a));
-		assertEquals(Integer.valueOf(1), vs.getDataLinkResolvedDepth(inLink));
-		assertEquals(Integer.valueOf(1), vs.getPortResolvedDepth(ipp));
-		assertEquals(Integer.valueOf(4), vs.getPortResolvedDepth(opp));
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DotProductTest.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DotProductTest.java b/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DotProductTest.java
deleted file mode 100644
index 57b9fed..0000000
--- a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/DotProductTest.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation.structural;
-/*
- *
- * 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.
- *
-*/
-
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.taverna.scufl2.api.core.Processor;
-import org.apache.taverna.scufl2.api.iterationstrategy.DotProduct;
-import org.apache.taverna.scufl2.api.iterationstrategy.IterationStrategyStack;
-import org.apache.taverna.scufl2.api.iterationstrategy.PortNode;
-import org.apache.taverna.scufl2.api.port.InputProcessorPort;
-import org.apache.taverna.scufl2.validation.structural.StructuralValidator;
-import org.junit.Test;
-
-
-
-/**
- * @author alanrw
- *
- */
-public class DotProductTest {
-	
-	private InputProcessorPort a;
-	private InputProcessorPort b;
-
-	private DotProduct getDot(int depthA, int depthB) {
-		a = new InputProcessorPort();
-		a.setName("a");
-		a.setDepth(0);
-		DotProduct dp = new DotProduct();
-		PortNode nipn1 = new PortNode(dp, a);
-		nipn1.setDesiredDepth(depthA);
-		
-		b = new InputProcessorPort();
-		b.setName("b");
-		b.setDepth(0);
-		PortNode nipn2 = new PortNode(dp, b);
-		nipn2.setDesiredDepth(depthB);
-
-		return dp;
-	}
-	
-	@Test
-	public void testSingletonDotUnstagedIteration(){
-		DotProduct dp = getDot(0, 0);
-		
-		StructuralValidator sv = new StructuralValidator();
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a, 1);
-		tempDepths.put(b, 1);
-
-		assertEquals(Integer.valueOf(1), sv.getIterationDepth(dp,
-		tempDepths));
-	}
-	
-	@Test
-	public void testListDotUnstagedIteration() {
-		DotProduct dp = getDot(0, 0);
-		StructuralValidator sv = new StructuralValidator();
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a,2);
-		tempDepths.put(b,2);
-		
-		assertEquals(Integer.valueOf(2), sv.getIterationDepth(dp,
-		tempDepths));
-	}
-	
-	@Test
-	public void testDifferentDepthsDotUnstagedIteration() {
-		DotProduct dp = getDot(0, 1);
-		StructuralValidator sv = new StructuralValidator();
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a,3);
-		tempDepths.put(b,4);
-		
-		assertEquals(Integer.valueOf(3), sv.getIterationDepth(dp,
-		tempDepths));
-		
-	}
-	
-	@Test
-	public void testValidationFailureWithDot() {
-			DotProduct dp = getDot(0, 0);
-			StructuralValidator sv = new StructuralValidator();
-			Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-			tempDepths.put(a,1);
-			tempDepths.put(b,2);
-			assertNull(sv.getIterationDepth(dp,
-		tempDepths));
-	}
-	
-	@Test
-	public void testStagedCombinationOfDot1() {
-		
-		Processor p = new Processor();
-		IterationStrategyStack iss = new IterationStrategyStack(p);
-
-	iss.add(getDot(1, 1));
-	iss.add(getDot(0, 0));
-	StructuralValidator sv = new StructuralValidator();
-	sv.getValidatorState().setProcessor(p);
-	Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-	tempDepths.put(a,2);
-	tempDepths.put(b,2);
-
-	assertEquals(Integer.valueOf(2), sv.calculateResultWrappingDepth(tempDepths));
-
-}
-
-	@Test
-	public void testStagedCombinationOfDot2() {
-		
-		Processor p = new Processor();
-		IterationStrategyStack iss = new IterationStrategyStack(p);
-
-	iss.add(getDot(1, 1));
-	iss.add(getDot(0, 0));
-	StructuralValidator sv = new StructuralValidator();
-	sv.getValidatorState().setProcessor(p);
-	Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-	tempDepths.put(a,0);
-	tempDepths.put(b,0);
-
-	// Should pass because the single items (depth 0) are promoted to single
-	// item lists before being passed into the iteration system so are
-	// effectively both depth 1 going into the second stage which then
-	// iterates to produce an index array length of 1
-	assertEquals(Integer.valueOf(1), sv.calculateResultWrappingDepth(tempDepths));
-
-}
-	
-	@Test
-	public void testStagedCombinationOfDot3() {
-		
-		Processor p = new Processor();
-		IterationStrategyStack iss = new IterationStrategyStack(p);
-
-	iss.add(getDot(1, 1));
-	iss.add(getDot(0, 0));
-	StructuralValidator sv = new StructuralValidator();
-	sv.getValidatorState().setProcessor(p);
-	Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-	tempDepths.put(a,1);
-	tempDepths.put(b,0);
-
-	// Slightly strange superficially that this should work, but in fact
-	// what happens is that the first single item is lifted to a list before
-	// being passed to the iteration strategy. The result is that it's fine
-	// to match with the dot product against the other list as neither at
-	// this point have index arrays, then in the second stage both are lists
-	// to be iterated over and both have single length index arrays.
-	assertEquals(Integer.valueOf(1), sv.calculateResultWrappingDepth(tempDepths));
-
-}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/StagedCombinationTest.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/StagedCombinationTest.java b/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/StagedCombinationTest.java
deleted file mode 100644
index 0aa556f..0000000
--- a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/StagedCombinationTest.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package org.apache.taverna.scufl2.validation.structural;
-/*
- *
- * 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.
- *
-*/
-
-
-import static org.junit.Assert.assertEquals;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.apache.taverna.scufl2.api.core.Processor;
-import org.apache.taverna.scufl2.api.iterationstrategy.CrossProduct;
-import org.apache.taverna.scufl2.api.iterationstrategy.DotProduct;
-import org.apache.taverna.scufl2.api.iterationstrategy.IterationStrategyStack;
-import org.apache.taverna.scufl2.api.iterationstrategy.PortNode;
-import org.apache.taverna.scufl2.api.port.InputProcessorPort;
-import org.apache.taverna.scufl2.validation.structural.StructuralValidator;
-import org.junit.Test;
-
-
-
-public class StagedCombinationTest {
-	
-	private InputProcessorPort a;
-	private InputProcessorPort b;
-	
-	private CrossProduct getCross(int depthA, int depthB) {
-		a = new InputProcessorPort();
-		a.setName("a");
-		a.setDepth(0);
-		CrossProduct cp = new CrossProduct();
-		PortNode nipn1 = new PortNode(cp, a);
-		nipn1.setDesiredDepth(depthA);
-		
-		b = new InputProcessorPort();
-		b.setName("b");
-		b.setDepth(0);
-		PortNode nipn2 = new PortNode(cp, b);
-		nipn2.setDesiredDepth(depthB);
-
-		return cp;
-	}
-	
-	private DotProduct getDot(int depthA, int depthB) {
-		a = new InputProcessorPort();
-		a.setName("a");
-		a.setDepth(0);
-		DotProduct dp = new DotProduct();
-		PortNode nipn1 = new PortNode(dp, a);
-		nipn1.setDesiredDepth(depthA);
-		
-		b = new InputProcessorPort();
-		b.setName("b");
-		b.setDepth(0);
-		PortNode nipn2 = new PortNode(dp, b);
-		nipn2.setDesiredDepth(depthB);
-
-		return dp;
-	}
-	
-	/**
-	 * Test whether Paul's example of iterating with dot product then cross
-	 * product can typecheck in a single staged iteration. This was an example
-	 * where the user had two lists of folders (a1, a2, b1, b2, c1, c2) and
-	 * wanted to compare all the contents of each 'a' folder with the other 'a'
-	 * folder and so on, doing a dot match to only compare a1 and a2 then a
-	 * cross product join within each pair to compare all contents of a1 with
-	 * all contents of a2. This appears to work!
-	 */
-	@Test
-	public void testStagedCombinationOfDotAndCross() {
-		Processor p = new Processor();
-		IterationStrategyStack iss = new IterationStrategyStack(p);
-		iss.add(getDot(1, 1));	
-		iss.add(getCross(0, 0));
-		
-		StructuralValidator sv = new StructuralValidator();
-		sv.getValidatorState().setProcessor(p);
-		Map<InputProcessorPort, Integer> tempDepths = new HashMap<InputProcessorPort, Integer>();
-		tempDepths.put(a,2);
-		tempDepths.put(b,2);
-
-		assertEquals(Integer.valueOf(3), sv.calculateResultWrappingDepth(tempDepths));
-	}
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/WorkflowTest.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/WorkflowTest.java b/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/WorkflowTest.java
deleted file mode 100644
index 6606a96..0000000
--- a/taverna-scufl2-validation-structural/src/test/java/org/apache/taverna/scufl2/validation/structural/WorkflowTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-package org.apache.taverna.scufl2.validation.structural;
-/*
- *
- * 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.
- *
-*/
-
-
-import static org.junit.Assert.*;
-
-import java.io.IOException;
-
-import org.apache.taverna.scufl2.api.container.WorkflowBundle;
-import org.apache.taverna.scufl2.api.core.Workflow;
-import org.apache.taverna.scufl2.api.io.ReaderException;
-import org.apache.taverna.scufl2.validation.structural.ReportStructuralValidationListener;
-import org.apache.taverna.scufl2.validation.structural.StructuralValidator;
-import org.apache.taverna.scufl2.validation.structural.ValidatorState;
-import org.junit.Test;
-
-
-
-public class WorkflowTest {
-	
-	@Test
-	public void testIncompleteWorkflow() throws ReaderException, IOException {
-    	ReportStructuralValidationListener l = new ReportStructuralValidationListener();
-		WorkflowBundle wb = new WorkflowBundle();
-		Workflow w = new Workflow();
-		wb.setMainWorkflow(w);
-	    StructuralValidator sv = new StructuralValidator();
-			sv.checkStructure(wb, l);
-			@SuppressWarnings("unused")
-			ValidatorState vs = sv.getValidatorState();
-			assertEquals(1, l.getIncompleteWorkflows().size());
-			assert(l.getIncompleteWorkflows().contains(w));	    
-	}
-	
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation/pom.xml
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation/pom.xml b/taverna-scufl2-validation/pom.xml
deleted file mode 100644
index ae5c68c..0000000
--- a/taverna-scufl2-validation/pom.xml
+++ /dev/null
@@ -1,35 +0,0 @@
-<?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.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-  <modelVersion>4.0.0</modelVersion>
-  <parent>
-    <groupId>org.apache.taverna.language</groupId>
-    <artifactId>taverna-language</artifactId>
-    <version>0.15.0-incubating-SNAPSHOT</version>
-  </parent>
-  <packaging>bundle</packaging>
-  <artifactId>taverna-scufl2-validation</artifactId>
-  <name>Apache Taverna Scufl 2 validation</name>
-  <dependencies>
-  	<dependency>
-  		<groupId>${project.groupId}</groupId>
-  		<artifactId>taverna-scufl2-api</artifactId>
-  		<version>${project.version}</version>
-  	</dependency>
-  </dependencies>
-</project>

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Status.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Status.java b/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Status.java
deleted file mode 100644
index 12d58d0..0000000
--- a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Status.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation;
-/*
- *
- * 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.
- *
-*/
-
-
-/**
- * @author alanrw
- */
-public enum Status {
-	OK, WARNING, SEVERE
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationException.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationException.java b/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationException.java
deleted file mode 100644
index 70e1672..0000000
--- a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationException.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation;
-/*
- *
- * 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.
- *
-*/
-
-
-/**
- * @author alanrw
- */
-@SuppressWarnings("serial")
-public class ValidationException extends Exception {
-	public ValidationException(String string) {
-		super(string);
-	}
-
-	public ValidationException(String string, Throwable throwable) {
-		super(string, throwable);
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationProblem.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationProblem.java b/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationProblem.java
deleted file mode 100644
index b26136d..0000000
--- a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationProblem.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/**
- * 
- */
-package org.apache.taverna.scufl2.validation;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-
-/**
- * @author alanrw
- */
-public abstract class ValidationProblem {
-	private final WorkflowBean bean;
-
-	public ValidationProblem(WorkflowBean bean) {
-		this.bean = bean;
-	}
-
-	/**
-	 * @return the bean
-	 */
-	public WorkflowBean getBean() {
-		return bean;
-	}
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationReport.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationReport.java b/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationReport.java
deleted file mode 100644
index d50daa8..0000000
--- a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/ValidationReport.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.apache.taverna.scufl2.validation;
-/*
- *
- * 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.
- *
-*/
-
-
-public interface ValidationReport {
-	/**
-	 * @return Whether any problems were detected during the validation.
-	 */
-	boolean detectedProblems();
-
-	/**
-	 * @return An exception to throw to report the problems, or <tt>null</tt> if
-	 *         there are no problems to report.
-	 */
-	ValidationException getException();
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Validator.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Validator.java b/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Validator.java
deleted file mode 100644
index 583c959..0000000
--- a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/Validator.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.apache.taverna.scufl2.validation;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.container.WorkflowBundle;
-
-/**
- * How to check a workflow bundle for validity in some sense.
- * 
- * @param <T>
- *            The type of the validation reports produced by this validator.
- * @author Donal Fellows
- */
-public interface Validator<T extends ValidationReport> {
-	/**
-	 * Validate the given workflow bundle.
-	 * 
-	 * @param workflowBundle
-	 *            The bundle to validate.
-	 * @return A description of whether the bundle is valid, and if not, how it
-	 *         is invalid. (Determining the nature of the invalidity may require
-	 *         knowing more about the nature of the validator than this
-	 *         interface describes.)
-	 */
-	T validate(WorkflowBundle workflowBundle);
-}

http://git-wip-us.apache.org/repos/asf/incubator-taverna-language/blob/f8af1400/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/WorkflowBeanReport.java
----------------------------------------------------------------------
diff --git a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/WorkflowBeanReport.java b/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/WorkflowBeanReport.java
deleted file mode 100644
index e861f8e..0000000
--- a/taverna-scufl2-validation/src/main/java/org/apache/taverna/scufl2/validation/WorkflowBeanReport.java
+++ /dev/null
@@ -1,31 +0,0 @@
-package org.apache.taverna.scufl2.validation;
-/*
- *
- * 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.
- *
-*/
-
-
-import org.apache.taverna.scufl2.api.common.WorkflowBean;
-
-public interface WorkflowBeanReport {
-	/**
-	 * @return the bean
-	 */
-	WorkflowBean getBean();
-}