Skip to content

Commit

Permalink
Merge pull request #52 from FAIRmat-NFDI/mpes-refactor
Browse files Browse the repository at this point in the history
NXmpes refactoring
  • Loading branch information
lukaspie authored Jan 15, 2024
2 parents 64ddaf6 + 5ea63b4 commit 7977c7e
Show file tree
Hide file tree
Showing 46 changed files with 9,107 additions and 2,001 deletions.
862 changes: 455 additions & 407 deletions base_classes/NXdata.nxdl.xml

Large diffs are not rendered by default.

27 changes: 10 additions & 17 deletions base_classes/NXdetector.nxdl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2 of the License, or (at your option) any later version.
# version 3 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
Expand Down Expand Up @@ -72,14 +72,12 @@
<dimensions rank="1">
<dim index="1" value="tof+1"/>
</dimensions>
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="3"/>
</enumeration>
</attribute>
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="1"/>
</enumeration>
Expand Down Expand Up @@ -173,14 +171,12 @@
<dim index="1" value="i"/>
<dim index="2" value="j"/>
</dimensions>
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="1"/>
</enumeration>
</attribute>
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="1"/>
</enumeration>
Expand All @@ -200,14 +196,12 @@
<dim index="1" value="i"/>
<dim index="2" value="j"/>
</dimensions>
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="2"/>
</enumeration>
</attribute>
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="1"/>
</enumeration>
Expand All @@ -227,14 +221,12 @@
<dim index="1" value="i"/>
<dim index="2" value="j"/>
</dimensions>
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="3"/>
</enumeration>
</attribute>
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
">
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
<enumeration>
<item value="1"/>
</enumeration>
Expand Down Expand Up @@ -973,6 +965,7 @@
Number of raw active elements in each dimension. Important for swept scans.
</doc>
</field>
<group type="NXfabrication"/>
<group type="NXdata">
<doc>
raw data output from the detector
Expand Down
80 changes: 51 additions & 29 deletions base_classes/NXenvironment.nxdl.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl" ?>
<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
<!--
# NeXus - Neutron and X-ray Common Data Format
#
# Copyright (C) 2008-2022 NeXus International Advisory Committee (NIAC)
#
#
# Copyright (C) 2014-2024 NeXus International Advisory Committee (NIAC)
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
Expand All @@ -21,26 +21,36 @@
#
# For further information, see http://www.nexusformat.org
-->
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" category="base"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd"
name="NXenvironment"
type="group" extends="NXobject">
<doc>Parameters for controlling external conditions</doc>
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="base" type="group" name="NXenvironment" extends="NXobject" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<doc>
Parameters for controlling external conditions
</doc>
<field name="name">
<doc>Apparatus identification code/model number; e.g. OC100 011</doc>
<doc>
Apparatus identification code/model number; e.g. OC100 011
</doc>
</field>
<field name="short_name">
<doc>Alternative short name, perhaps for dashboard display like a present Seblock name</doc>
<doc>
Alternative short name, perhaps for dashboard display like a present Seblock
name
</doc>
</field>
<field name="type">
<doc>Type of apparatus. This could be the SE codes in scheduling database; e.g. OC/100</doc>
<doc>
Type of apparatus. This could be the SE codes in scheduling database; e.g.
OC/100
</doc>
</field>
<field name="description">
<doc>Description of the apparatus; e.g. 100mm bore orange cryostat with Roots pump</doc>
<doc>
Description of the apparatus; e.g. 100mm bore orange cryostat with Roots pump
</doc>
</field>
<field name="program">
<doc>Program controlling the apparatus; e.g. LabView VI name</doc>
<doc>
Program controlling the apparatus; e.g. LabView VI name
</doc>
</field>
<group name="position" type="NXgeometry">
<doc>
Expand All @@ -50,25 +60,37 @@
</group>
<field name="depends_on" type="NX_CHAR">
<doc>
NeXus positions components by applying a set of translations and rotations
to apply to the component starting from 0, 0, 0. The order of these operations
is critical and forms what NeXus calls a dependency chain. The depends_on
field defines the path to the top most operation of the dependency chain or the
string "." if located in the origin. Usually these operations are stored in a
NXtransformations group. But NeXus allows them to be stored anywhere.
NeXus positions components by applying a set of translations and rotations
to apply to the component starting from 0, 0, 0. The order of these operations
is critical and forms what NeXus calls a dependency chain. The depends_on
field defines the path to the top most operation of the dependency chain or the
string "." if located in the origin. Usually these operations are stored in a
NXtransformations group. But NeXus allows them to be stored anywhere.
</doc>
</field>
<group type="NXtransformations" minOccurs="0">
<doc>
This is the group recommended for holding the chain of translation
and rotation operations necessary to position the component within
the instrument. The dependency chain may however traverse similar groups in
other component groups.
This is the group recommended for holding the chain of translation
and rotation operations necessary to position the component within
the instrument. The dependency chain may however traverse similar groups in
other component groups.
</doc>
</group>
<group type="NXnote">
<doc>Additional information, LabView logs, digital photographs, etc</doc>
<doc>
Additional information, LabView logs, digital photographs, etc
</doc>
</group>
<group type="NXactuator">
<doc>
Any actuator used to control the environment. This can be linked to an actuator
defined in an NXinstrument instance.
</doc>
</group>
<group type="NXsensor">
<doc>
Any sensor used to monitor the environment. This can be linked to a sensor
defined in an NXinstrument instance.
</doc>
</group>
<group type="NXsensor"/>
</definition>

37 changes: 8 additions & 29 deletions base_classes/NXinstrument.nxdl.xml
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
<!--
# NeXus - Neutron and X-ray Common Data Format
#
# Copyright (C) 2014-2022 NeXus International Advisory Committee (NIAC)
#
#
# Copyright (C) 2014-2024 NeXus International Advisory Committee (NIAC)
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
Expand Down Expand Up @@ -42,31 +42,7 @@
</doc>
</attribute>
</field>
<field name="energy_resolution" type="NX_FLOAT" units="NX_ENERGY">
<doc>
Energy resolution of the experiment (FWHM or gaussian broadening)
</doc>
</field>
<field name="momentum_resolution" type="NX_FLOAT" units="NX_WAVENUMBER">
<doc>
Momentum resolution of the experiment (FWHM)
</doc>
</field>
<field name="angular_resolution" type="NX_FLOAT" units="NX_ANGLE">
<doc>
Angular resolution of the experiment (FWHM)
</doc>
</field>
<field name="spatial_resolution" type="NX_FLOAT" units="NX_LENGTH">
<doc>
Spatial resolution of the experiment (Airy disk radius)
</doc>
</field>
<field name="temporal_resolution" type="NX_FLOAT" units="NX_TIME">
<doc>
Temporal resolution of the experiment (FWHM)
</doc>
</field>
<group type="NXactuator"/>
<group type="NXaperture"/>
<group type="NXattenuator"/>
<group type="NXbeam"/>
Expand All @@ -80,6 +56,7 @@
<group type="NXdetector_group"/>
<group type="NXdisk_chopper"/>
<group type="NXevent_data"/>
<group type="NXfabrication"/>
<group type="NXfermi_chopper"/>
<group type="NXfilter"/>
<group type="NXflipper"/>
Expand All @@ -90,6 +67,8 @@
<group type="NXmonochromator"/>
<group type="NXpolarizer"/>
<group type="NXpositioner"/>
<group type="NXsensor"/>
<group type="NXresolution"/>
<group type="NXsource"/>
<group type="NXtransformations" name="DIFFRACTOMETER"/>
<group type="NXvelocity_selector"/>
Expand Down
6 changes: 6 additions & 0 deletions base_classes/NXsample.nxdl.xml
Original file line number Diff line number Diff line change
Expand Up @@ -486,6 +486,12 @@
This group describes the shape of the sample
</doc>
</group>
<field name="physical_form">
<doc>
Physical form of the sample material.
Examples include single crystal, foil, pellet, powder, thin film, disc, foam, gas, liquid, amorphous.
</doc>
</field>
<group type="NXsingle_crystal">
<doc>
If the sample is a single crystal, add description of single crystal and unit
Expand Down
Loading

0 comments on commit 7977c7e

Please sign in to comment.