diff --git a/README.md b/README.md index e0ce009..656a9fc 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,27 @@ For sure, we need more documentation here. The files *writer_1_3.h5* and *writer_1_3__niac2014.h5* are taken directly from the NeXus online documentation +## Autogenerated examples for all application definitions + +In the `autogenerated_examples/nxdl` directory you will find examples of each +application definition in several forms, hdf5 files and python scripts that will +create hdf5 files which contain the required structure (groups/fields/attributes) +for each application definition. The data used for fields is meant only to show +the type of data required, not actually valid data (spectra or images) for each field, +the hope is that by studying the examples it will make it easier for users to +understand what they need to do in order to create Nexus compliant files for their desired +application definition. + +Directory contents of examples found in the `autogenerated_examples/nxdl` directory: + +  `*/applications` Contains hdf5 files for each definition + +  `*/python_scripts/h5py` Contains python scripts to create each definition using **h5py** + +  `*/python_scripts/nexusformat` Contains python scripts to create each definition using **nexusformat** + + + ## NeXus compliance of files An automated analysis (via code [*critique.py*](critique.py)) of the files, by directory, diff --git a/nxdl/README.md b/nxdl/README.md index a87ca39..2628e79 100644 --- a/nxdl/README.md +++ b/nxdl/README.md @@ -98,3 +98,8 @@ finished exporting to [G:\tst_nexus\exampledata\nxdl\applications\NXiqproc.hdf5] [nxdl_validate_out](nxdl_validate_out.md) is the output of running **nxvalidate** against each generated file +[ex_h5py_validation_out.md](ex_h5py_validation_out.md) is the output from **nxvalidate** against the files created by the python scripts using **h5py** + +[ex_nexusformat_validation_out.md](ex_nexusformat_validation_out.md) is the output from **nxvalidate** against the files created by the python scripts using **nexusformat** + + diff --git a/nxdl/ex_h5py_validation_out.md b/nxdl/ex_h5py_validation_out.md index f82c80e..7e24227 100644 --- a/nxdl/ex_h5py_validation_out.md +++ b/nxdl/ex_h5py_validation_out.md @@ -1,40 +1,42 @@ **The following is output from running nxvalidate against the resulting hdf file for each generated ex_h5py_DEFINITION.py script** ``` -h5py_NXarchive.h5 passed validation -h5py_NXarpes.h5 passed validation -definition=NXcanSAS.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=h5py_NXcanSAS.h5 -1 errors and 9 warnings found when validating h5py_NXcanSAS.h5 -h5py_NXdirecttof.h5 passed validation -h5py_NXfluo.h5 passed validation -h5py_NXindirecttof.h5 passed validation -h5py_NXiqproc.h5 passed validation -h5py_NXlauetof.h5 passed validation -h5py_NXmonopd.h5 passed validation -definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXsample/name sev=error dataPath=/entry/sample/depends_on dataFile=h5py_NXmx.h5 -definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument/detector/depends_on dataFile=h5py_NXmx.h5 -2 errors and 16 warnings found when validating h5py_NXmx.h5 -h5py_NXrefscan.h5 passed validation -h5py_NXreftof.h5 passed validation -h5py_NXsas.h5 passed validation -h5py_NXsastof.h5 passed validation -h5py_NXscan.h5 passed validation -h5py_NXspe.h5 passed validation -h5py_NXsqom.h5 passed validation -h5py_NXstxm.h5 passed validation -h5py_NXtas.h5 passed validation -h5py_NXtofnpd.h5 passed validation -h5py_NXtofraw.h5 passed validation -h5py_NXtofsingle.h5 passed validation -h5py_NXtomo.h5 passed validation -h5py_NXtomophase.h5 passed validation -h5py_NXtomoproc.h5 passed validation -h5py_NXxas.h5 passed validation -h5py_NXxasproc.h5 passed validation -h5py_NXxbase.h5 passed validation -h5py_NXxeuler.h5 passed validation -h5py_NXxkappa.h5 passed validation -h5py_NXxlaue.h5 passed validation -h5py_NXxlaueplate.h5 passed validation -h5py_NXxnb.h5 passed validation -h5py_NXxrot.h5 passed validation -``` \ No newline at end of file +NXarchive.h5 passed validation +NXarpes.h5 passed validation +definition=NXcanSAS.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=NXcanSAS.h5 +1 errors and 9 warnings found when validating NXcanSAS.h5 +NXdirecttof.h5 passed validation +NXfluo.h5 passed validation +NXindirecttof.h5 passed validation +NXiqproc.h5 passed validation +NXlauetof.h5 passed validation +NXmonopd.h5 passed validation +definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXsample/name sev=error dataPath=/entry/sample/depends_on dataFile=NXmx.h5 +definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument/detector/depends_on dataFile=NXmx.h5 +2 errors and 16 warnings found when validating NXmx.h5 +NXrefscan.h5 passed validation +NXreftof.h5 passed validation +NXsas.h5 passed validation +NXsastof.h5 passed validation +NXscan.h5 passed validation +NXspe.h5 passed validation +NXsqom.h5 passed validation +NXstxm.h5 passed validation +definition=NXtas.nxdl.xml message="Link target /entry/instrument/analyzer/ef is invalid" nxdlPath=/NXentry/NXdata/ef dataPath=/entry/data/ef sev=error dataFile=NXtas.h5 +1 errors and 18 warnings found when validating NXtas.h5 +NXtofnpd.h5 passed validation +NXtofraw.h5 passed validation +NXtofsingle.h5 passed validation +NXtomo.h5 passed validation +NXtomophase.h5 passed validation +NXtomoproc.h5 passed validation +NXxas.h5 passed validation +NXxasproc.h5 passed validation +NXxbase.h5 passed validation +NXxeuler.h5 passed validation +NXxkappa.h5 passed validation +NXxlaue.h5 passed validation +NXxlaueplate.h5 passed validation +NXxnb.h5 passed validation +NXxrot.h5 passed validation + +``` diff --git a/nxdl/ex_nexusformat_validation_out.md b/nxdl/ex_nexusformat_validation_out.md index ba7cadf..578c93b 100644 --- a/nxdl/ex_nexusformat_validation_out.md +++ b/nxdl/ex_nexusformat_validation_out.md @@ -1,40 +1,41 @@ **The following is output from running nxvalidate against the resulting hdf file for each generated ex_nexusformat_DEFINITION.py script** ``` -nexusformat_NXarchive.h5 passed validation -nexusformat_NXarpes.h5 passed validation -definition=NXcanSAS.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=nexusformat_NXcanSAS.h5 -1 errors and 10 warnings found when validating nexusformat_NXcanSAS.h5 -nexusformat_NXdirecttof.h5 passed validation -nexusformat_NXfluo.h5 passed validation -nexusformat_NXindirecttof.h5 passed validation -nexusformat_NXiqproc.h5 passed validation -nexusformat_NXlauetof.h5 passed validation -nexusformat_NXmonopd.h5 passed validation -definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXsample/name sev=error dataPath=/entry/sample/depends_on dataFile=nexusformat_NXmx.h5 -definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument/detector/depends_on dataFile=nexusformat_NXmx.h5 -2 errors and 16 warnings found when validating nexusformat_NXmx.h5 -nexusformat_NXrefscan.h5 passed validation -nexusformat_NXreftof.h5 passed validation -nexusformat_NXsas.h5 passed validation -nexusformat_NXsastof.h5 passed validation -nexusformat_NXscan.h5 passed validation -nexusformat_NXspe.h5 passed validation -nexusformat_NXsqom.h5 passed validation -nexusformat_NXstxm.h5 passed validation -nexusformat_NXtas.h5 passed validation -nexusformat_NXtofnpd.h5 passed validation -nexusformat_NXtofraw.h5 passed validation -nexusformat_NXtofsingle.h5 passed validation -nexusformat_NXtomo.h5 passed validation -nexusformat_NXtomophase.h5 passed validation -nexusformat_NXtomoproc.h5 passed validation -nexusformat_NXxas.h5 passed validation -nexusformat_NXxasproc.h5 passed validation -nexusformat_NXxbase.h5 passed validation -nexusformat_NXxeuler.h5 passed validation -nexusformat_NXxkappa.h5 passed validation -nexusformat_NXxlaue.h5 passed validation -nexusformat_NXxlaueplate.h5 passed validation -nexusformat_NXxnb.h5 passed validation -nexusformat_NXxrot.h5 passed validation -``` \ No newline at end of file +NXarchive.nxs passed validation +NXarpes.nxs passed validation +definition=NXcanSAS.nxdl.xml message="Required group missing" nxdlPath=/NXentry/NXdata sev=error dataPath=/entry dataFile=NXcanSAS.nxs +1 errors and 10 warnings found when validating NXcanSAS.nxs +NXdirecttof.nxs passed validation +NXfluo.nxs passed validation +NXindirecttof.nxs passed validation +NXiqproc.nxs passed validation +NXlauetof.nxs passed validation +NXmonopd.nxs passed validation +definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXsample/name sev=error dataPath=/entry/sample/depends_on dataFile=NXmx.nxs +definition=NXmx.nxdl.xml message="Cannot even find the starting point of the depends_on chain, SAMPLE-CHAR-DATA" nxdlPath=/NXentry/NXinstrument/NXdetector sev=error dataPath=/entry/instrument/detector/depends_on dataFile=NXmx.nxs +2 errors and 16 warnings found when validating NXmx.nxs +NXrefscan.nxs passed validation +NXreftof.nxs passed validation +NXsas.nxs passed validation +NXsastof.nxs passed validation +NXscan.nxs passed validation +NXspe.nxs passed validation +NXsqom.nxs passed validation +NXstxm.nxs passed validation +NXtas.nxs passed validation +NXtofnpd.nxs passed validation +NXtofraw.nxs passed validation +NXtofsingle.nxs passed validation +NXtomo.nxs passed validation +NXtomophase.nxs passed validation +NXtomoproc.nxs passed validation +NXxas.nxs passed validation +NXxasproc.nxs passed validation +NXxbase.nxs passed validation +NXxeuler.nxs passed validation +NXxkappa.nxs passed validation +NXxlaue.nxs passed validation +NXxlaueplate.nxs passed validation +NXxnb.nxs passed validation +NXxrot.nxs passed validation + +```