From b97c2bc7724aa5871adac4fbb83611c9e8e16b72 Mon Sep 17 00:00:00 2001
From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>
Date: Thu, 17 Apr 2025 15:15:27 +0200
Subject: [PATCH 1/3] add target attribute to NXobject using a new field
super-type
---
base_classes/NXobject.nxdl.xml | 40 ++++++++++++++++++++++++++++++++++
nxdlTypes.xsd | 26 ++++++++++++++++++++++
2 files changed, 66 insertions(+)
diff --git a/base_classes/NXobject.nxdl.xml b/base_classes/NXobject.nxdl.xml
index c6ef1ce7d0..6fcaa91ca3 100644
--- a/base_classes/NXobject.nxdl.xml
+++ b/base_classes/NXobject.nxdl.xml
@@ -64,6 +64,46 @@
Boolean mask of FIELDNAME values. The value is masked if set to 1.
+
+
+ This is a generic field that defines the attributes that all fields can have.
+
+
+
+ This attribute can be used to describe that this field is connected to another field.
+ For links, this must be set to the path of the target of the link.
+
+ Declares the absolute path of an existing field or group.
+
+ Matching regular expression::
+
+ (/[a-zA-Z_][\w_]*(:[a-zA-Z_][\w_]*)?)+
+
+ For example, given a ``/entry/instrument/detector/polar_angle`` field which is to be
+ connected/linked to /entry/data/polar_angle`` in an ``NXdata`` group, this would be the
+ NeXus data file structure::
+
+ /: NeXus data file
+ /entry:NXentry
+ /data:NXdata
+ /polar_angle:NX_NUMBER
+ @target="/entry/instrument/detector/polar_angle"
+ /instrument:NXinstrument
+ /detector:NXdetector
+ /polar_angle:NX_NUMBER
+ @target="/entry/instrument/detector/polar_angle"
+
+
+
+
+
+ This attribute can be used to describe that this field is connected to another field.
+ For links, this must be set to the path of the target of the link.
+
+ See :ref:`FIELDNAME/@target <//NXobject/FIELDNAME@target-attribute>` for more information
+ how to use this attribute.
+
+
An identifier for a (persistent) resource.
diff --git a/nxdlTypes.xsd b/nxdlTypes.xsd
index b9c972571d..016f60ea38 100644
--- a/nxdlTypes.xsd
+++ b/nxdlTypes.xsd
@@ -454,6 +454,7 @@
any valid NeXus field or attribute type
+
+
+
+ The union of all nxdl types. To be used if the type cannot be defined.
+
+
+
+
+
From f7a04ded2df4db935cfab81b929a04fb57df0bfc Mon Sep 17 00:00:00 2001
From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>
Date: Thu, 17 Apr 2025 15:51:40 +0200
Subject: [PATCH 2/3] fix target in groups
---
base_classes/NXobject.nxdl.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/base_classes/NXobject.nxdl.xml b/base_classes/NXobject.nxdl.xml
index 6fcaa91ca3..83d5d8de1a 100644
--- a/base_classes/NXobject.nxdl.xml
+++ b/base_classes/NXobject.nxdl.xml
@@ -97,7 +97,7 @@
- This attribute can be used to describe that this field is connected to another field.
+ This attribute can be used to describe that this group is connected to another group.
For links, this must be set to the path of the target of the link.
See :ref:`FIELDNAME/@target <//NXobject/FIELDNAME@target-attribute>` for more information
From f4c125ff5c7fce9a45bbbebe3f45f3b918f3b00e Mon Sep 17 00:00:00 2001
From: Lukas Pielsticker <50139597+lukaspie@users.noreply.github.com>
Date: Thu, 17 Apr 2025 16:02:22 +0200
Subject: [PATCH 3/3] fix links
---
base_classes/NXobject.nxdl.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/base_classes/NXobject.nxdl.xml b/base_classes/NXobject.nxdl.xml
index 83d5d8de1a..0ff8449f09 100644
--- a/base_classes/NXobject.nxdl.xml
+++ b/base_classes/NXobject.nxdl.xml
@@ -100,7 +100,7 @@
This attribute can be used to describe that this group is connected to another group.
For links, this must be set to the path of the target of the link.
- See :ref:`FIELDNAME/@target <//NXobject/FIELDNAME@target-attribute>` for more information
+ See :ref:`FIELDNAME/@target </NXobject/FIELDNAME@target-attribute>` for more information
how to use this attribute.