Update How to add variables in the schema (pw.x and cp.x ) authored by Pietro Delugas's avatar Pietro Delugas
......@@ -15,6 +15,14 @@ The espressoType is composed by many sub-elements. In order of importance.
the only one which is mandatory is the `input` element. This is because the xml file may actually be used as the input of the calculation and all the other elements which are produced after the program has finished are obviously missing. The file printed as output also includes the starting input element plus all the other elements.
## Automatic generation of XML I/O routines with xmltool
The XML I/O modules `qes_init_module.f90`, `qes_reset_module.f90`,`qes_bcast_module.f90` ,`qes_read_module.f90`,`qes_write_module.f90`,`qes_libs_module.f90`,`qes_types_module.f90` ara all generated automatically from the xmltool, a python script who reads the schema and then generates the Fortran code accordingly.
To generate the new routines one has to write the modified schema for example adding it to the `xsd` directory and then modify the `generate_qes_libs_module.py` script setting the variable `input_xsd` equal to the path of the new schema file. It is then sufficient to run the script, the new routines will be written in the `output` directory.
## versioning of the schema.
For the schema versions we are adopting the reverse date convention. For example a version released on May 17th 2019 would have version `17.05.19`.
......@@ -23,8 +31,8 @@ For the schema versions we are adopting the reverse date convention. For example
You can do it in different ways
1. Preferred way is to open an issue and attach your proposal for the modification of the schema version of the schema. This would allow to update the schema collection more chages together avoiding a multiplication of versions.
1. You can as usual make a fork of this repository and submit a merge request. Also in this case maybe the maintainer will try to group modification together though ...
1. Preferred way is to open an issue and attach your proposal for the modification of the schema. This would allow to update the schema periodically collecting changes together and avoiding the multiplication of the versions.
1. You can as usual make a fork of this repository and submit a merge request. Also in this case maybe the maintainer will try to group modification together.
## General rules when adding elements to the schema.
......
......