Hi Karl,
The discussion concerning the introduction of the scalar coordinate
variable is available in the archive (July 2003 under the subject "size-one
axes"). There was never a decision to disallow the "bounds" attribute.
Although it could be more explicitly stated in the current document, I
think several sections support the use of "bounds" with scalar coordinate
variable. In addition to the statement Jonathan points out in section 5.7 I
find:
The definition of a scalar coordinate variable is (section 1.2):
A scalar variable that contains coordinate data. Functionally
equivalent to either a size one coordinate variable or a size one
auxiliary coordinate variable.
The first paragraph of section 7.1 contains
A boundary variable will have one more dimension than its
associated coordinate or auxiliary coordinate variable.
Scalar coordinate variables are auxiliary coordinate variables, and if the
"bounds" attribute were not allowed then they could not be functionally
equivalent to size one auxiliary coordinate variables.
The statement you called out occurs in section 2.4 on dimensions and was
written long before we adopted the scalar coordinate variable. I assume
that rewording that statement to be more precise just fell through the
cracks. But on that point I don't agree with Jonathan's assertion:
> I believe that by "coordinate variable" it means either
> a size-one (Unidata) coord var or a scalar coord var.
In very early drafts we tried using "coordinate variable" in a more general
sense than its definition in the NetCDF User's Guide (NUG). But
distinquishing between coordinate variables in the strict NUG sense, and in
the general sense became very awkward. We therefore resolved to use the
term "coordinate variable" only in the NUG sense. I think the document is
very consistent about this, which is why the statement that you point out
is confusing and should be modified to explicitly mention scalar coordinate
variables.
Brian
On Thu, Dec 16, 2010 at 02:52:07PM +0000, Jonathan Gregory wrote:
> Dear Karl
>
> > Does anyone remember, why we didn't allow the "bounds" attribute to be
> > attached to a scalar coordinate variable? Currently CF requires the
> > user to include a dimension a size one if he wants to define coordinate
> > bounds:
> >
> > "The advantage of using a coordinate variable is that all its attributes
> > can be used to describe the single-valued quantity, including boundaries."
>
> I don't think the text means that a scalar coord var can't have bounds. In
> the sentence you quote, it is not contrasting a (Unidata) coord var with a
> scalar coord var. I believe that by "coordinate variable" it means either
> a size-one (Unidata) coord var or a scalar coord var. It is contrasting the
> use of coordinate vars of either type with attributes, as means of attaching
> single values, I guess. Indeed, in 5.7, it says "Scalar coordinate variables
> have the same information content and can be used in the same contexts as a
> size one coordinate variable."
>
> I often attach bounds to scalar coord vars and I don't believe the conformance
> requirements exclude that.
>
> > [Note that we also, don't allow an "axis" attribute to be attached to a
> > scalar coordinate variable, and I also don't remember why we did this.]
>
> Where do you find that? It is possible that this would be excluded because
> scalar coord vars are (formally) auxiliary coord vars, which are specifically
> excluded from having the axis attribute in the intro to 5. There were good
> reasons for that but we ought to be revisit it. Steve Hankin has raised that.
> I think scalar coord vars should be allowed to have the axis attr. That is
> necessary if they are to have the same info content etc., as quoted above.
>
> Best wishes
>
> Jonathan
> _______________________________________________
> CF-metadata mailing list
> CF-metadata at cgd.ucar.edu
> http://mailman.cgd.ucar.edu/mailman/listinfo/cf-metadata
Received on Mon Dec 20 2010 - 13:42:29 GMT