⇐ ⇒

[CF-metadata] Question from NODC about interplay of standard name modifiers, cell_methods, etc.

From: Steve Hankin <steven.c.hankin>
Date: Tue, 26 Mar 2013 08:21:41 -0700

On 3/26/2013 7:37 AM, Nan Galbraith wrote:
> Jim, I think you use an 'ancillary_variables' attribute to tie quality
> or other
> variables together.
>
> It's alarming to think people can use an unmodified standard name like
> sea_water_temperature for a variable that is in fact a standard deviation
> or an error. I'm very curious to know if this is a widespread use of cell
> methods, because it seems so ... wrong.

Hi Nan,

You are not the first to point this out.

My personal viewpoint: There's a strong case to be made that the string
assigned to the standard_name attribute, whatever it is, should
accurately describe what the variable is. If we do not follow this
principle we know that mistakes and frustrations for end users will be
the result. It will be cold comfort to blame the users and software
developers. Expanding the standard_name modifier list may provide a
solution that does not cause proliferation in the length of the standard
names list.

     - Steve

>
> Even if it's legal in CF, I wouldn't do it; I'd give this variable a
> long name only,
> and attach it to the actual sea_water_temperature (if there is such a
> variable in
> the file) via an ancillary_variable attribute.
>
> The possible misuse of data provided with a misleading standard name like
> this seems much worse than the possibility that the field could be
> overlooked
> by data discovery systems.
>
> - Nan
>
> On 3/26/13 10:06 AM, Jim Biard wrote:
>> Then why is standard deviation a cell method and standard error a
>> standard name modifier? To my mind, they both represent "analytical
>> methods that have been applied to derive the data values stored in
>> the array".
>>
>> While I'm at it, what is the correct way to provide linkage between
>> the primary data variable and the quality measure variables? Would
>> this be via an ancillary_coordinates attribute on the primary
>> variable? Or do you put an ancillary_coordinates attribute on each
>> quality measure variable that names the primary? I'm guessing the
>> first answer (if either) is right, but that method is well less
>> intuitive when browsing the file contents.
>>
>> Grace and peace,
>>
>> Jim
>>
>>
>>
>> On Mar 26, 2013, at 9:56 AM, David Hassell <d.c.hassell at reading.ac.uk
>> <mailto:d.c.hassell at reading.ac.uk>> wrote:
>>
>>> Hello,
>>>
>>> I see it a bit differently. The 'area: mean time: standard_deviation'
>>> cell methods, for example, describe analytical methods that have been
>>> applied to derive the data values stored in the array. This is not the
>>> case, it seems to me, for the standard name modifiers. The presence of
>>> a standard name modifier points to, or defines, some metadata which
>>> further describes a data variable's array (either its own array, or
>>> another's via ancillary variables).
>>>
>>> All the best,
>>>
>>> David
>>>
>>> ---- Original message from Jim Biard (09AM 26 Mar 13)
>>>
>>>> From: Jim Biard <jim.biard at noaa.gov <mailto:jim.biard at noaa.gov>>
>>>> Date: Tue, 26 Mar 2013 09:14:11 -0400
>>>> To: "cf-metadata at cgd.ucar.edu <mailto:cf-metadata at cgd.ucar.edu>"
>>>> <cf-metadata at cgd.ucar.edu <mailto:cf-metadata at cgd.ucar.edu>>
>>>> X-Mailer: Apple Mail (2.1503)
>>>> Subject: Re: [CF-metadata] Question from NODC about interplay of
>>>> standard
>>>> name modifiers, cell_methods, etc.
>>>>
>>>> This has confused and bothered me as well. There doesn't seem to
>>>> be any consistency on whether to use cell methods or standard name
>>>> modifiers for the various quality measures. Is it just that no one
>>>> has requested a modifier?
>>>>
>>>> fd
>>>>
>>>> On Mar 26, 2013, at 8:32 AM, "Kenneth S. Casey - NOAA Federal"
>>>> <kenneth.casey at noaa.gov> wrote:
>>>>
>>>>> Jonathon,
>>>>>
>>>>> Thanks. The picture is clearer now, but I think I still have a
>>>>> question or two. Let me try to summarize first, then ask the
>>>>> questions:
>>>>>
>>>>> Ok, so for example, we have the simple case of the variable
>>>>> containing the physical variable of sea water temperature:
>>>>>
>>>>> float t_an(time, depth, lat, lon) ;
>>>>> t_an:standard_name = "sea_water_temperature" ;
>>>>> t_an:long_name = "Objectively Analyzed Mean of Sea
>>>>> Water Temperature" ; // Expanded long_name following Steve's comment
>>>>> t_an:comment = "Objectively analyzed climatologies
>>>>> are the objectively interpolated mean fields for an oceanographic
>>>>> variable at standard depth levels for the World Ocean." ;
>>>>> t_an:cell_methods = "area: mean depth: mean time:
>>>>> mean" ; // added space between dimension and method, following
>>>>> Jonathan's comment
>>>>> t_an:grid_mapping = "crs" ;
>>>>> t_an:units = "degrees_celsius" ;
>>>>> t_an:FillValue = 9.96921e+36f ;
>>>>>
>>>>> And, I would point out there there are cell bounds variables as
>>>>> well for lat, lon, depth, and a climatology_bounds for
>>>>> climatological time (time axis is a climatological time axis).
>>>>> So, we have a standard name, plus cell_methods.
>>>>>
>>>>> The next case for these data is where we have a statistical value
>>>>> that is contained in the variable, but where no standard_name
>>>>> modifier exists? here is an example then for standard deviation of
>>>>> that sea water temperature:
>>>>>
>>>>> float t_sd(time, depth, lat, lon) ;
>>>>> t_an:standard_name = "sea_water_temperature" ; //
>>>>> Use the physical parameter's standard_name, following Jonathan's
>>>>> comment
>>>>> t_an:long_name = "Temporal Standard Deviation about
>>>>> the Statistical Mean Sea Water Temperature" ; // Expanded
>>>>> long_name following Steve's comment
>>>>> t_an:comment = "The temporal standard deviation
>>>>> about the statistical mean Sea Water Temperature in each
>>>>> grid-square at each standard depth level" ; // just highlighting
>>>>> changes compared to our existing draft
>>>>> t_an:cell_methods = "area: mean depth: mean time:
>>>>> standard_deviation" ; // sequence is correct I think, take
>>>>> area-depth mean first, then compute standard deviation over time
>>>>> t_an:grid_mapping = "crs" ;
>>>>> t_an:units = "degrees_celsius" ;
>>>>> t_an:FillValue = 9.96921e+36f ;
>>>>>
>>>>> Seems simple enough, though I do need to confirm with Tim that the
>>>>> variable is in fact a temporal standard deviation. Now the third
>>>>> case is where there exists a relevant standard_name modifier, for
>>>>> example, for the standard error of the mean:
>>>>>
>>>>> float t_se(time, depth, lat, lon) ;
>>>>> t_an:standard_name = "sea_water_temperature
>>>>> standard_error" ; // Use the physical parameter's standard_name
>>>>> plus modifier, following Jonathan's comment
>>>>> t_an:long_name = "Standard Error about the
>>>>> Statistical Mean Sea Water Temperature" ; // Expanded long_name
>>>>> following Steve's comment
>>>>> t_an:comment = "The standard error about the
>>>>> statistical mean Sea Water Temperature in each grid-square at each
>>>>> standard depth level" ; // just highlighting changes compared to
>>>>> our existing draft
>>>>> t_an:cell_methods = "area: mean depth: mean" ; //
>>>>> Is this correct?? Since we have a standard name modifier, and no
>>>>> cell_methods string for standard error?
>>>>> t_an:grid_mapping = "crs" ;
>>>>> t_an:units = "degrees_celsius" ;
>>>>> t_an:FillValue = 9.96921e+36f
>>>>>
>>>>> So, my question arises in this last example, where a standard name
>>>>> modifier exists. I guess this is the part I don't understand?. is
>>>>> there no reference to cell_methods for the time dimension in the
>>>>> standard error variable t_se? If so, why is there a
>>>>> standard_error standard_name modifier but not one for
>>>>> standard_deviation?
>>>>>
>>>>> Thanks, Ken
>>>>>
>>>>>
>>>>>
>>>>> On Mar 25, 2013, at 1:40 PM, Jonathan Gregory
>>>>> <j.m.gregory at reading.ac.uk> wrote:
>>>>>
>>>>>> Dear Ken
>>>>>>
>>>>>>> Thanks for your response too (copied here? is it bad form in a
>>>>>>> listserv to consolidate responses like this?)
>>>>>>
>>>>>> I think it's convenient, myself!
>>>>>>
>>>>>>> That answer seems so easy and obvious that I wonder if I asked
>>>>>>> the question properly! I'll have to ask Tim to be sure, but I
>>>>>>> think the standard deviation is the standard deviation over
>>>>>>> time, of means generated in each time-area-depth cell.
>>>>>>
>>>>>>> But I think the question still remains about being able to use a
>>>>>>> standard name, which we would like to do of course? I am pretty
>>>>>>> sure in this example for this standard deviation variable we
>>>>>>> should NOT use sea_water_temperature for standard_name, and that
>>>>>>> it would be good if there were more standard name modifiers to
>>>>>>> choose from. If there were, perhaps we could set standard name
>>>>>>> to something like "sea_water_temperature standard_deviation".
>>>>>>
>>>>>> You *should* use sea_water_temperature as the standard_name. The
>>>>>> standard_name
>>>>>> alone is not to be regarded as the description of the metadata.
>>>>>> It has to be
>>>>>> taken in combination with cell_methods and modifiers. Maybe it
>>>>>> seems more
>>>>>> surprising that a temporal standard deviation of
>>>>>> sea_water_temperature has
>>>>>> sea_water_temperature for its standard name, but it's really the
>>>>>> same kind of
>>>>>> idea - i.e. a statistic - as a temporal mean or a temporal
>>>>>> maximum, isn't it.
>>>>>> Even if it was variance its standard_name would be
>>>>>> sea_water_temperature, and
>>>>>> in that case the units would be different too.
>>>>>>
>>>>>> Cheers
>>>>>>
>>>>>> Jonathan
>
> --
> *******************************************************
> * Nan Galbraith Information Systems Specialist *
> * Upper Ocean Processes Group Mail Stop 29 *
> * Woods Hole Oceanographic Institution *
> * Woods Hole, MA 02543 (508) 289-2444 *
> *******************************************************
>
>
>
>
> _______________________________________________
> CF-metadata mailing list
> CF-metadata at cgd.ucar.edu
> http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.cgd.ucar.edu/pipermail/cf-metadata/attachments/20130326/daf1be6e/attachment-0001.html>
Received on Tue Mar 26 2013 - 09:21:41 GMT

This archive was generated by hypermail 2.3.0 : Tue Sep 13 2022 - 23:02:41 BST

⇐ ⇒