Details
-
Task
-
Status: Done
-
Major
-
Resolution: Done
-
None
-
None
-
None
Description
Currently we use and expose a combination of Sesame 2 and Jena 3:
stain@biggiebuntu:~/src/taverna$ grep -i sesame */*/pom.xml incubator-taverna-language/taverna-scufl2-wfbundle/pom.xml: <groupId>org.openrdf.sesame</groupId> incubator-taverna-language/taverna-scufl2-wfbundle/pom.xml: <artifactId>sesame-repository-sail</artifactId> incubator-taverna-language/taverna-scufl2-wfbundle/pom.xml: <version>${sesame.version}</version> incubator-taverna-language/taverna-scufl2-wfbundle/pom.xml: <groupId>org.openrdf.sesame</groupId> incubator-taverna-language/taverna-scufl2-wfbundle/pom.xml: <artifactId>sesame-sail-memory</artifactId> incubator-taverna-language/taverna-scufl2-wfbundle/pom.xml: <version>${sesame.version}</version> stain@biggiebuntu:~/src/taverna$ grep -i jena */*/pom.xml incubator-taverna-commandline/taverna-commandline-product/pom.xml: <!-- Jena bundle needed by jsonld-java-jena --> incubator-taverna-commandline/taverna-commandline-product/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-commandline/taverna-commandline-product/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-commandline/taverna-commandline-product/pom.xml: <version>${jena.version}</version> incubator-taverna-commandline/taverna-commandline-product/pom.xml: <!-- Newer jsonld-java than jena-osgi requires (JENA-1176) --> incubator-taverna-commandline/taverna-commandline-product/pom.xml:Xerces OSGi bundle needed by jena-osgi incubator-taverna-commandline/taverna-commandline-product/pom.xml:<!-- Also needed by Jena --> incubator-taverna-engine/taverna-prov-owl-bindings/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-engine/taverna-prov-owl-bindings/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-engine/taverna-prov-owl-bindings/pom.xml: <version>${jena.version}</version> incubator-taverna-engine/taverna-prov-owl-bindings/pom.xml: <description>OWL bindings using Jena</description> incubator-taverna-language/taverna-databundle/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-language/taverna-databundle/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-language/taverna-databundle/pom.xml: <version>${jena.version}</version> incubator-taverna-language/taverna-robundle/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-language/taverna-robundle/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-language/taverna-robundle/pom.xml: <version>${jena.version}</version> incubator-taverna-language/taverna-scufl2-annotation/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-language/taverna-scufl2-annotation/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-language/taverna-scufl2-annotation/pom.xml: <version>${jena.version}</version> incubator-taverna-language/taverna-scufl2-examples/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-language/taverna-scufl2-examples/pom.xml: <artifactId>jena-arq</artifactId> incubator-taverna-language/taverna-scufl2-examples/pom.xml: <version>${jena.version}</version> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <artifactId>jena-maven-tools</artifactId> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <version>${jena.version}</version> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <output>${project.build.directory}/generated-sources/jena</output> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <source>${project.build.directory}/generated-sources/jena</source> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <artifactId>jena-maven-tools</artifactId> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <versionRange>[${jena.version},)</versionRange> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <!-- Make target/generated-source/jena --> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-language/taverna-scufl2-wfdesc/pom.xml: <version>${jena.version}</version> incubator-taverna-plugin-component/taverna-component-activity/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-plugin-component/taverna-component-activity/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-plugin-component/taverna-component-activity/pom.xml: <version>${jena.version}</version> incubator-taverna-plugin-component/taverna-component-repository-api/pom.xml: <groupId>org.apache.jena</groupId> incubator-taverna-plugin-component/taverna-component-repository-api/pom.xml: <artifactId>jena-osgi</artifactId> incubator-taverna-plugin-component/taverna-component-repository-api/pom.xml: <version>${jena.version}</version>
Some of those are exposed in the API - e.g. in
https://taverna.incubator.apache.org/javadoc/taverna-language/org/apache/taverna/scufl2/annotation/AnnotationTools.html
Commons RDF is evolving as a light-weight API with bindings for both RDF4J (newer Sesame) and Jena - but with interfaces that don't expose those.
So it would be a good idea if we could move towards using Commons RDF and from our API only expose RDF interfaces from Commons RDF API – then we are free to swap/update implementations.
Some of this uses with JSONLD in RO Bundle can use the JSONLD-Java binding for Commons RDF directly, and therefore reduce the number of dependencies of taverna-robundle.
Full disclosure: I'm one of the committers of Commons RDF Version 0.3.0 adds the RDF4J/Jena implementations, currently under vote.
Attachments
Issue Links
- is duplicated by
-
TAVERNA-1017 Use/expose Commons RDF API instead of Jena/Sesame
- To Do