=== Input/Output formats ===
Whenever it is required to specify the input and output file formats for
a script using the command line arguments one of the following patterns
should be used to choose an appropriate name for such options.

== Format specific options ==

Pattern
  input format:  --<format>-input
  output format: --<format>-output
  I/O format:    --<format>

  where <format> is the lower case format name, e.g. "cif", "xml", "json".

Use cases
  * Input an XML file
     <script> --xml-input
  * Output a JSON file:
    <script> --json-output
  * Input a CIF file, output an XML file:
    <script> --cif-input --xml-output
  * Input and output a CIF file:
    <script> --cif

== Generic format options ==

Pattern
  input format:  --format-input <format>
  output format: --format-output <format>
  I/O format:    --format-io <format>

  where <format> is the lower case format name, e.g. "cif", "xml", "json".

Use cases
  * Input an XML file
     <script> --format-input xml
  * Output a JSON file:
    <script> --format-output json
  * Input a CIF file, output an XML file:
    <script> --format-input cif --format-output xml
  * Input and output a CIF file:
    <script> --format-io cif

== Composite formats ==
In case the format is a composite one the components of the composite format
are separated using the plus ("+") symbol.

Use cases:
 * Input a MOL3000 file inside and SDF file:
    <script> --format-input mol3000+sdf
 * Output a collection of CIF files inside a tar.gz archive:
    <script> --format-output cif+tar.gz
