This product is based on:
Apache Taverna Language
Copyright 2014-2020 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

Portions of this software were originally based on the following:
- Copyright 2010-2014 University of Manchester, UK
These have been licensed to the Apache Software Foundation under a software grant.

-----------------------------------------------------------------------------------
./taverna-scufl2-schemas/src/main/resources/org/apache/taverna/scufl2/rdfxml/xsd/roevo.xsd

roevo.xsd derived from
Research Object Evolution Ontology (roevo)
http://w3id.org/ro/roevo

Copyright (c) 2011-2014
    Raul Palma, PSNC
    Jun Zhao, University of Oxford
    Khalid Belhajjame, University of Manchester
    Stian Soiland-Reyes, University of Manchester
    Oscar Corcho, UPM

Creative Commons Attribution 3.0 License
http://creativecommons.org/licenses/by/3.0

