Skip to content

Release 1.0.4 of jmztab-m

Compare
Choose a tag to compare
@nilshoffmann nilshoffmann released this 07 Aug 09:32

This is release 1.0.4 of the jmztab-m libraries that was published to Maven Central.

It implements the mzTab-m 2.0 specification for metabolomics at https://github.com/HUPO-PSI/mzTab.

This release comes with an updated README and a POSIX compatible command line interface. Please note: the old command line examples will no longer work. Please check the updated examples below or on the main project page for the new syntax.

Release 1.0.4 should be backwards compatible to 1.0.3 and 1.0.2. However, for implementors, the refine validation within the io package's MTDLineParser has been refactored into separate validator implementations into the de.isas.mztab2.io.validators package.

This release also includes any amendments that were made as a result of the publication reviewers' feedback and the feedback from the PSI document review process. We have substantially updated the API documentation and have added examples from the specification document and have increased the unit test coverage.

To access the release artefacts, please go to Maven Central:

https://search.maven.org/#search%7Cga%7C1%7Cde.isas.mztab

To access the latest JavaDoc, please to the project's Maven page:

https://lifs-tools.github.io/jmzTab-m/

For everyone who is working off any generated code, please update to the latest version:

R: https://search.maven.org/remotecontent?filepath=de/isas/mztab/jmztabm-api/1.0.4/jmztabm-api-1.0.4-r.zip,

Python: https://search.maven.org/remotecontent?filepath=de/isas/mztab/jmztabm-api/1.0.4/jmztabm-api-1.0.4-python.zip

Please note that these packages do not include parser or writer code yet. However, the JSON created can be converted to proper mzTab using the Java CLI.

The CLI package bundles parser and semantic validator and contains sample files and the latest mapping file:

https://search.maven.org/remotecontent?filepath=de/isas/mztab/jmztabm-cli/1.0.4/jmztabm-cli-1.0.4-bin.zip

Running

java -jar jmztabm-cli-1.0.4.jar

on your command line will show you the possible arguments (staying close to the old jmztab).

Run a basic parse and validation on Error level:

java -jar jmztabm-cli-1.0.4.jar -c examples/MTBLS263.mztab

Run a basic parse and validation followed by applying the default mapping file on Error level for semantic validation:

java -jar jmztabm-cli-1.0.4.jar -c examples/MTBLS263.mztab -s

Run a basic parse and validation followed by applying a provided mapping file on Error level for semantic validation:

java -jar jmztabm-cli-1.0.4.jar -c examples/MTBLS263.mztab -s cv-mapping/mzTab-M-mapping.xml

Running the same on Info level yields additional messages (for optional parameters):

java -jar jmztabm-cli-1.0.4.jar -c examples/MTBLS263.mztab -s cv-mapping/mzTab-M-mapping.xml -level Info

To use the IO libraries (reading, writing and structural and logical validation) in your own Maven projects, use the following dependency:

<dependency>
    <groupId>de.isas.mztab</groupId>
    <artifactId>jmztabm-io</artifactId>
    <version>1.0.4</version>
</dependency>

To use the semantic validation with the mapping file in your own Maven project, use the following dependency:

<dependency>
    <groupId>de.isas.mztab</groupId>
    <artifactId>jmztabm-validation</artifactId>
    <version>1.0.4</version>
</dependency>

The semantic validation requires access to EBI's Ontology Lookup Service to resolve child terms in the mzTab file against their potential parents in the mapping file.