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_definitions is present, it is used as the default --nxdl-root.

  • Units-aware scoring — units such as eV, K, deg steer placement to appropriate fields.

  • CSV metadata — enrich variables with description/units values 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-t creates 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-file vs --multi-file.

  • Beamline context — IKFT, batteries, PEAXIS, MPES modes.

  • Batteries analysis--batteries-analysis derives EIS/SoC/IV datasets during conversion.

  • DTA/RAW user name--user-name NAME embeds a user field in generated pair templates; otherwise prompted interactively and cached for the run.

  • Prompt literals.nxd values 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 NUM appends a proposal_<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--validate runs punx on generated .nxs outputs.

  • Value export--export-values-csv writes HDF5 dataset values to CSV with optional prefix filtering.