/
NXsensor_scan.nxdl.xml
198 lines (193 loc) · 9.45 KB
/
NXsensor_scan.nxdl.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
<?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-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
# 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
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# For further information, see http://www.nexusformat.org
-->
<definition xmlns="http://definition.nexusformat.org/nxdl/3.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" category="application" name="NXsensor_scan" extends="NXobject" type="group" xsi:schemaLocation="http://definition.nexusformat.org/nxdl/3.1 ../nxdl.xsd">
<symbols>
<doc>
Variables used to set a common size for collected sensor data.
</doc>
<symbol name="N_scanpoints">
<doc>
The number of scan points measured in this scan.
</doc>
</symbol>
</symbols>
<doc>
Application definition for a generic scan using sensors.
In this application definition, times should be specified always together
with an UTC offset.
</doc>
<group type="NXentry">
<field name="definition" type="NX_CHAR">
<attribute name="version"/>
<enumeration>
<item value="NXsensor_scan"/>
</enumeration>
</field>
<field name="experiment_identifier" type="NX_CHAR" recommended="true"/>
<field name="experiment_description" type="NX_CHAR"/>
<field name="start_time" type="NX_DATE_TIME" recommended="true"/>
<field name="end_time" type="NX_DATE_TIME" recommended="true"/>
<group type="NXprocess">
<doc>
Define the program that was used to generate the results file(s)
with measured data and metadata.
</doc>
<field name="program" type="NX_CHAR">
<doc>
Commercial or otherwise defined given name of the program
(or a link to the instrument software).
</doc>
<attribute name="version">
<doc>
Either version with build number, commit hash, or description of an
(online) repository where the source code of the program and build
instructions can be found so that the program can be configured in
such a way that result files can be created ideally in a
deterministic manner.
</doc>
</attribute>
<attribute name="program_url">
<doc>
Website of the software.
</doc>
</attribute>
</field>
</group>
<group type="NXuser">
<doc>
Contact information of at least the user of the instrument or the
investigator who performed this experiment. Adding multiple users if
relevant is recommended.
</doc>
<field name="name" type="NX_CHAR">
<doc>
Name of the user.
</doc>
</field>
<field name="affiliation" type="NX_CHAR" recommended="true">
<doc>
Name of the affiliation of the user at the point in time when
the experiment was performed.
</doc>
</field>
<field name="address" type="NX_CHAR" recommended="true">
<doc>
Full address (street, street number, ZIP, city, country)
of the user's affiliation.
</doc>
</field>
<field name="email" type="NX_CHAR" recommended="true">
<doc>
Email address of the user.
</doc>
</field>
<field name="orcid" type="NX_CHAR" recommended="true">
<doc>
Author ID defined by https://orcid.org/.
</doc>
</field>
<field name="telephone_number" type="NX_CHAR" recommended="true">
<doc>
Official telephone number of the user.
</doc>
</field>
</group>
<group type="NXinstrument">
<group type="NXenvironment">
<doc>
Describes an environment setup for the experiment.
All the setting values of the independently scanned controllers are listed under corresponding
NXsensor groups. Similarly, seperate NXsensor groups are used to store the readings from each
measurement sensor.
For example, in a temperature-dependent IV measurement, the temperature and voltage must be
present as independently scanned controllers and the current sensor must also be present with
its readings.
</doc>
<group type="NXsensor">
<group type="NXdata" recommended="true">
<doc>
Plot of measured signal as a function of the timestamp of when they have been
acquired is also possible.
</doc>
</group>
<field name="value" type="NX_FLOAT" units="NX_ANY">
<doc>
For each point in the scan space, either the nominal setpoint of an independently scanned controller
or a representative average value of a measurement sensor is registered.
The length of each sensor's data value array stored in this group should be equal to the number of scan points
probed in this scan. For every scan point [N], the corresponding sensor value can be picked from index [N].
This allows the scan to be made in any order as the user describes above in the experiment. We get matching
values simply using the index of the scan point.
</doc>
<dimensions rank="1">
<dim index="1" value="N_scanpoints"/>
</dimensions>
</field>
<field name="value_timestamp" type="NX_DATE_TIME" recommended="true">
<doc>
Timestamp for when the values provided in the value field were registered.
Individual readings can be stored with their timestamps under value_log. This is to timestamp
the nominal setpoint or average reading values listed above in the value field.
</doc>
</field>
<field name="run_control" type="NX_CHAR" recommended="true">
<attribute name="description">
<doc>
Free-text describing the data acquisition control: an internal
sweep using the built-in functionality of the controller device,
or a set/wait/read/repeat mechanism.
</doc>
</attribute>
</field>
<field name="calibration_time" type="NX_DATE_TIME">
<doc>
ISO8601 datum when calibration was last performed
before this measurement. UTC offset should be specified.
</doc>
</field>
</group>
<group type="NXpid"/>
<field name="independent_controllers">
<doc>
A list of names of NXsensor groups used as independently scanned controllers.
</doc>
</field>
<field name="measurement_sensors">
<doc>
A list of names of NXsensor groups used as measurement sensors.
</doc>
</field>
</group>
</group>
<group type="NXsample">
<field name="name" type="NX_CHAR"/>
</group>
<group type="NXdata">
<doc>
A scan specific representation of the measured signals as a function of the independently controlled environment settings.
Plot of every measured signal as a function of the timestamp of when they have been acquired is also possible.
</doc>
</group>
</group>
</definition>