From f8ab2d503b64a7cf5863f9eb2303b7037395df4f Mon Sep 17 00:00:00 2001 From: bitsgalore Date: Wed, 25 Mar 2015 14:00:22 +0100 Subject: [PATCH] update README --- README.md | 13 +++++++------ xsd/README.md | 2 ++ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index ff5e4bb..b0c2553 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ ## Jpylyzer homepage -[http://openplanets.github.io/jpylyzer/](http://openplanets.github.io/jpylyzer/) + ## Downloads @@ -19,13 +19,12 @@ ### Usage -`usage: jpylyzer.py [-h] [--verbose] [--wrapper] [--nullxml] [--nopretty] - [--version] - ...` + usage: jpylyzer.py [-h] [--verbose] [--recurse] [--wrapper] [--nullxml] + [--nopretty] [--version] jp2In [jp2In ...] ### Positional arguments -`...` : input JP2 image(s), may be one or more (whitespace-separated) path expressions; prefix wildcard (\*) with backslash (\\) in Linux.. +`jp2In` : input JP2 image(s), may be one or more (whitespace-separated) path expressions; prefix wildcard (\*) with backslash (\\) in Linux.. ### Optional arguments @@ -35,6 +34,8 @@ `--verbose` : report test results in verbose format; +`--recurse, -r` : when analysing a directory, recurse into subdirectories (implies `--wrapper`) + `--wrapper, -w` : wrap the output for individual image(s) in 'results' XML element. `--nullxml` : extract null-terminated XML content from XML and UUID boxes (doesn't affect validation) @@ -61,6 +62,7 @@ In the above example, output is redirected to the file 'rubbish.xml'. 5. *properties*: tree of image properties. Follows JP2 box structure. Naming of properties follows [ISO/IEC 15444-1 Annex I][2] (JP2 file format syntax) and [Annex A][3] (Codestream syntax). ## Debian packages build process + The [Vagrant directory](vagrant) of this repo contains instructions on how to build Debian packages using [VirtualBox](https://www.virtualbox.org/) and [Vagrant](https://www.vagrantup.com/). A Vagrantfile and provisioning scripts are included for a number of target platforms, which should make the process of building the packages fairly easy. ## Steps in preparing a jpylyzer release @@ -83,7 +85,6 @@ The [Vagrant directory](vagrant) of this repo contains instructions on how to bu 1. Spread the word! - [1]: https://github.com/openplanets/jpylyzer/blob/master/doc/jpylyzerUserManual.pdf?raw=true [2]: http://www.jpeg.org/public/15444-1annexi.pdf [3]: http://www.itu.int/rec/T-REC-T.800/en diff --git a/xsd/README.md b/xsd/README.md index 99025bb..d830eae 100644 --- a/xsd/README.md +++ b/xsd/README.md @@ -7,6 +7,7 @@ This folder contains a first attempt at an output schema for jpylyzer. A couple * No elaborate checks on reported properties (apart from data type); this is all done by *jpylyzer* anyway. * All boxes + properties that can be reported in the *properties* element are included in the schema. * The schema doesn't impose any constraints on whether the box types that are reported directly under *properties* (or in any of the superboxes) are actually allowed there. *Jpylyzer* just parses a *JP2* and reports whatever it finds there. Checks on whether boxes are allowed at a particular location, all expected boxes are present and their order of appearance are all part of *jpylyzer*'s validation process, and aren't repeated in the schema. If *jpylyzer* decides that a file is not valid *JP2* because of such constraints, the resulting output XML should still be valid according to *jpylyzer*'s output schema. +* Some numerical output elements that now have the *decimal* type could possibly result in validation errors in extreme cases (e.g. ouput in scientific notation for very large values). If this turns out to be a real problem, consider changing the vtype to *double* for those fields (already did this for *compressionRatio*, which can get huge in case of truncated files). ## Files @@ -22,6 +23,7 @@ For updates, use the branch of this repo that holds the jpylyzer homepage: +In case of changes that are bug fixes, publish the fixed schema under *exactly* the same name as the old one. In case of major changes, add the new schema as a separate file (e.g. *jpylyzer-v-2.0.xsd*) and then update declaration in jpylyzer as well. This will keep old instance files from breaking. ## Validate jpylyzer output file against schema