What’s New¶
Highlights from recent releases and commits.
Schema & Placement¶
SchemaPlacer — NXDL-guided auto-placement for SPEC and other inputs.
Application definition bias — prefer fields from a chosen application definition (for example
NXxas).Bundled NXDL — if
external_references/nexus/nexus_definitionsis present, it is used as the default--nxdl-root.Units-aware scoring — units such as
eV,K,degsteer placement to appropriate fields.CSV metadata — enrich variables with
description/unitsvalues that propagate into generated definitions.
HDF5 & Templates¶
Links vs extract modes — control how definitions are generated from existing HDF5/NeXus files.
Per-scan outputs — SPEC workflow (
-f) emits one file per scan plus a master with external links.Single-scan templates —
-tcreates reusable templates expanded across scans during conversion.YAML output — optional YAML definitions when generating templates.
Name sanitisation — invalid dataset/group names are normalised, preserving the original label in
@long_name.
Inputs & Plugins¶
SPEC — robust parser with normalised keys and common aliasing.
DTA/DAT (batteries) — RAW/non-RAW/temperature readers plus combined folder generation.
PEAXIS — folder generator and SIF/XAS/DAT parsers.
MPES — generator + parser for multi-photon emission spectroscopy HDF5 data; activated by
-b mpes.YAML — generator + parser for YAML-format data files with optional SchemaPlacer placement.
JSON-LD — generator + parser for fixed-width/delimited text described via CDI/Schema.org JSON-LD (
--jsonld-structure FILE).Diamond B18 XAFS — unified ASCII/NeXus parser + NXxas generator; every parsed variable is now linked to the produced definition.
HDF5/NeXus — generator + parser, building definitions from existing files.
TIFF — image-centric definitions with detector/data placeholders and NXdata linkage.
Plugin system — plug-and-play modules; auto-discovered without explicit registration.
CLI & Batch¶
Batch conversion — recursion, glob filters, dry-run summaries.
Folder generation modes —
--single-filevs--multi-file.Beamline context — IKFT, batteries, PEAXIS, MPES modes.
Batteries analysis —
--batteries-analysisderives EIS/SoC/IV datasets during conversion.DTA/RAW user name —
--user-name NAMEembeds a user field in generated pair templates; otherwise prompted interactively and cached for the run.Prompt literals —
.nxdvalues of the form?"Prompt text"ask for user input once per run and reuse the answer for all files in a batch.ICAT ingestion —
-I NUMappends aproposal_<NUM>/subfolder to outputs.Utilities —
--license,--notice,--list-beamlines, CSV export for variables.Auto-generate NXD — during conversion, create definitions per file when scanning directories.
Validation —
--validaterunspunxon generated.nxsoutputs.Value export —
--export-values-csvwrites HDF5 dataset values to CSV with optional prefix filtering.