Skip to content

Commit 33fc441

Browse files
committed
Merge remote-tracking branch 'upstream/main' into fairmat-2024-mpes
2 parents 88ce3e6 + cd41cf2 commit 33fc441

File tree

4 files changed

+188
-21
lines changed

4 files changed

+188
-21
lines changed

base_classes/NXobject.nxdl.xml

Lines changed: 166 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,170 @@
3030
This is the base object of NeXus
3131
</doc>
3232
<!--attribute name="name"><doc>name of instance</doc></attribute-->
33-
</definition>
33+
<field name="identifierNAME" type="NX_CHAR" nameType="partial">
34+
<doc>
35+
An identifier for a (persistent) resource.
36+
37+
An identifier, provided by some authority, that has been assigned to an
38+
object described by this ``NXobject``. To be useful, the identifier
39+
must not be reassigned to a different real-world object. It is typical for
40+
there to be some mechanism to resolve an identifier, obtaining metadata
41+
about the object. Identifiers for which some guarantees exist regarding
42+
this resolution process are called persistent identifiers.
43+
Persistent identifiers are also known as PIDs.
44+
</doc>
45+
<attribute name="type" type="NX_CHAR">
46+
<doc>
47+
The type of identifier used.
48+
49+
It is recommended to use the most specific type when describing the identifier.
50+
51+
For example, all IGSNs (see below) are DOIs and all DOIs are Handles; however, an IGSN should have type IGSN (and not DOI or Hdl).
52+
Similarly, an ARK, Purl, ORCID and ROR identifiers should have their corresponding types and should not use the more generic URL identifier.
53+
</doc>
54+
<enumeration>
55+
<item value="ARK">
56+
<doc>
57+
Archival Resource Key.
58+
59+
An ARK is a Uniform Resource Identifier (URI) designed to support long-term access to a variety of information objects.
60+
61+
Syntax: https://NMA/ark:/NAAN/Name[Qualifier]. Brackets indicate optional elements.
62+
Example: https://example.org/ark:/12345/abcde
63+
</doc>
64+
</item>
65+
<item value="DOI">
66+
<doc>
67+
Digital Object Identifier.
68+
69+
A DOI is a unique alphanumeric string used to identify digital content. It consists of a prefix and a suffix, separated by a slash.
70+
71+
Syntax: 10.XXXX/XXXXXX
72+
Example: 10.1107/S1600576714027575
73+
</doc>
74+
</item>
75+
<item value="Hdl">
76+
<doc>
77+
A handle is a unique identifier that consists of a prefix indicating the naming authority and a suffix representing the local name
78+
of a resource.
79+
80+
A handle is a unique identifier used to facilitate the identification and management of digital objects. It is composed of a prefix that
81+
indicates the naming authority and a suffix that specifies the resource's local name.
82+
83+
This refers specifically to an ID in the Handle system operated by the Corporation for National Research Initiatives (CNRI).
84+
85+
Syntax: prefix/identifier
86+
Example: 123456789/abc123
87+
</doc>
88+
</item>
89+
<item value="IGSN">
90+
<doc>
91+
International Generic Sample Number.
92+
93+
The IGSN is a unique identifier assigned to a specific sample or specimen in the context of scientific research.
3494

95+
Since 2021, IGSNs are issued by DataCite, meaning that there are now DataCite-issued DOIs for all IGSNs,
96+
including those historical IGSNs issued beforehand. Therefore, the syntax is the same as for DOIs.
97+
98+
Syntax: 10.XXXX/XXXXXX
99+
Example: 10.1107/S1600576714027575
100+
</doc>
101+
</item>
102+
<item value="ISNI">
103+
<doc>
104+
ISNI is an ISO standard to uniquely identify individuals and organizations involved in creative work, including pseudonyms
105+
and other public personas.
106+
107+
An ISNI-ID is made up of 16 digits, the last character being a check character. The check character may be either a decimal digit
108+
or the character “X”.
109+
110+
A URL can be generated from the ISNI ID by combining it with the prefix https://isni.org/isni/, resulting in
111+
https://isni.org/isni/{ISNI-ID}.
112+
113+
Syntax: 16 base-10 digits stored without any spaces.
114+
Example: 0000000121032683
115+
</doc>
116+
</item>
117+
<item value="ISSN">
118+
<doc>
119+
International Standard Serial Number
120+
121+
An ISSN is an 8-digit unique identifier used to distinguish a serial publication, whether in print or electronic form.
122+
The last character (a digit or 'X') serves as a check character, making the ISSN uniquely defined by its first seven digits.
123+
124+
Syntax: NNNN-NNNC, where N a decimal digit character (i.e., in the set {0,1,2,...,9}), and C is in {0,1,2,...,9,X}
125+
Example: 1234-5678 or 1234-567X
126+
</doc>
127+
</item>
128+
<item value="ISSN-L">
129+
<doc>
130+
Linking ISSN
131+
132+
The linking ISSN, or ISSN-L, is a specific ISSN that groups the different media of the same serial publication.
133+
134+
Syntax: NNNN-NNNC, where N a decimal digit character (i.e., in the set {0,1,2,...,9}), and C is in {0,1,2,...,9,X}
135+
Example: 1234-5678 or 1234-567X
136+
</doc>
137+
</item>
138+
<item value="ORCID">
139+
<doc>
140+
Open Researcher and Contributor identifier.
141+
142+
ORCID provides a free and persistent identifier that uniquely distinguishes authors and contributors in scientific research.
143+
144+
Syntax: https://orcid.org/XXXX-XXXX-XXXX-XXXX
145+
Example: https://orcid.org/0000-0002-1825-0097
146+
</doc>
147+
</item>
148+
<item value="PURL">
149+
<doc>
150+
Persistent Uniform Resource Locator.
151+
152+
A Persistent Uniform Resource Locator (PURL) is a type of URL designed to provide a stable, long-term reference to a web
153+
resource by using a resolver to redirect users to the resource's current location, even if it moves over time.
154+
155+
A PURL has three parts: (1) a protocol, (2) a resolver address, and (3) a name.
156+
157+
Syntax: https://purl.org/foo/bar
158+
Example: https://purl.org/dc/elements/1.1/title
159+
</doc>
160+
</item>
161+
<item value="ROR">
162+
<doc>
163+
Research Organization Registry
164+
165+
A ROR ID is a globally unique identifier for research organizations, enabling unambiguous linking of institutions across systems.
166+
167+
Syntax: https://ror.org/{ROR-ID}
168+
Example: https://ror.org/052gg0110
169+
</doc>
170+
</item>
171+
<item value="URL">
172+
<doc>
173+
Uniform Resource Locator
174+
175+
Also known as web address, a URL is the address used to access a resource on the internet,
176+
specifying its location and the protocol to retrieve it.
177+
178+
Syntax: scheme://domain:port/path?query_string#fragment_id
179+
Example: https://www.example.com/about
180+
</doc>
181+
</item>
182+
<item value="URN">
183+
<doc>
184+
Uniform Resource Name
185+
186+
A URN is a unique, persistent identifier for a resource regardless of where it is stored.
187+
188+
It is recommended that identifiers with more specific type attribute (such as DOI or ISSN) values should not be stored as a URN,
189+
even when this is valid. As an example, the URN doi:10.1107/S1600576714027575 is a valid URN-based representation for the DOI
190+
10.1107/S1600576714027575, but it is recommended to use type="DOI" in this case.
191+
192+
Syntax: urn:&lt;namespace&gt;:&lt;namespace-specific-string&gt;. The leading urn: sequence is case-insensitive.
193+
Example: urn:isbn:0000000000000
194+
</doc>
195+
</item>
196+
</enumeration>
197+
</attribute>
198+
</field>
199+
</definition>

manual/source/datarules.rst

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -198,20 +198,22 @@ the prefixes reserved by NeXus.
198198
reserved prefixes; PDBX_
199199
reserved prefixes; SAS_
200200
reserved prefixes; SILX_
201-
202-
============ ================== ============================================ =============================================================
203-
prefix use meaning URL
204-
============ ================== ============================================ =============================================================
205-
``BLUESKY_`` attributes reserved for use by Bluesky project https://blueskyproject.io
206-
``DECTRIS_`` attributes, fields reserved for use by Dectris https://www.dectris.com
207-
``IDF_`` attributes reserved for use by pulsedTD Muon definition https://www.isis.stfc.ac.uk/Pages/nexus-definition-v27924.pdf
208-
``NDAttr`` attributes reserved for use by EPICS area detector https://github.com/areaDetector
209-
``NX`` NXDL class for the class names used with NeXus groups https://www.nexusformat.org
210-
``NX_`` attributes reserved for use by NeXus https://www.nexusformat.org
211-
``PDBX_`` attributes reserved for the US protein data bank https://www.rcsb.org
212-
``SAS_`` attributes reserved for use by canSAS https://www.cansas.org
213-
``SILX_`` attributes reserved for use by silx https://www.silx.org
214-
============ ================== ============================================ =============================================================
201+
reserved prefixes; identifier
202+
203+
============== ================== ============================================ =============================================================
204+
prefix use meaning URL
205+
============== ================== ============================================ =============================================================
206+
``BLUESKY_`` attributes reserved for use by Bluesky project https://blueskyproject.io
207+
``DECTRIS_`` attributes, fields reserved for use by Dectris https://www.dectris.com
208+
``IDF_`` attributes reserved for use by pulsedTD Muon definition https://www.isis.stfc.ac.uk/Pages/nexus-definition-v27924.pdf
209+
``NDAttr`` attributes reserved for use by EPICS area detector https://github.com/areaDetector
210+
``NX`` NXDL class for the class names used with NeXus groups https://www.nexusformat.org
211+
``NX_`` attributes reserved for use by NeXus https://www.nexusformat.org
212+
``PDBX_`` attributes reserved for the US protein data bank https://www.rcsb.org
213+
``SAS_`` attributes reserved for use by canSAS https://www.cansas.org
214+
``SILX_`` attributes reserved for use by silx https://www.silx.org
215+
``identifier`` fields reserved for unique identfier in groups -
216+
============== ================== ============================================ =============================================================
215217

216218
.. index:: ! reserved suffixes
217219

manual/source/examples/epics/attributes-reformatted.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,13 @@
1717
description="Image counter"/>
1818
<Attribute name="calc1_val"
1919
type="EPICS_PV"
20-
source="prj:userCalc1.VAL"
21-
datatype="DBR_NATIVE"
20+
source="$(P)userCalc1.VAL"
21+
dbrtype="DBR_NATIVE"
2222
description="some calculation result"/>
2323
<Attribute name="calc2_val"
2424
type="EPICS_PV"
25-
source="prj:userCalc2.VAL"
26-
datatype="DBR_NATIVE"
25+
source="$(P)userCalc2.VAL"
26+
dbrtype="DBR_NATIVE"
2727
description="another calculation result"/>
2828
<Attribute name="MaxSizeX"
2929
type="PARAM"

manual/source/examples/epics/attributes.xml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
>
77
<Attribute name="AcquireTime" type="EPICS_PV" source="13SIM1:cam1:AcquireTime" dbrtype="DBR_NATIVE" description="Camera acquire time"/>
88
<Attribute name="ImageCounter" type="PARAM" source="ARRAY_COUNTER" datatype="INT" description="Image counter"/>
9-
<Attribute name="calc1_val" type="EPICS_PV" source="prj:userCalc1.VAL" datatype="DBR_NATIVE" description="some calculation result"/>
10-
<Attribute name="calc2_val" type="EPICS_PV" source="prj:userCalc2.VAL" datatype="DBR_NATIVE" description="another calculation result"/>
9+
<Attribute name="calc1_val" type="EPICS_PV" source="$(P)userCalc1.VAL" dbrtype="DBR_NATIVE" description="some calculation result"/>
10+
<Attribute name="calc2_val" type="EPICS_PV" source="$(P)userCalc2.VAL" dbrtype="DBR_NATIVE" description="another calculation result"/>
1111
<Attribute name="MaxSizeX" type="PARAM" source="MAX_SIZE_X" datatype="INT" description="Detector X size"/>
1212
<Attribute name="MaxSizeY" type="PARAM" source="MAX_SIZE_Y" datatype="INT" description="Detector Y size"/>
1313
<Attribute name="CameraModel" type="PARAM" source="MODEL" datatype="STRING" description="Camera model"/>

0 commit comments

Comments
 (0)