You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@taverna.apache.org by "Stian Soiland-Reyes (JIRA)" <ji...@apache.org> on 2018/02/26 15:49:00 UTC

[jira] [Commented] (TAVERNA-1017) Use/expose Commons RDF API instead of Jena/Sesame

    [ https://issues.apache.org/jira/browse/TAVERNA-1017?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16377064#comment-16377064 ] 

Stian Soiland-Reyes commented on TAVERNA-1017:
----------------------------------------------

See branch https://github.com/apache/incubator-taverna-language/tree/TAVERNA-1017

> Use/expose Commons RDF API instead of Jena/Sesame
> -------------------------------------------------
>
>                 Key: TAVERNA-1017
>                 URL: https://issues.apache.org/jira/browse/TAVERNA-1017
>             Project: Apache Taverna
>          Issue Type: Task
>          Components: Taverna Engine, Taverna Language, Taverna Plugin Component
>            Reporter: Stian Soiland-Reyes
>            Assignee: Stian Soiland-Reyes
>            Priority: Major
>              Labels: annotations, rdf
>
> Currently we use and expose a combination of Sesame 2 and Jena 3:
> {code}
> 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>
> {code}
> 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|http://commonsrdf.apache.org/] 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|http://commonsrdf.apache.org/apidocs/index.html?org/apache/commons/rdf/api/package-summary.html] -- 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|https://lists.apache.org/thread.html/5c6ce4d52e3f6ca69236bfba4176b49f8388d8caa118ac10b7464bec@%3Cdev.commonsrdf.apache.org%3E].



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)