diff --git a/pom.xml b/pom.xml
index 123ea22..88cbd70 100644
--- a/pom.xml
+++ b/pom.xml
@@ -79,22 +79,6 @@
             <exclude>**/xml.xsd</exclude>
             <exclude>**/xenc-schema.xsd</exclude>
             <exclude>**/xmldsig-core-schema.xsd</exclude>
-            <exclude>**/prov-o.rdf</exclude>
-            <exclude>**/prov-o.ttl</exclude>
-            <exclude>**/prov-aq.rdf</exclude>
-            <!-- W3C Community license -->
-            <!-- FOAF, Creative Commons Attribution 1.0 -->
-            <exclude>**/oa.rdf</exclude>
-            <exclude>**/foaf.rdf</exclude>
-            <!-- Research Object Model, Creative Commons Attribution 3.0 -->
-            <exclude>**/roterms.ttl</exclude>
-            <exclude>**/wf4ever.ttl</exclude>
-            <exclude>**/wfdesc.ttl</exclude>
-            <exclude>**/wfprov.ttl</exclude>
-
-            <!-- Dublin Core, Creative Commons Attribution 3.0 -->
-            <exclude>**/dcam.owl</exclude>
-            <exclude>**/dcterms_od.owl</exclude>
 
           </excludes>
         </configuration>
@@ -297,12 +281,12 @@
     <modules>
       <module>taverna-baclava-language</module>
       <module>taverna-databundle</module>
+      <module>taverna-ro-vocabs</module>
       <module>taverna-robundle</module>
       <module>taverna-scufl2-annotation</module>
       <module>taverna-scufl2-api</module>
       <module>taverna-scufl2-examples</module>
       <module>taverna-scufl2-integration-tests</module>
-      <module>taverna-scufl2-ro-vocabs</module>
       <module>taverna-scufl2-schemas</module>
       <module>taverna-scufl2-scufl</module>
       <module>taverna-scufl2-t2flow</module>
@@ -327,12 +311,12 @@
       <maven.compiler.target>1.7</maven.compiler.target>
     </properties>
     <modules>
+      <module>taverna-ro-vocabs</module>
       <module>taverna-baclava-language</module>
       <module>taverna-scufl2-annotation</module>
       <module>taverna-scufl2-api</module>
       <module>taverna-scufl2-examples</module>
       <module>taverna-scufl2-integration-tests</module>
-      <module>taverna-scufl2-ro-vocabs</module>
       <module>taverna-scufl2-schemas</module>
       <module>taverna-scufl2-scufl</module>
       <module>taverna-scufl2-t2flow</module>
diff --git a/taverna-ro-vocabs/pom.xml b/taverna-ro-vocabs/pom.xml
index 9d7bd9d..0b7bc46 100755
--- a/taverna-ro-vocabs/pom.xml
+++ b/taverna-ro-vocabs/pom.xml
@@ -1,14 +1,20 @@
 <?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. -->
+<!--
+   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/maven-v4_0_0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <parent>
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Foaf.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Foaf.java
similarity index 98%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Foaf.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Foaf.java
index 299e955..58bf391 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Foaf.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Foaf.java
@@ -17,7 +17,7 @@
  * under the License.
  *
 */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Prov_o.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Prov_o.java
similarity index 99%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Prov_o.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Prov_o.java
index ce15d87..c9089cb 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Prov_o.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Prov_o.java
@@ -17,7 +17,7 @@
  * under the License.
  *
 */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/RO.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/RO.java
similarity index 97%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/RO.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/RO.java
index 9a1feab..8719364 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/RO.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/RO.java
@@ -17,7 +17,7 @@
  * under the License.
  * 
  */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/ROEvo.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/ROEvo.java
similarity index 98%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/ROEvo.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/ROEvo.java
index f8826b7..586474d 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/ROEvo.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/ROEvo.java
@@ -17,7 +17,7 @@
  * under the License.
  * 
  */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Roterms.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Roterms.java
similarity index 98%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Roterms.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Roterms.java
index 4e23149..ae833c9 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Roterms.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Roterms.java
@@ -17,7 +17,7 @@
  * under the License.
  *
 */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wf4ever.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wf4ever.java
similarity index 98%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wf4ever.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wf4ever.java
index 4316579..f49c5dd 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wf4ever.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wf4ever.java
@@ -17,7 +17,7 @@
  * under the License.
  *
  */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wfdesc.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wfdesc.java
similarity index 98%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wfdesc.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wfdesc.java
index cdcc8d5..8332c02 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wfdesc.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wfdesc.java
@@ -17,7 +17,7 @@
  * under the License.
  *  
  */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wfprov.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wfprov.java
similarity index 97%
rename from taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wfprov.java
rename to taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wfprov.java
index 696fe86..080d228 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ontologies/Wfprov.java
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/Wfprov.java
@@ -17,7 +17,7 @@
  * under the License.
  * 
  */
-package org.apache.taverna.scufl2.wfdesc.ontologies; 
+package org.apache.taverna.ro.vocabs; 
 import org.apache.jena.rdf.model.*;
 import org.apache.jena.ontology.*;
  
diff --git a/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/package-info.java b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/package-info.java
new file mode 100644
index 0000000..3cba91d
--- /dev/null
+++ b/taverna-ro-vocabs/src/main/java/org/apache/taverna/ro/vocabs/package-info.java
@@ -0,0 +1,23 @@
+/*
+ * 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.
+ */
+/**
+ * Constants for vocabularies used by Research Object model
+ * 
+ * @see https://w3id.org/ro/2016-01-28/
+ *
+ */
+package org.apache.taverna.ro.vocabs;
\ No newline at end of file
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ROEvoSerializer.java b/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ROEvoSerializer.java
index 7599599..0a8d684 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ROEvoSerializer.java
+++ b/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/ROEvoSerializer.java
@@ -25,10 +25,10 @@
 
 import java.io.OutputStream;
 
+import org.apache.taverna.ro.vocabs.Prov_o;
 import org.apache.taverna.scufl2.api.annotation.Revision;
 import org.apache.taverna.scufl2.api.core.Workflow;
 import org.apache.taverna.scufl2.api.io.WriterException;
-import org.apache.taverna.scufl2.wfdesc.ontologies.Prov_o;
 import org.apache.jena.ontology.Individual;
 import org.apache.jena.ontology.OntClass;
 import org.apache.jena.ontology.OntModel;
diff --git a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/WfdescSerialiser.java b/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/WfdescSerialiser.java
index 7ba000e..8459618 100644
--- a/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/WfdescSerialiser.java
+++ b/taverna-scufl2-wfdesc/src/main/java/org/apache/taverna/scufl2/wfdesc/WfdescSerialiser.java
@@ -39,6 +39,10 @@
 import org.apache.jena.riot.RDFDataMgr;
 import org.apache.jena.riot.RiotException;
 import org.apache.jena.vocabulary.OWL;
+import org.apache.taverna.ro.vocabs.Prov_o;
+import org.apache.taverna.ro.vocabs.Roterms;
+import org.apache.taverna.ro.vocabs.Wf4ever;
+import org.apache.taverna.ro.vocabs.Wfdesc;
 import org.apache.taverna.scufl2.api.activity.Activity;
 import org.apache.taverna.scufl2.api.annotation.Annotation;
 import org.apache.taverna.scufl2.api.common.Child;
@@ -59,10 +63,6 @@
 import org.apache.taverna.scufl2.api.profiles.ProcessorBinding;
 import org.apache.taverna.scufl2.api.profiles.ProcessorPortBinding;
 import org.apache.taverna.scufl2.api.profiles.Profile;
-import org.apache.taverna.scufl2.wfdesc.ontologies.Prov_o;
-import org.apache.taverna.scufl2.wfdesc.ontologies.Roterms;
-import org.apache.taverna.scufl2.wfdesc.ontologies.Wf4ever;
-import org.apache.taverna.scufl2.wfdesc.ontologies.Wfdesc;
 
 import com.fasterxml.jackson.databind.JsonNode;
 
diff --git a/taverna-scufl2-wfdesc/src/test/java/org/apache/taverna/scufl2/wfdesc/TestRoEvoSerializer.java b/taverna-scufl2-wfdesc/src/test/java/org/apache/taverna/scufl2/wfdesc/TestRoEvoSerializer.java
index 7ef2433..0fe44ff 100644
--- a/taverna-scufl2-wfdesc/src/test/java/org/apache/taverna/scufl2/wfdesc/TestRoEvoSerializer.java
+++ b/taverna-scufl2-wfdesc/src/test/java/org/apache/taverna/scufl2/wfdesc/TestRoEvoSerializer.java
@@ -31,10 +31,10 @@
 import java.io.IOException;
 import java.io.InputStream;
 
+import org.apache.taverna.ro.vocabs.Prov_o;
 import org.apache.taverna.scufl2.api.container.WorkflowBundle;
 import org.apache.taverna.scufl2.api.io.ReaderException;
 import org.apache.taverna.scufl2.api.io.WorkflowBundleIO;
-import org.apache.taverna.scufl2.wfdesc.ontologies.Prov_o;
 import org.junit.Before;
 import org.junit.Test;
 
