nexusformat / definitions

Definitions of the NeXus Standard File Structure and Contents
https://manual.nexusformat.org/
Other
26 stars 56 forks source link

NXsource positioning inconsistance between NXmx and NXarpes #1248

Closed Gigarrum closed 1 year ago

Gigarrum commented 1 year ago

Problem explanation: Both application definitions contains as required a NXsource group. However on NXmx definition, the NXsource group is defined directly inside the NXentry group while on NXarpes it is defined inside the NXinstrument. (Check images below)

image (1) image

I discussed this with @prjemian (Thanks Pete!) and it seems we both agree that the correct position would be inside a NXinstrument group and not inside NXentry as by definition the NXinstrument would be the parent group from NXsource. However he added that he was not sure if "adding a NXsource group to NXmx(in effect, adding it as child of NXsubentry group) is wrong, allowed, or OK". Due to that a review on where to position the NXsource group inside the NXmx application definition seems needed.

Issue definition of done: Review the NXmx application definition structure to consider moving NXsource as part of the NXinstrument group instead of being stored directly inside the NXentry group.

prjemian commented 1 year ago

Is it allowed for NXsource to be a child of NXentry. It's not listed as a child group under NXentry's Groups cited section, but that does not rule it out.

Gigarrum commented 1 year ago

Discussed with telco: Considering Application Definitions can extend NeXus structure to better handle the specific needs, according to @sanbrock it makes more sense to NXsource to not be under NXinstruments in a MX minimal metadata requirement point of view.

That said, and considering NeXus application definition purpose, it is possible to save the NXsource information anywhere is wanted if there is softlinks pointing it to the place which NXmx requires it to be.

@sanbrock can you please review if this comment explain correctly the idea we discussed before I close this issue?