cff-version: 1.2.0
title: A Python package that converts YAML to NXDL format and vice versa
message:
  If you use this software, please cite it using the
  metadata from this file.
type: software
version: 0.1.1
authors:
  - given-names: Andrea
    family-names: Albino
    orcid: 'https://orcid.org/0000-0001-9280-7431'
  - given-names: Rubel
    family-names: Mozumder
    orcid: 'https://orcid.org/0009-0007-5926-6646'
  - given-names: Sandor
    family-names: Brockhauser
    orcid: 'https://orcid.org/0000-0002-9700-4803'
  - given-names: Florian
    family-names: Dobener
    orcid: 'https://orcid.org/0000-0003-1987-6224'
  - given-names: Markus
    family-names: Kühbach
    orcid: 'https://orcid.org/0000-0002-7117-5196'
  - given-names: Lukas
    family-names: Pielsticker
    orcid: 'https://orcid.org/0000-0001-9361-8333'
  - given-names: Sherjeel
    family-names: Shabih
    orcid: 'https://orcid.org/0009-0008-6635-4465'

doi: 10.5281/zenodo.13860810
repository-code: 'https://github.com/FAIRmat-NFDI/nyaml'
url: https://doi.org/10.5281/zenodo.13860810
abstract:
  The nyaml converter is a Python software tool designed to transform the NeXus Definition
  Language (NXDL) from YAML format to XML, the official format for NeXus data exchange format
  (https://www.nexusformat.org/), and vice versa. NXDL is used to define experiment instruments,
  setups, or scientific data objects from experiments in a schema-based structure. While the
  official NXDL format is in XML, this tool enables users to write the schema in a more
  developer-friendly YAML format and seamlessly convert it into the official XML format.

  The `nyaml` tool also supports the reverse process, converting XML-based NXDL schemas into
  YAML format. Users can benefit from a more accessible and human-readable way to define
  NeXus data structures, while still adhering to NeXus standards. The tool requires users to
  follow a specific grammar (see full documentation at https://fairmat-nfdi.github.io/nyaml/)
  for embedding NeXus data structures, ensuring compatibility with the XML-based NXDL.

  This work is part of the FAIRmat project (project ID 460197019), funded by the Deutsche
  Forschungsgemeinschaft (DFG, German Research Foundation)
  (https://gepris.dfg.de/gepris/projekt/460197019?language=en). Visit the
  [FAIRmat page](https://www.fairmat-nfdi.eu/fairmat/about-fairmat/consortium-fairmat) for more info.


license: Apache-2.0