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 <[email protected]
<mailto:[email protected]>> 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 <[email protected] <mailto:[email protected]>>
Date: Tue, 26 Mar 2013 09:14:11 -0400
To: "[email protected] <mailto:[email protected]>"
<[email protected] <mailto:[email protected]>>
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"
<[email protected]> 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
<[email protected]> 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
[email protected]
http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata
_______________________________________________
CF-metadata mailing list
[email protected]
http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata