nxsfileinfo¶
Description¶
The nxsfileinfo program show metadata from nexus files
Synopsis¶
nxsfileinfo <command> [options] <nexus_file_name>
The following commands are available: general, field, metadata, origdatablock, sample, instrument, attachment
nxsfileinfo general¶
It shows general information for he nexus file.
Synopsis¶
nxsfileinfo general <nexus_file_name>
- Options:
- -h, --help
show this help message and exit
- --h5py
use h5py module as a nexus reader
- --h5cpp
use h5cpp module as a nexus reader
Example¶
nxsfileinfo general saxs_ref1_02.nxs
nxsfileinfo field¶
It shows field information for the nexus file.
Synopsis¶
Usage: nxsfileinfo field [options] <file_name>
- Options:
- -h, --help
show this help message and exit
- -c HEADERS, --columns=HEADERS
names of column to be shown (separated by commas without spaces). The possible names are: depends_on, dtype, full_path, nexus_path, nexus_type, shape, source, source_name, source_type, strategy, trans_type, trans_offset, trans_vector, units, value
- -f FILTERS, --filters=FILTERS
full_path filters (separated by commas without spaces). Default: '*'. E.g. ':NXsample/'
- -v VALUES, --values=VALUES
field names which value should be stored (separated by commas without spaces). Default: depends_on
- -g, --geometry
show fields with geometry full_path filters, i.e. :NXtransformations/,*/depends_on. It works only when -f is not defined
- -s, --source
show datasource parameters
- --h5py
use h5py module as a nexus reader
- --h5cpp
use h5cpp module as a nexus reader
Example¶
nxsfileinfo field /tmp/saxs_ref1_02.nxs
nxsfileinfo field /user/data/myfile.nxs -g
nxsfileinfo field /user/data/myfile.nxs -s
nxsfileinfo metadata¶
It shows metadata of the nexus file.
Synopsis¶
Usage: nxsfileinfo metadata [options] <file_name>
- Options:
- -h, --help
show this help message and exit
- -a ATTRS, --attributes ATTRS
names of field or group attributes to be show (separated by commas without spaces). The default takes all attributes
- -n NATTRS, --hidden-attributes NATTRS
names of field or group attributes to be hidden (separated by commas without spaces). The default: 'nexdatas_source,nexdatas_strategy'
- -v VALUES, --values VALUES
field names of more dimensional datasets which value should be shown (separated by commas without spaces)
- -z KEYWORDS, --keywords KEYWORDS
dataset keywords separated by commas.
- -w OWNERGROUP, --owner-group OWNERGROUP
owner group name. Default is {beamtimeid}-part
- -c ACCESSGROUPS, --access-groups ACCESSGROUPS
access group names separated by commas. Default is {beamtimeid}-clbt,{beamtimeId}-dmgt,{beamline}dmgt
- -g GROUP_POSTFIX, --group-postfix GROUP_POSTFIX
postfix to be added to NeXus group name. The default: 'Parameters'
- -t ENTRYCLASSES, --entry-classes ENTRYCLASSES
names of entry NX_class to be shown (separated by commas without spaces). If name is '' all groups are shown. The default: 'NXentry'
- -e ENTRYNAMES, --entry-names ENTRYNAMES
names of entry groups to be shown (separated by commas without spaces). If name is '' all groups are shown. The default: ''
- -m, --raw-metadata
do not store NXentry as scientificMetadata
- --add-empty-units
add empty units for fields without units
- --oned
add 1d values to scientificMetadata
- --max-oned-size MAXONEDSIZE
add min and max (or first and last) values of 1d records to scientificMetadata if its size excides --max-oned-size value
- -p PID, --pid PID
dataset pid
- -i BEAMTIMEID, --beamtimeid BEAMTIMEID
beamtime id
- -u, --pid-with-uuid
generate pid with uuid
- -f, --pid-with-filename
generate pid with file name
- -q TECHNIQUES, --techniques TECHNIQUES
names of techniques (separated by commas without spaces).The default: ''
- -j SAMPLEID, --sample-id SAMPLEID
sampleId
- --sample-id-from-name
get sampleId from the sample name
- -y INSTRUMENTID, --instrument-id INSTRUMENTID
instrumentId
- --raw-instrument-id
leave raw instrument id
- -b BEAMTIMEMETA, --beamtime-meta BEAMTIMEMETA
beamtime metadata file
- -s SCIENTIFICMETA, --scientific-meta SCIENTIFICMETA
scientific metadata file
- -o OUTPUT, --output OUTPUT
output scicat metadata file
- -r RELPATH, --relative-path RELPATH
relative path to the scan files
- -x CHMOD, --chmod CHMOD
json metadata file mod bits, e.g. 0o662
- --copy-map COPYMAP
json or yaml map {output: input} or [[output, input],] or a text file list to re-arrange metadata
- --copy-map-field COPYMAPFIELD
field json or yaml with map {output: input} or [[output, input],] or a text file list to re-arrange metadata. The default: 'scientificMetadata.nxsfileinfo_parameters.copymap.value'
- --copy-map-error
Raise an error when the copy map file does not exist
- --copy-map-file COPYMAPFILE
json or yaml file containing the copy map, see also --copy-map
- -f FILEFORMAT, --file-format FILEFORMAT
input file format, e.g. 'nxs'. Default is defined by the file extension
- --proposal-as-proposal
Store the DESY proposal as the SciCat proposal
- --h5py
use h5py module as a nexus reader
- --h5cpp
use h5cpp module as a nexus reader
Example¶
nxsfileinfo metadata /user/data/myfile.nxs
nxsfileinfo metadata /user/data/myfile.fio
nxsfileinfo metadata /user/data/myfile.nxs -p 'Group'
nxsfileinfo metadata /user/data/myfile.nxs -s
nxsfileinfo metadata /user/data/myfile.nxs -a units,NX_class
nxsfileinfo origdatablock¶
It generates description of all scan files
Synopsis¶
Usage: nxsfileinfo origdatablock [options] <scan_name>
- Options:
- -h, --help
show this help message and exit
- -p PID, --pid PID
dataset pid
- -o OUTPUT, --output OUTPUT
output scicat metadata file
- -w OWNERGROUP, --owner-group OWNERGROUP
owner group name. Default is {beamtimeid}-part
- -c ACCESSGROUPS, --access-groups ACCESSGROUPS
access group names separated by commas. Default is {beamtimeid}-clbt,{beamtimeId}-dmgt
- -s SKIP, --skip SKIP
filters for files to be skipped (separated by commas without spaces). Default: ''. E.g. '.pyc,~'
- -a ADD, --add ADD
list of files to be added (separated by commas without spaces). Default: ''. E.g. 'scan1.nxs,scan2.nxs'
- -r RELPATH, --relative-path RELPATH
relative path to the scan files
- -x CHMOD, --chmod CHMOD
json metadata file mod bits, e.g. 0o662
Example¶
nxsfileinfo origdatablock /user/data/scan_12345
nxsfileinfo sample¶
It generates description of sample
Synopsis¶
Usage: nxsfileinfo sample [options]
- Options:
- -h, --help
show this help message and exit
- -s SAMPLEID, --sample-id SAMPLEID
sample id
- -i BEAMTIMEID, --beamtimeid BEAMTIMEID
beamtime id
- -b BEAMLINE, --beamline BEAMLINE
beamline
- -d DESCRIPTION, --description DESCRIPTION
sample description
- -r OWNER, --owner OWNER
sample owner
- -p, --published
sample is published
- -w OWNERGROUP, --owner-group OWNERGROUP
owner group name. Default is {beamtimeid}-dmgt
- -c ACCESSGROUPS, --access-groups ACCESSGROUPS
access group names separated by commas. Default is {be amtimeId}-dmgt,{beamtimeid}-clbt,{beamtimeId}-part,{be amline}dmgt,{beamline}staff
- -x CHMOD, --chmod CHMOD
json metadata file mod bits, e.g. 0o662
- -m CHARACTERISTICSMETA, --sample-characteristics CHARACTERISTICSMETA
sample characteristics metadata file
- -o OUTPUT, --output OUTPUT
output scicat metadata file
Example¶
nxsfileinfo sample -i petra3/h2o/234234 -d 'HH water' -s ~/cm.json
nxsfileinfo instrument¶
It generates description of instrument
Synopsis¶
Usage: nxsfileinfo instrument [options]
- Options:
- -h, --help
show this help message and exit
- -p PID, --pid PID
instrument pid
- -n NAME, --name NAME
instrument name
- -i BEAMTIMEID, --beamtimeid BEAMTIMEID
beamtime id
- -b BEAMLINE, --beamline BEAMLINE
beamline
- -w OWNERGROUP, --owner-group OWNERGROUP
owner group name. Default is {beamtimeid}-dmgt
- -c ACCESSGROUPS, --access-groups ACCESSGROUPS
access group names separated by commas. Default is {be amtimeId}-dmgt,{beamtimeid}-clbt,{beamtimeId}-part,{be amline}dmgt,{beamline}staff
- -x CHMOD, --chmod CHMOD
json metadata file mod bits, e.g. 0o662
- -m CUSTOMMETA, --custom-metadata CUSTOMMETA
instrument characteristics metadata file
- -o OUTPUT, --output OUTPUT
output scicat metadata file
Example¶
nxsfileinfo instrument -p /petra3/p00 -n P00 -m ~/cm.json
nxsfileinfo attachment¶
It generates description of attachment
Synopsis¶
Usage: nxsfileinfo attachment [options] <image_file|scan_file>
- Options:
- -h, --help
show this help message and exit
- -a ATID, --id ATID
attachment id
- -t CAPTION, --caption CAPTION
caption text
- -i BEAMTIMEID, --beamtimeid BEAMTIMEID
beamtime id
- -b BEAMLINE, --beamline BEAMLINE
beamline
- -r OWNER, --owner OWNER
attachment owner
- -w OWNERGROUP, --owner-group OWNERGROUP
owner group name. Default is {beamtimeid}-dmgt
- -c ACCESSGROUPS, --access-groups ACCESSGROUPS
access group names separated by commas. Default is {be amtimeId}-dmgt,{beamtimeid}-clbt,{beamtimeId}-part,{be amline}dmgt,{beamline}staff
- -f FILEFORMAT, --file-format FILEFORMAT
input file format, e.g. 'nxs'. Default is defined by the file extension
- --h5py
use h5py module as a nexus reader
- --h5cpp
use h5cpp module as a nexus reader
- -x CHMOD, --chmod CHMOD
json metadata file mod bits, e.g. 0o662
- -s SIGNALS, --signals SIGNALS
signals data name(s) separated by comma
- -e AXES, --axes AXES
axis/axes data name(s) separated by comma
- -q SCANCMDAXES, --scan-command-axes SCANCMDAXES
a JSON dictionary with scan-command axes to override, axis/axes data name(s) separated by comma for detectors and by semicolon for more plots. Default: {"hklscan":"h;k;l","qscan":"qz;qpar"}
- -m FRAME, --frame FRAME
a frame number for if more 2D images in the data
- --signal-label SLABEL
signal label
- --xlabel XLABEL
x-axis label
- --ylabel YLABEL
y-axis label
- -u, --override
override NeXus entries by script parameters
- --parameters-in-caption
add plot paramters to the caption
- -n NEXUSPATH, --nexus-path NEXUSPATH
base nexus path to element to be shown. If th path is '' the default group is shown. The default: ''
- -o OUTPUT, --output OUTPUT
output scicat metadata file
Example¶
nxsfileinfo attachment -b p00 -i 2342342 -t 'HH water' -o ~/at1.json thumbnail.png
nxsfileinfo attachment -b p00 -i 2342342 -t 'HH water' -o ~/at2.json -s pilatus myscan_00123.nxs
nxsfileinfo attachment -b p00 -i 2342342 -t 'HH water' -o ~/at2.json myscan_00124.fio
nxsfileinfo groupmetadata¶
It groups scan metadata to one dataset
Synopsis¶
Usage: nxsfileinfo groupmetadata [options] [groupname]
- Options:
- -h, --help
show this help message and exit
- -p PID, --pid PID
dataset pid
- --raw
raw dataset type
- -i BEAMTIMEID, --beamtimeid
BEAMTIMEID beamtime id
- -s, --skip-group-datablock
skip group datablock
- -w, --allow-duplication
allow to merge metadata with duplicated pid
- -q, --raw
raw dataset type
- -f, --write-files
write output to files
- -k SCICATVERSION, --scicat-version SCICATVERSION
major scicat version metadata
- -x CHMOD, --chmod CHMOD
json metadata file mod bits, e.g. 0o662
- -g GROUPMAP, --group-map GROUPMAP
json or yaml map of {output: input} or [[output, input],] or a text file list to re-arrange metadata
- -e, --group-map-error
Raise an error when the group map file does not exist
- -r GROUPMAPFILE, --group-map-file GROUPMAPFILE
json or yaml file containing the copy map, see also
- -m METADATAFILE, --metadata METADATAFILE
json metadata file
- -d ORIGDATABLOCKFILE, --origdatablock ORIGDATABLOCKFILE
json origmetadata file
- -a ATTACHMENTFILE, --attachment ATTACHMENTFILE
json attachment file
- -o OUTPUT, --output OUTPUT
output scicat group metadata file
- -l DBOUTPUT, --datablock-output DBOUTPUT
output scicat group datablocks list file
- -t ATOUTPUT, --attachment-output ATOUTPUT
output scicat group attachments list file
Example¶
nxsfileinfo groupmetadata -o /user/data/myscan.scan.json -t /user/data/myscan.attachment.json -l /user/data/myscan.origdatablock.json -c /home/user/group_config.txt -m /user/data/myscan_00023.scan.json -d /user/data/myscan_00023.origdatablock.json -a /user/data/myscan_00023.attachment.json
nxsfileinfo groupmetadata myscan_m001 -m /user/data/myscan_00021.scan.json -c /home/user/group_config.txt
nxsfileinfo groupmetadata myscan_m001 -c /home/user/group_config.txt -m /user/data/myscan_00023.scan.json -d /user/data/myscan_00023.origdatablock.json -a /user/data/myscan_00023.attachment.json
nxsfileinfo groupmetadata -m /user/data/myscan_00023.scan.json -d /user/data/myscan_00023.origdatablock.json -c /home/user/group_config.txt