[NeXus-committee] Next DECTRIS Summary

Mark Koennecke Mark.Koennecke at psi.ch
Wed Jan 23 07:21:26 GMT 2013


Hi,

On 01/23/2013 12:40 AM, Pete R Jemian wrote:
> Armando is correct.
>
> On 01/22/2013 02:58 AM, "V. Armando Solé" wrote:
>
>> ... It seems logical that if NXdata is a group
>> defining a plot, the attributes to define the plot belong to the group
>> and not to the datasets inside (kudos to the guys that came out with
>> that idea). ...
>
> "An important motivation for the design of NeXus was to simplify the 
> creation of a default plot view." 
> (http://download.nexusformat.org/doc/html/motivations.html#motivations-for-the-nexus-standard-in-the-scientific-community)
>
> "NXdata is used to identify the default plottable data." 
> (http://download.nexusformat.org/doc/html/design.html#nexus-base-classes)
>
> Listen to these words; they are fundamental to this discussion.
>
> The discussion has been to make the NeXus standard _do as we say_, so 
> that it is the NXdata group attributes that specify the default plot.
>
> In our current standard, we have it different where it is the dataset 
> attributes that seem to specify the default plot.  That fails for 
> some.  The data from DECTRIS point out one such case.  To fix what is 
> now obviously a broken condition, we must change the NeXus standard 
> and use the NXdata group to identify the plottable data.
>
> The change discussed will simplify the procedure to find the plottable 
> data.  Find the current procedure at this URL: 
> http://download.nexusformat.org/doc/html/datarules.html#find-the-plottable-data. 
>  Here's the revision to the simpler method
>
> 1. Open the first top level NeXus group with class ``NXentry``.
>
> 2. Open the first NeXus group with class ``NXdata``.
>
> 3. The default plottable dataset is named in the
>    *plot* attribute (such as ``plot="data"`` to plot
>    the dataset named *data*).
>
> 4. If there is no such attribute (indicating a data file written
>    to an older version of the NeXus standard), ...
>
> ...
>
> And while we are at it...
>
> We should also move the specification of the dimension scales from the 
> datasets to the NXdata group, as well.  Same justification as above.
>
> We should also have an attribute on the NXentry group to indicate 
> which NXdata should be selected for the default plot, if several 
> NXdata groups are present.  Then selection of which NXdata in step 2 
> above becomes certain.  At present, it is not clear which NXdata will 
> be presented as the "first" group.
>
So, we are at this again. The current situation is a result of some 
history. This is no reason not to
change it but it may be worth to understand it:

- At the time when the signal=1 stuff was invented we had HDF-4 and no 
group attributes
- At the same time, there were serious issues with dimension scales in 
HDF. The worst being that there
   was just one global namespace for them. So you could not have two 
different time_binnings in the same
   file. Which was a bit of a killer.

So, if we think about this:

- May be we need to look at HDF-5 dimensions scales again for attaching 
axes to data. They have become way
   better.
- We should mark the old way as deprecated
- Someone ought to write a python script which magically converts old 
files to the new way of denoting
   plottable data.
- We should vote on this.

  Regards,

             Mark


> Regards,
>    Pete
>
> _______________________________________________
> NeXus-committee mailing list
> NeXus-committee at nexusformat.org
> http://lists.nexusformat.org/mailman/listinfo/nexus-committee



More information about the NeXus-committee mailing list