Open matthiaskoenig opened 8 years ago
In addition to the combine archive, also the research objects should be supported. Similar strategy of finding all the SBML files in the archive.
Java library with Maven dependencies available http://www.researchobject.org/specifications/ https://github.com/apache/incubator-taverna-language/tree/master/taverna-robundle Supports both RO and OMEX and also the interconversion.
Specification here https://researchobject.github.io/specifications/bundle/
This will be implemented in combination with comp support. Otherwise all the submodels must be loaded separately (if not in one file). Comp models with multiple files should be distributed in omex or at least zip file.
Zip files will be supported, but omex or ro is recommended.
This could be a use case for nested networks. A root network representing the archive. The nodes are the individual files in the archive, with tree representing the file structure. The individual files can than be represented via symbols/images of the respective type. Within the SBML networks one could than zoom in from the root network within the nested network.
TODO: add logos and references for RO and COMBINE archive to documentation and manucript.
Logos and references added. This is on hold for now due to problems in including taverna-robundle in Cytoscape. see #176
Current discussion https://groups.google.com/forum/#!topic/cytoscape-app-dev/QpjgPR62ZK8
Some update: Finally got the Maven dependencies running. The trick is to split up the jena-osgi bundle and than import the components while including and updating the compontents.
Instead of
<dependency>
<groupId>org.apache.taverna.language</groupId>
<artifactId>taverna-robundle</artifactId>
<version>0.15.1-incubating</version>
</dependency>
<dependency>
<groupId>org.apache.taverna.language</groupId>
<artifactId>taverna-robundle</artifactId>
<version>0.15.1-incubating</version>
<exclusions>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
</exclusion>
<exclusion>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
</exclusion>
<!-- problems with newer OSGI and necessary to split in components
for exclusion of xerces -->
<exclusion>
<groupId>org.apache.jena</groupId>
<artifactId>jena-osgi</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- include split components -->
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>jena-core</artifactId>
<version>3.1.0</version>
<exclusions>
<exclusion>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
<version>2.11.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>jena-arq</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>jena-iri</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>org.apache.jena</groupId>
<artifactId>jena-tdb</artifactId>
<version>3.1.0</version>
</dependency>
<!--
Update dependencies to fix:
https://issues.apache.org/jira/browse/JENA-1178
-->
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.2</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient-cache</artifactId>
<version>4.5.2</version>
</dependency>
<dependency>
<groupId>com.github.jsonld-java</groupId>
<artifactId>jsonld-java</artifactId>
<version>0.8.3</version>
</dependency>
First prototype implemented. Works with Cy3.5-SNAPSHOT. Many small issues
Probably dropping the research object, the dependencies are a nightmare and provide minimal additional functionality as long as there is no RO import/export with FAIRDOM hub. This will simplify the dependency nightmare between all the different loggers and xml libraries.
Research object is dropped. Only going for omex with the clean Java SEMS library.
Allow to read all SBML files from a given OMEX file. Necessary to register an additional file filter for
*.omex
and read the SBML files from the manifest file.