Welcome to the nomad-semantic-web-service documentation¶
A NOMAD plugin that finds and extracts public synchrotron dataset records from ESRF-style catalogues, with semantic OpenAPI annotations and PANET/ESRFET ontology term mapping.
Introduction¶
This plugin brings the oscarsSemanticWebService
proof-of-concept by Giannis Koumoutsos into NOMAD as two cooperating entry points:
- A mounted REST API that mirrors the real ESRF ICAT+ paths —
/catalogue/datasets(dataset listing),/ids/data/download(anonymous zip download), plus/map(PANET→ESRFET mapping) and/health— for machine clients, withx-*semantic annotations on its OpenAPI contract. - An ELN schema,
DatasetSearchRequest, that lets a user describe a catalogue search (synchrotron, technique term, date range, instrument) as a NOMAD entry; saving the entry runs the search and stores the matched datasets back into it. Each matched dataset can then be downloaded — anonymously, optionally filtered by file extension — via a "Download Files" action, and (with thenexusextra installed) each downloaded raw.h5is auto-converted to a NeXusNXxasentry.
Both share the same underlying domain logic (catalogue/icat.py,
catalogue/ontology.py, catalogue/search.py), which has no FastAPI dependency
and is called directly by each entry point — never over HTTP loopback.
How-to guides¶
How-to guides provide step-by-step instructions for a wide range of tasks, with the overarching topics: