Skip to content

Commit 7977c7e

Browse files
authored
Merge pull request #52 from FAIRmat-NFDI/mpes-refactor
NXmpes refactoring
2 parents 64ddaf6 + 5ea63b4 commit 7977c7e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+9107
-2001
lines changed

base_classes/NXdata.nxdl.xml

Lines changed: 455 additions & 407 deletions
Large diffs are not rendered by default.

base_classes/NXdetector.nxdl.xml

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
# This library is free software; you can redistribute it and/or
99
# modify it under the terms of the GNU Lesser General Public
1010
# License as published by the Free Software Foundation; either
11-
# version 2 of the License, or (at your option) any later version.
11+
# version 3 of the License, or (at your option) any later version.
1212
#
1313
# This library is distributed in the hope that it will be useful,
1414
# but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -72,14 +72,12 @@
7272
<dimensions rank="1">
7373
<dim index="1" value="tof+1"/>
7474
</dimensions>
75-
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
76-
">
75+
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
7776
<enumeration>
7877
<item value="3"/>
7978
</enumeration>
8079
</attribute>
81-
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
82-
">
80+
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
8381
<enumeration>
8482
<item value="1"/>
8583
</enumeration>
@@ -173,14 +171,12 @@
173171
<dim index="1" value="i"/>
174172
<dim index="2" value="j"/>
175173
</dimensions>
176-
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
177-
">
174+
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
178175
<enumeration>
179176
<item value="1"/>
180177
</enumeration>
181178
</attribute>
182-
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
183-
">
179+
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
184180
<enumeration>
185181
<item value="1"/>
186182
</enumeration>
@@ -200,14 +196,12 @@
200196
<dim index="1" value="i"/>
201197
<dim index="2" value="j"/>
202198
</dimensions>
203-
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
204-
">
199+
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
205200
<enumeration>
206201
<item value="2"/>
207202
</enumeration>
208203
</attribute>
209-
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
210-
">
204+
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
211205
<enumeration>
212206
<item value="1"/>
213207
</enumeration>
@@ -227,14 +221,12 @@
227221
<dim index="1" value="i"/>
228222
<dim index="2" value="j"/>
229223
</dimensions>
230-
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
231-
">
224+
<attribute name="axis" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
232225
<enumeration>
233226
<item value="3"/>
234227
</enumeration>
235228
</attribute>
236-
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436
237-
">
229+
<attribute name="primary" type="NX_POSINT" deprecated="see: https://github.com/nexusformat/definitions/issues/436">
238230
<enumeration>
239231
<item value="1"/>
240232
</enumeration>
@@ -973,6 +965,7 @@
973965
Number of raw active elements in each dimension. Important for swept scans.
974966
</doc>
975967
</field>
968+
<group type="NXfabrication"/>
976969
<group type="NXdata">
977970
<doc>
978971
raw data output from the detector

base_classes/NXenvironment.nxdl.xml

Lines changed: 51 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
<?xml version="1.0" encoding="UTF-8"?>
2-
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl" ?>
1+
<?xml version='1.0' encoding='UTF-8'?>
2+
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
33
<!--
44
# NeXus - Neutron and X-ray Common Data Format
5-
#
6-
# Copyright (C) 2008-2022 NeXus International Advisory Committee (NIAC)
7-
#
5+
#
6+
# Copyright (C) 2014-2024 NeXus International Advisory Committee (NIAC)
7+
#
88
# This library is free software; you can redistribute it and/or
99
# modify it under the terms of the GNU Lesser General Public
1010
# License as published by the Free Software Foundation; either
@@ -21,26 +21,36 @@
2121
#
2222
# For further information, see http://www.nexusformat.org
2323
-->
24-
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" category="base"
25-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
26-
xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd"
27-
name="NXenvironment"
28-
type="group" extends="NXobject">
29-
<doc>Parameters for controlling external conditions</doc>
24+
<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">
25+
<doc>
26+
Parameters for controlling external conditions
27+
</doc>
3028
<field name="name">
31-
<doc>Apparatus identification code/model number; e.g. OC100 011</doc>
29+
<doc>
30+
Apparatus identification code/model number; e.g. OC100 011
31+
</doc>
3232
</field>
3333
<field name="short_name">
34-
<doc>Alternative short name, perhaps for dashboard display like a present Seblock name</doc>
34+
<doc>
35+
Alternative short name, perhaps for dashboard display like a present Seblock
36+
name
37+
</doc>
3538
</field>
3639
<field name="type">
37-
<doc>Type of apparatus. This could be the SE codes in scheduling database; e.g. OC/100</doc>
40+
<doc>
41+
Type of apparatus. This could be the SE codes in scheduling database; e.g.
42+
OC/100
43+
</doc>
3844
</field>
3945
<field name="description">
40-
<doc>Description of the apparatus; e.g. 100mm bore orange cryostat with Roots pump</doc>
46+
<doc>
47+
Description of the apparatus; e.g. 100mm bore orange cryostat with Roots pump
48+
</doc>
4149
</field>
4250
<field name="program">
43-
<doc>Program controlling the apparatus; e.g. LabView VI name</doc>
51+
<doc>
52+
Program controlling the apparatus; e.g. LabView VI name
53+
</doc>
4454
</field>
4555
<group name="position" type="NXgeometry">
4656
<doc>
@@ -50,25 +60,37 @@
5060
</group>
5161
<field name="depends_on" type="NX_CHAR">
5262
<doc>
53-
NeXus positions components by applying a set of translations and rotations
54-
to apply to the component starting from 0, 0, 0. The order of these operations
55-
is critical and forms what NeXus calls a dependency chain. The depends_on
56-
field defines the path to the top most operation of the dependency chain or the
57-
string "." if located in the origin. Usually these operations are stored in a
58-
NXtransformations group. But NeXus allows them to be stored anywhere.
63+
NeXus positions components by applying a set of translations and rotations
64+
to apply to the component starting from 0, 0, 0. The order of these operations
65+
is critical and forms what NeXus calls a dependency chain. The depends_on
66+
field defines the path to the top most operation of the dependency chain or the
67+
string "." if located in the origin. Usually these operations are stored in a
68+
NXtransformations group. But NeXus allows them to be stored anywhere.
5969
</doc>
6070
</field>
6171
<group type="NXtransformations" minOccurs="0">
6272
<doc>
63-
This is the group recommended for holding the chain of translation
64-
and rotation operations necessary to position the component within
65-
the instrument. The dependency chain may however traverse similar groups in
66-
other component groups.
73+
This is the group recommended for holding the chain of translation
74+
and rotation operations necessary to position the component within
75+
the instrument. The dependency chain may however traverse similar groups in
76+
other component groups.
6777
</doc>
6878
</group>
6979
<group type="NXnote">
70-
<doc>Additional information, LabView logs, digital photographs, etc</doc>
80+
<doc>
81+
Additional information, LabView logs, digital photographs, etc
82+
</doc>
83+
</group>
84+
<group type="NXactuator">
85+
<doc>
86+
Any actuator used to control the environment. This can be linked to an actuator
87+
defined in an NXinstrument instance.
88+
</doc>
89+
</group>
90+
<group type="NXsensor">
91+
<doc>
92+
Any sensor used to monitor the environment. This can be linked to a sensor
93+
defined in an NXinstrument instance.
94+
</doc>
7195
</group>
72-
<group type="NXsensor"/>
7396
</definition>
74-

base_classes/NXinstrument.nxdl.xml

Lines changed: 8 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
1-
<?xml version="1.0" encoding="UTF-8"?>
1+
<?xml version='1.0' encoding='UTF-8'?>
22
<?xml-stylesheet type="text/xsl" href="nxdlformat.xsl"?>
33
<!--
44
# NeXus - Neutron and X-ray Common Data Format
5-
#
6-
# Copyright (C) 2014-2022 NeXus International Advisory Committee (NIAC)
7-
#
5+
#
6+
# Copyright (C) 2014-2024 NeXus International Advisory Committee (NIAC)
7+
#
88
# This library is free software; you can redistribute it and/or
99
# modify it under the terms of the GNU Lesser General Public
1010
# License as published by the Free Software Foundation; either
@@ -42,31 +42,7 @@
4242
</doc>
4343
</attribute>
4444
</field>
45-
<field name="energy_resolution" type="NX_FLOAT" units="NX_ENERGY">
46-
<doc>
47-
Energy resolution of the experiment (FWHM or gaussian broadening)
48-
</doc>
49-
</field>
50-
<field name="momentum_resolution" type="NX_FLOAT" units="NX_WAVENUMBER">
51-
<doc>
52-
Momentum resolution of the experiment (FWHM)
53-
</doc>
54-
</field>
55-
<field name="angular_resolution" type="NX_FLOAT" units="NX_ANGLE">
56-
<doc>
57-
Angular resolution of the experiment (FWHM)
58-
</doc>
59-
</field>
60-
<field name="spatial_resolution" type="NX_FLOAT" units="NX_LENGTH">
61-
<doc>
62-
Spatial resolution of the experiment (Airy disk radius)
63-
</doc>
64-
</field>
65-
<field name="temporal_resolution" type="NX_FLOAT" units="NX_TIME">
66-
<doc>
67-
Temporal resolution of the experiment (FWHM)
68-
</doc>
69-
</field>
45+
<group type="NXactuator"/>
7046
<group type="NXaperture"/>
7147
<group type="NXattenuator"/>
7248
<group type="NXbeam"/>
@@ -80,6 +56,7 @@
8056
<group type="NXdetector_group"/>
8157
<group type="NXdisk_chopper"/>
8258
<group type="NXevent_data"/>
59+
<group type="NXfabrication"/>
8360
<group type="NXfermi_chopper"/>
8461
<group type="NXfilter"/>
8562
<group type="NXflipper"/>
@@ -90,6 +67,8 @@
9067
<group type="NXmonochromator"/>
9168
<group type="NXpolarizer"/>
9269
<group type="NXpositioner"/>
70+
<group type="NXsensor"/>
71+
<group type="NXresolution"/>
9372
<group type="NXsource"/>
9473
<group type="NXtransformations" name="DIFFRACTOMETER"/>
9574
<group type="NXvelocity_selector"/>

base_classes/NXsample.nxdl.xml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -486,6 +486,12 @@
486486
This group describes the shape of the sample
487487
</doc>
488488
</group>
489+
<field name="physical_form">
490+
<doc>
491+
Physical form of the sample material.
492+
Examples include single crystal, foil, pellet, powder, thin film, disc, foam, gas, liquid, amorphous.
493+
</doc>
494+
</field>
489495
<group type="NXsingle_crystal">
490496
<doc>
491497
If the sample is a single crystal, add description of single crystal and unit

0 commit comments

Comments
 (0)