CSN Object Templates: Difference between revisions

From CSDMS
 
(205 intermediate revisions by 2 users not shown)
Line 1: Line 1:
=   '''[[CSDMS_Standard_Names | CSDMS Standard Names]]  — Object Templates ''' =
:
* A CSDMS Standard Name must have an "object" part and a "quantity" part, with adjectives and modifiers (as prefixes) being used to help avoid ambiguity and identify a specific object and associated quantity.  This document contains "object templates".  Some examples are given here after a short discussion of the '''rules''', although they are not all up-to-date. Many more (and current) examples can be found at:  [[CSN_Examples | '''CSDMS Standard Name Examples''']].  For "quantity templates", see: [[CSN_Quantity_Templates | '''CSDMS Quantity Templates''']].
:
* The "templates" listed below are not exhaustive, but they do address many commonly needed cases where the pattern may not bealaskan_black_bear obvious. Additional templates can be created from any of the "base objects" listed in the text file "CSDMS_Standard_Name_Objects.txt".
:
* Each template includes examples and explanatory notes, and many of them make reference to the CF Standard Names, sometimes using the abbreviation "CF".
:
* '''''Object''''' appears to be the right word choice.  It is used in the same sense in object-oriented programming.  For example, in Java, the base class for all objects is "Object".  See [http://en.wikipedia.org/wiki/Object_(philosophy) Object (philosophy)].  A partial list of base objects is given in the text file: "CSDMS_Standard_Name_Objects.txt".
:
* '''''General Base Object Name Rule'''''. Some object names have many synonyms or closely related terms.  For example, the words "channel", "creek", "brook", "stream" and "river" all refer to a similar concept.  In such cases a single object name may be selected to represent that "type" of object so that potential matches are more likely. (Specific assumptions on size, etc. are provided in a Model Coupling Metadata (MCM) file using the [[CSN_Assumption_Names | '''CSDMS Assumption Names''']].)  In the above example,  the word "channel" has been selected as the representative term because it doesn't have a size connotation. Note that there are textbooks on "open channel flow", we talk of "channelized flow" and then there is the English Channel.  See the Watershed template for another example.
:
* '''''Use of Standard Object Names Rule'''''. Lists of standardized object names have been compiled for several classes of objects and organisms.  In such cases, there may be a ''common name'' and a ''scientific name''.  CSDMS promotes the use of standardized object names when they exist but their source must be provided using an <object_name_source> tag in the Model Coupling Metadata (MCM) file.  See the Animals and Plants template below for examples.  The [http://en.wikipedia.org/wiki/International_Union_of_Pure_and_Applied_Chemistry IUPAC] has developed a standard [http://en.wikipedia.org/wiki/Chemical_nomenclature nomenclature for chemical compounds].
:
* '''''Part of Another Object Pattern'''''.  A quantity frequently applies to an object that is part of another object, such as the trunk of a tree.  Another example is a hierarchy of organizations, such as (country + agency + program), (e.g. "US", "NOAA", "NWS"). Also see the Product of a Company template.  In these cases, the object name begins with the main object and is appended with the name of the object part, building left to right from the general to the specific.  The Channel Parts template below gives many examples.  The first example below also uses the '''Object-to-object Quantity Pattern''' from the [[CSN_Quantity_Templates | '''CSDMS Quantity Templates''']]. Examples include:


__NOTOC__


= &nbsp; CSDMS Standard Names &mdash; Object Templates =
automobile_engine__volume
automobile_fuel__consumption_rate
automobile_fuel-tank__volume  (or capacity)
automobile__fuel_economy  [mpg]
bear~alaskan~black_brain-to-body__mass_ratio
bear~alaskan~black_head__mean_diameter
channel_x-section__area
channel_centerline__downvalley_sinuosity
earth_axis__tilt_angle
earth_orbit__eccentricity
tree~oak~bluejack_trunk__diameter
:
: An important variant of this pattern is that words like "top", "bottom", "edge~east", "edge~north", "vertical-x-section", "center", "centroid" and "layer" may also be viewed as "parts" of an object and handled in the same way.  (Note: "side~left" and "side~right" can also be used, and are taken relative to the direction of flow or travel). Examples include:
atmosphere_top_air__temperature  (the CF Standard Names use "toa" as an abbreviation for "top of atmosphere")
atmosphere_bottom_air__pressure
channel_bottom_water__static_pressure
channel_bottom_water__temperature
earth_orbit_aphelion__distance
glacier_terminus_side~left__latitude
glacier_top_ice__temperature
land_surface__infiltration_rate
land_surface_air__temperature
model_grid_cell_center__latitude
model_grid_cell_edge~east__latitude
sea_bottom_sediment_layer__thickness
sea_photic-zone_bottom__depth
soil_sat-zone_top__depth
:
* '''''Object_name + Model_name Pattern'''''.  Some quantities are only well-defined for some idealized version or model of a given object.  For example, the quantities "equatorial_radius" and "semi_major_axis_length" are only well-defined for a planet when the planet shape is approximated as an ellipsoid.  As another example, the quantities "bottom_width" and "bank_angle" are only well-defined when the channel cross section shape is approximated as a trapezoid.  As a third example, a quantity such as "plan curvature" only makes sense for a mathematical surface that is "twice differentiable".  However, there are often other quantities that do not depend on any such assumption regarding the shape, such as "earth" + "mass" and "channel_x-section" + "perimeter".  Note that model assumptions (geometric shapes in these examples) should always be included in the Model Coupling Metadata (MCM) file with an <assume> tag and a value such as "trapezoid_shaped".  See [[CSN_Assumption_Names | '''CSDMS Assumption Names''']] for more information.  When a quantity depends on a "model" assumption, we insert the "model name" after the object name as in:


== '''Air''' ==
channel_'''centerline''' + length
: base_object = "_air"
channel_x-section_'''trapezoid''' + bottom_width
earth_'''ellipsoid''' + equatorial_radius
earth_'''mean-sea-level-datum'''_air + pressure
land_'''surface''' + plan_curvature


e.g. air_density
:A variant of this pattern occurs when naming quantities that are associated with a named model for the object, such as the Brooks-Corey soil model or the Green-Ampt infiltration model. The model is often indicated with one or more last names of people (and often followed by the word "law"), inserted as a modifier between the object_name and the quantity_name, as in:
    air emissivity
    air_pressure
    air_refraction_index
    air_temperature
    air_thermal_capacity
    air_water_vapor_pressure  ###### (or water_in_air_vapor_pressure ?)


e.g. earth_atmosphere_density
basin__flint_law_exponent    (vs. "flint_law_concavity_exponent")
    earth_atmosphere_pressure
basin__flint_law_coefficient  (vs. "flint_law_steepness_parameter")
    earth_atmosphere_refraction_index
basin_channel~longest__hack_law_coefficient
    earth_atmosphere_temperature
basin_channel~longest__hack_law_exponent
    earth_atmosphere_thermal_capacity
channel__downstream_hydraulic_geometry_width_vs_discharge_coefficient
channel__downstream_hydraulic_geometry_width_vs_discharge_exponent
earth_interior_earthquake__gutenberg-richter_law_a_parameter
glacier_ice__glen_law_coefficient
glacier_ice__glen_law_exponent
soil_water__brooks-corey_b_parameter
soil_water__green-ampt_capillary_length
soil_water__smith-parlange_gamma_parameter
soil_water__van-genuchten_alpha_parameter


:* This refers to the mixture of gases in Earth's atmosphere.  As a simple term for a complex mixture, it is similar to terms like '''soil''' and even '''sea_water'''.  In many cases it may be better (i.e. less ambiguous) to use '''earth_atmosphere''' instead of '''air'''.  This generalizes to "mars_atmosphere" while "air" connotes Earth.
or:   glacier + glen_law_strain_rate_vs_shear_stress_exponent  ??
        basin + flint_law_slope_vs_area_exponent ??


:* By analogy, perhaps we should use '''earth_land_surface''' instead of just '''land_surface'''.
:For a named, power-law model, there is generally one coefficient and one or more exponents.  Interpretations of coefficients and exponents (e.g. concavity, creep, steepness) are redundant and can be excluded. In the case of multiple exponents, the name of the quantity that is being raised to a power is inserted, as in "area_exponent", "conductivity_exponent" and "slope_exponent".  Note that '''vs''' is used as a special reserved word.
:
* '''''Object-as-Object Pattern''''' (under review).  The amount of a chemical species present in a sample (e.g. in atmospheric chemistry) is often expressed in terms of the amount of a particular element/constituent in the sample.  For example, the term "clox" (ClOx) is used to describe a family called "chlorine radicals" that contain inorganic chlorine, and the amount of chlorine radicals is quantified as the amount of chlorine. (See: [http://en.wikipedia.org/wiki/Radical_(chemistry) Radical].)  In the CF Standard Names, the pattern "X_expressed-as-Y" is used in 149 names.  In the CSDMS Standard Names, the reserved word "as" is used, as in these examples:


* Like water, air is generally contained within another object and
atmosphere_air-column_clox-as-chlorine__mass-per-area_density    (or "chlorine_radicals-as-chlorine" ?)
  can therefore be viewed as one of that object's parts. (And we
atmosphere_air-column_hox-as-hydrogen__mass-per-area_density
   have a naming pattern for this.) So we could have "scuba_tank_air"
  atmosphere_air-column_nox-as-nitrogen__mass-per-area_density
  or "earth_atmosphere_air" (?).
    
sea_water_diatoms-as-carbon__mass_concentration
  sea_water_diatoms-as-chlorophyll__mass_concentration
sea_water_diatoms-as-nitrogen__mass_concentration


* Air is also used to indicate a domain, as in traveling by land,
:The reserved word '''as''' could also be used in situations where one measured quantity serves as a surrogate for another, perhaps as in "activity-as-ph", "pressure-as-height" or "salinity-as-electrical_conductivity".
  sea or air.  This is also reflected in: Army, Navy, Air Force.


<br/>
<!-- ============================================= -->
== {{ Bar Heading| text=Air}} ==
&nbsp; base_object = "air"
:''Examples''
See Attributes of the Atmosphere on the page [[CSN_Examples | CSDMS Standard Name Examples]].
* This refers to the mixture of gases in Earth's atmosphere.  As a simple term for a complex mixture, it is similar to terms like "soil" and even "sea_water".
:
*  The word "atmosphere" is sometimes used to mean a '''''place''''' or a container that has attributes such as "thickness".  In other contexts it is used as a synonym for "air", which is the substance that occupies that "container", with attributes such as "density". (In Wikipedia, '''air''' redirects to [http://en.wikipedia.org/wiki/Air Atmosphere of Earth].)  This distinction is carefully considered when constructing CSDMS Standard Names, where the goal is for names to be consistent, unambiguous and easily understood.  Note that we could use "mars_atmosphere" to refer to either the specific mixture of gases in the atmosphere of Mars or the place/container.
:
* Similarly, "land_surface" by itself is taken to mean a land surface on Earth.  For Mars, we could use "mars_land_surface" if the distinction was important.
:
* Like water, air is generally contained within another object and can therefore be viewed as one of that object's parts. The '''Part of Another Object Pattern''' addresses this issue.  So we could have "balloon_air" or "scuba_tank_air".  (And perhaps "earth_atmosphere_air"?)
:
* Air is also used to indicate a domain, as in traveling by land, sea or air.  This is also reflected in: Army, Navy, Air Force.
:
* See Atoms, Compounds, Ions and Molecules.
* See Atoms, Compounds, Ions and Molecules.


=====================
<br/>
Animals and Plants
<!-- ============================================= -->
=====================
 
object = [ organism_name ]
== {{ Bar Heading| text=Animals and Plants}} ==
 
&nbsp; object = organism_name
 
:''Examples''
bass~small-mouth
bat~mexican~free-tail  (Carlsbad Caverns)
bear~alaskan~black
spider~black-widow
toad~spade-foot
 
bear~alaskan~black + max_running_speed
bear~alaskan~black~adult~male + mean_weight
bear~alaskan~black_brain-to-body + mean_mass_ratio
bear~alaskan~black + mean_digestion_period
bear~alaskan~black + mean_gestation_period
bear~alaskan~black + mean_hibernation_period
bear~alaskan~black + mean_lifetime  (or "life_time"?  "living_period"?)
bear~alaskan~black + mean_sleeping_period
bear~alaskan~black + mean_territorial_area
 
* Standard vocabularies for many types of organisms already exist.  For example, Yearsley et al. (2006) compiled the [http://www.marine.csiro.au/caabsearch/caab_search.fish_names_list CSIRO Standard Fish Names in Australia]. Wikipedia also has a [http://en.wikipedia.org/wiki/List_of_common_fish_names List of Common Fish Names]. Standardized names should be used whenever possible, with the source of the names provided in the associated metadata using the tag "object_name_source".  However, common names are not as specific as scientific (genus-species) names.  For the design goals of a "lingua franca", we could just select one source for each common or scientific name and indicate that source. <br/> <br/>


e.g. alaskan_black_bear
* Note that "mean" was inserted in each of the above examples.  This word removes ambiguity (i.e., it indicates an average value for a population vs. the value for an individual) but perhaps it should be placed with the metadata. <br/> <br/>
    black_widow_spider
    mexican_free_tail_bat  (Carlsbad Caverns)
    small_mouth_bass
    spade_foot_toad


e.g. alaskan_black_bear_max_running_speed
* Note that "lifetime" is a compound word that ends in "time", which connotes units of time. This can be viewed as another variation of the '''Process_name + Quantity Pattern'''", where "life" indicates the process of "living" and we are interested in the duration of that process. We avoid "life_expectancy" here because "expectancy" is an ambiguous base quantity name, similar to expectation, better viewed as an operator. We are frequently interested in attributes of processes that act on a particular object as another type of attribute for the object. <br/> <br/>
    alaskan_black_bear_mean_adult_male_weight
    alaskan_black_bear_mean_brain_to_body_mass_ratio
    alaskan_black_bear_mean_digestion_period
    alaskan_black_bear_mean_gestation_period
    alaskan_black_bear_mean_hibernation_period
    alaskan_black_bear_mean_lifetime  (or "life_time""living_period"?)
    alaskan_black_bear_mean_sleeping_period
    alaskan_black_bear_mean_territorial_area


* Standard vocabularies for many types of organisms already existFor
* Note that our lingua franca is focused on "numerical attributes" that have units, called "quantities"Animals have many other attributes, e.g. behaviors, food preferences, habitats, geographical distribution, etc. which are not quantities and are beyond the current scope. <br/> <br/>
  example, CSIRO has compiled a standard vocabulary of fish names. See
  Yearsley et al. (2006).  Wikipedia also has a list of common fish names
  at:  http://en.wikipedia.org/wiki/List_of_common_fish_names
  Standardized names should be used whenever possible, with the source
  of the names provided in the associated metadata. However, common names
  are not as specific as scientific (genus-species) names.  For the design
  goals of a "ligua franca", we could just select one source for each
  common or scientific name and indicate that source.


* Note that "mean" was inserted in each of the above examples.  This word
<br/>
  removes ambiguity (i.e., it indicates an average value for a population
<!-- ============================================= -->
  vs. the value for an individual) but perhaps it should be placed with
  the metadata.


* Note that "lifetime" is a compound word that ends in "time", which
== {{ Bar Heading| text=Atoms, Compounds, Ions and Molecules}} ==
  connotes units of time.  This can be viewed as another variation of the
  "process_name - attribute" pattern, where "life" indicates the process
  of "living" and we are interested in the duration of that process.
  We avoid "life_expectancy" here because "expectancy" is an ambiguous
  base quantity name, similar to expectation, better viewed as an operator.
  We are frequently interested in attributes of processes that act on a
  particular object as another type of attribute for the object.


* Note that our lingua franca is focused on "numerical attributes" that
&nbsp; object = [ element_name ]  + [ "_atom" ] <br/>
  have units, called "quantities".  Animals have many other attributes, e.g.
&nbsp; object = [ compound_name ] + [ "_compound" ] <br/>
  behaviors, food preferences, habitats, geographical distribution, etc.
&nbsp; object = [ molecule_name ] + [ "_molecule"] <br/>
  which are not quantities and are beyond the current scope.


* See the Ratios quantity pattern.
:''Examples''
See Attributes of the Atoms and Attributes of Molecules on the page [[CSN_Examples | CSDMS Standard Name Examples]].


=======================================
* Insert the word "atom", "molecule", etc. whenever necessary to remove ambiguity between the substance and the atom (e.g. iron) or molecule (e.g. water). The absence of these extra words implies a "bulk" quantity.
Atoms, Compounds, Ions and Molecules
:
=======================================
* It seems that '''''compound''''' is the most general term for atoms held together by some type of chemical bond. A '''''molecule''''' is a special type of compound that is (1) electrically neutral and (2) held together by covalent bonds. An '''''ion''''' is a (compound or molecule??) that carries a charge.
object = [ element_name ] + [ "_atom" ]
:
object = [ compound_name ] + [ "_compound" ]
* See Attributes of Atoms and Attributes of Molecules on the [[CSN_Quantity_Templates | '''CSDMS Quantity Templates''']] page for various quantities.
object = [ molecule_name ] + [ "_molecule"]


e.g. carbon_dioxide_acidity
<br/>
    carbon_dioxide_boiling_point_temperature    (remove "point" ??)
<!-- ============================================= -->
    carbon_dioxide_density
    carbon_dioxide_dynamic_viscosity
    carbon_dioxide_kinematic_viscosity
    carbon_dioxide_in_air_partial_pressure    #####  2 substances, with "in"
    carbon_dioxide_in_water_solubility        #####  2 substances, with "in"
    carbon_dioxide_melting_point_temperature    (remove "point" ??)
    carbon_dioxide_molar_mass
    carbon_dioxide_refractive_index
    cesium_atomic_mass      (insert atom ??)
    cesium_atomic_weight
    cesium_atom_characteristic_vibration_frequency
    cesium_atom_neutron_number
    cesium_atom_proton_number


    dihydrogen_molecule_bond_length  (dihydrogen = H2)
== {{ Bar Heading| text=Channels, Streams, Rivers, Etc.}} ==
    dioxygen_molecule_bond_length    (dioxygen = O2, dinitrogen = N2)
          ### Note: trioxygen is another name for ozone.


    water_molecule_actual_bond_angle
&nbsp; object = "channel"
    water_molecule_bond_dissociation_energy
        (http://en.wikipedia.org/wiki/Bond-dissociation_energy)
    water_molecule_ideal_bond_angle  (or replace "ideal" by "VSEPR" ?)
    water_molecule_hydrogen_number  (??? number of hydrogen atoms)
    water_molecule_hydrogen_to_oxygen_bond_length
        OR water_molecule_hydrogen_to_oxygen_distance ?? (See Distance.)
        OR water_molecule_H_to_O_distance


* Insert the word "atom", "molecule", etc. whenever necessary to remove ambiguity
:''Examples''
  between the substance and the atom (e.g. iron) or molecule (e.g. water).
See Attributes of Channels on the page [[CSN_Examples | CSDMS Standard Name Examples]].
  The absence of these extra words implies a "bulk" quantity.


* It seems that "compound" is the most general term for atoms held together
* The word "channel" seems preferable as a general term to words like "creek", "stream" and "river" because it doesn't have a size connotation. For example, there are textbooks on "open channel flow", we talk of "channelized flow" and then there is the English Channel.
  by some type of chemical bondA "molecule" is a special type of compound
:
  that is (1) electrically neutral and (2) held together by covalent bonds.
* We could allow terms like "stream" and "river", but this will reduce the number of potential matches when coupling models.
  An "ion" is a (compound or molecule??) that carries a charge.
:
* Note that "channel_bank_angle" by itself would be ambiguous;  is it the angle the bank makes with the vertical z-axis or with a horizontal x-axis?  However, "channel_cross_section_trapezoid_bank_angle" is clear.
:
* A quantity like "bottom_width" or "bank_angle" may only be well-defined for cross-sections of a particular shape, like a trapezoidIn such cases we use the '''Object_name + model_name Pattern'''.
:
* We talk of "channel networks", but the network is not part of the channel, it is part of a drainage basin (e.g. basinchannel-network).
:
* An '''''outlet''''' would be considered part of a drainage basin and not part of a channel.  See the object pattern for Watershed, Basins and Catchments.


* For 3D (nonplanar) molecules, "torsion" (or "dihedral") angles can be
<br/>
  specified.  See: http://en.wikipedia.org/wiki/Molecular_geometry.
<!-- ============================================= -->
  "bond length"  is defined for 1 bond (2 atoms, e.g. dihydrogen)
  "bond angle"    is defined for 2 consecutive bonds (3 atoms, e.g. water)
  "torsion angle" is defined for 3 consecutive bonds (4 atoms, e.g. ethane, C2H6)
  These are all defined as time averages.  Ethane seems to have three
  different torsion angles, which are all "H_to_C_to_C_to_H".


* If all angles are the same, we can have things like:
== {{ Bar Heading| text=Coastlines, Shorelines and Beaches}} ==
      - benzene_molecule_C_to_C_to_C_bond_angle
            OR benzene_ring_bond_angle ???
      - benzene_molecule_C_to_C_to_H_bond_angle  ??


* There is also something called a "ligand cone angle";  see:
:''Examples''
      http://en.wikipedia.org/wiki/Ligand_cone_angle
See Attributes of Oceans (sea_shoreline) on the page [[CSN_Examples | CSDMS Standard Name Examples]].
  and a "ligand [natural] bite angle":
      http://en.wikipedia.org/wiki/Bite_angle


==================================
<br/>
Channels, Streams, Rivers, Etc.
<!-- ============================================= -->
==================================
object = "channel"


e.g. channel_water_flow_speed
== {{ Bar Heading| text=Earth and Other Planets}} ==


* The word "channel" seems preferable as a general term to words like
&nbsp; object = "earth" <br/>
  "creek", "stream" and "river" because it doesn't have a size
&nbsp; object = "earth_axis" <br/>
  connotation. For example, there are textbooks on "open channel flow",
&nbsp; object = "earth_ellipsoid" <br/>
  we talk of "channelized flow" and then there is the English Channel.
&nbsp; object = "earth_orbit" <br/>


* We could allow terms like "stream" and "river", but this will reduce
:''Examples''
  the number of potential matches when coupling models.
See Attributes of Planets on the page [[CSN_Examples | CSDMS Standard Name Examples]].


================
* A quantity like "equatorial_radius" or "flattening_ratio" may only be well-defined for particular planet shapes, like an ellipsoid.  So we may want to insert the word "ellipsoid" for these.
Channel Parts
================
object = "channel_bed"
object = "channel_cross_section"
object = "channel_head"
object = "channel_mouth"
object = "channel_reach"
object = "channel_water"


e.g. channel_bed_d50_roughness_length
* The distance from the earth to the sun requires specifying two objects and uses the '''Object-to-object Quantity Pattern''' to produce  "earth-to-sun_mean_distance".
    channel_bed_d84_roughness_length
    channel_bed_manning_roughness_parameter
    channel_bed_relative_roughness_ratio    (a dimensionless ratio)
    channel_bed_mean_roughness_length
    channel_bed_mean_shear_stress        ("shearing" may be better)
    channel_bed_water_hydrostatic_pressure
    channel_bed_water_pressure


    channel_cross_section_area
<br/>
    channel_cross_section_depth_slope_product  ## (or channel_bed_depth_slope_product ??)
<!-- ============================================= -->
    channel_cross_section_hydraulic_radius
    channel_cross_section_max_depth
    channel_cross_section_perimeter
    channel_cross_section_top_width    (the top_width is usually the max)
    channel_cross_section_trapezoid_bank_angle
    channel_cross_section_trapezoid_bottom_width
    channel_cross_section_wetted_perimeter
    channel_cross_section_width_to_depth_ratio


    channel_head_elevation
== {{ Bar Heading| text=Glaciers, Land Ice and Ice Sheets}} ==


    channel_mouth_d8_contributing_area
&nbsp; object = "glacier"
    channel_mouth_elevation
    channel_mouth_slope  ???


    channel_reach_absolute_sinuosity
:''Examples''
    channel_reach_elevation_difference  (use difference as a quantity suffix ??)
  See Variable Names for Glaciers and Variable Names for Sea Ice on the page [[CSN_Examples | CSDMS Standard Name Examples]].
    channel_reach_length
    channel_reach_meander_amplitude
    channel_reach_meander_period
    channel_reach_total_water_volume (or channel_reach_water_total_volume ??)


    channel_water_density
    channel_water_discharge  (or channel_cross_section_water_discharge ??)
    channel_water_friction_factor  #####
    channel_water_froude_number
    channel_water_max_depth
    channel_water_mean_depth
    channel_water_mean_speed  (speed = "velocity magnitude"; don't need "flow_speed"?)
    channel_water_pressure    (anywhere in the channel; see channel_bed_water_pressure)
    channel_water_temperature


* Note that "channel_bank_angle" by itself is ambiguous;  is it the angle
* CF Standard Names use "land_ice" instead, contrasted with "sea_ice".
  the bank makes with the vertical z-axis or with a horizontal x-axis?


* A quantity like "bottom_width" or "bank_angle" may only be well-defined
<br/>
  for cross-sections of a particular shape, like a trapezoid.  So we may
<!-- ============================================= -->
  want to insert the word "trapezoid" for these.  Similarly, we could have
  "channel_cross_section_half_circle_radius".


* We talk of "channel_networks", but the network is not part of the channel.
== {{ Bar Heading| text=Hydrometeors}} ==


* See the object pattern for Watershed, Basins and Catchments.
&nbsp; object = "atmosphere_hydrometeor"


=====================================
:''Examples''
  Coastlines, Shorelines and Beaches
  See Variable Names for the Atmosphere on the page [[CSN_Examples | CSDMS Standard Name Examples]].
=====================================


* This is a general term for precipitating water in any of its possible forms, including: ice, sleet, hail, rain, snow and graupel.


* For a substance other than water, a prefix other than "hydro" should probably be inserted in front of "meteor".


==========================
<br/>
Earth and Other Planets
<!-- ============================================= -->
==========================
object = "earth"
object = "earth_ellipsoid"
object = "earth_orbit"


e.g. earth_ellipsoid_eccentricity
== {{ Bar Heading| text=Product of a Company}} ==
    earth_ellipsoid_equatorial_radius  (= semi_major_axis_length)
    earth_ellipsoid_flattening_ratio
    earth_ellipsoid_polar_radius        (= semi_minor_axis_length)
    earth_mass
    earth_mean_density
    earth_orbit_eccentricity  (or earth_orbital_eccentricity)
    earth_solar_irradiation_constant
          OR earth_insolation_constant
    earth_to_sun_mean_distance
          OR earth_orbit_mean_radius  ???


* A quantity like "equatorial_radius" or "flattening_ratio" may only be
&nbsp; object = company_name + product_name
  well-defined for particular planet shapes, like an ellipsoid.  So we
  may want to insert the word "ellipsoid" for these.


=====================
:''Examples''
  Glaciers, Land Ice
  gm_hummer_total_weight
=====================
porsche~911 + msrp_price
object = "glacier"
porsche~911 + top_speed
object = "glacier_ice"
toyota_corolla~2008 + kelley_blue_book_price  ??
toyota_corolla~2008_fuel-tank + volume
toyota_corolla~2008 + fuel_economy  [mpg]
toyota_corolla~2008 + motor_trend_magazine_safety_rating
      (or "motor_trend_magazine" could go into metadata; how measured)


e.g. glacier_ice_density
* We would do something similar for organizations contained within other organizations, such as "us_noaa_nws" (country_agency_program). The general pattern is to go from the general to the specific. <br/> <br/>
    glacier_ice_depth
    glacier_ice_temperature


* CF Standard Names use "land_ice" instead, contrasted with "sea_ice".
* See [[CSN_Quantity_Templates | CSDMS Quantity Template]] for Fuel Efficiency.
  If the quantity is an attribute of ice, we may want to add the word
 
  "ice" after glacier.
<br/>
<!-- ============================================= -->


=============================
== {{ Bar Heading| text=Sea Water and Ocean}} ==
Product of a Given Company
=============================
object = company_name + product_name


e.g. gm_hummer_total_weight
&nbsp; object = "sea_water"
    porsche_911_mrp  (cost)
    porsche_911_max_speed
    toyota_corolla_2008_blue_book_price  ??
    toyota_corolla_gas_tank_volume
    toyota_corolla_fuel_economy  [mpg]
    toyota_corolla_motor_trend_magazine_safety_rating
          (or "motor_trend_magazine" could go into metadata; how measured)


* We would do something similar for organizations contained within other
:''Examples''
  organizations, such as "us_noaa_nws" (country_agency_program). The general
  See Attributes of Oceans on the Examples page for many examples.
  pattern is to go from the general to the specific.


* See Fuel Efficiency.
* The word "sea_water" is preferable to "ocean" when the quantity is an attribute of the water. CF Standard Names have a different rule to decide when to use "ocean" vs. "_sea_water" (double check). <br/> <br/>


===================
* See Waves.
Sea Water, Ocean
===================
object = "sea_water"


e.g. sea_water_eastward_velocity_component
<br/>
    sea_water_flow_speed      (or sea_water_velocity_magnitude; insert "flow"?? ##########)
<!-- ============================================= -->
    sea_water_depth    (or "total_depth" ??)
    sea_water_electrical_conductivity
    sea_water_salinity
    sea_water_secchi_depth
    sea_water_surface_elevation
    sea_water_surface_temperature
    sea_water_temperature
    sea_water_thermal_capacity


* The word "sea_water" is preferable to "ocean" when the quantity is an
== {{ Bar Heading| text=Snow}} ==
  attribute of the water.  CF Standard Names have a different rule to
  decide when to use "ocean" vs. "_sea_water" (double check).


* See Waves (e.g. sea_water_surface_wave).
&nbsp; base_object = "snow"


=======
:''Examples''
  Snow
  See Attributes of Snow on the page [[CSN_Examples | CSDMS Standard Name Examples]].
=======
base_object = "_snow"


e.g. snow_density
    snow_depth
    snow_grain_size
    snow_melt_rate
    snow_thermal_capacity
    snow_thermal_energy_content
* We could use "surface_snow" (maybe CF does), but is that necessary?
* We could use "surface_snow" (maybe CF does), but is that necessary?


=======
* The concept of "snow" generalizes to frozen precipitation of other substances like carbon dioxide (on Mars) and methane (on Jupiter's moon, Titan).  The current and natural trend is to simply call these "carbon_dioxide_snow" and "methane_snow".  The word "snow" used by itself then means "water_snow". Similarly, we would use "carbon_dioxide_ice" and "methane_ice", even though the former is also known as "dry ice".
  Soil
=======
base_object = "_soil"


e.g. soil_effective_saturated_hydraulic_conductivity
<br/>
    soil_hydraulic_conductivity
<!-- ============================================= -->
    soil_pressure_head
    soil_saturated_hydraulic_conductivity
    soil_saturated_water_content
    soil_surface_infiltration_rate  (or vertical_flow_rate ??)
    soil_porosity
    soil_water_content
    soil_vertical_flow_rate


    clay_in_soil_volume_fraction  (using object_in_object pattern)
== {{ Bar Heading| text=Soil}} ==
    sand_in_soil_volume_fraction
    silt_in_soil_volume_fraction


===========
&nbsp; base_object = "soil"
Surfaces
===========
base_object = "_surface"
base_object = "_isosurface"


e.g. beach_surface
:''Examples''
    bedrock_surface
  See Attributes of Soil on the page [[CSN_Examples | CSDMS Standard Name Examples]].
    glacier_bottom_surface
    glacier_top_surface
    land_surface
    sea_floor_surface  (or seabed_surface, or sea_bottom_surface ?)
    sea_water_surface
    tropopause_surface
    water_table_surface (or ground_water_table_surface)


* Here, "surface" means a function, z(x,y), that associates a single value
<br/>
  (usually an elevation) with every point (or grid cell) in the horizontal plane.
<!-- ============================================= -->
  Note that an "isosurface" may not be expressible as z(x,y), e.g. surfaces of
  constant pressure or temperature, etc.


* Words like "bed", "floor" and "table" imply a surface, but we include the word
== {{ Bar Heading| text=Surfaces and Isosurfaces}} ==
  "surface" as a base object anyway to create a natural grouping.


* We often want to refer to the "top" or "bottom" surface.
&nbsp; base_object = "surface" <br/>
&nbsp; base_object = "isosurface" <br/>


* Quantities like aspect_angle, plan_curvature, profile_curvature, slope and
:''Examples''
  slope_angle can be associated with any surface.
See Attributes of the Topography, Attributes of Oceans, etc. on the page [[CSN_Examples | CSDMS Standard Name Examples]].


=================================
* Here, "surface" means a function, z(x,y), that associates a single value (usually an elevation) with every point (or grid cell) in the horizontal plane. Note that an "isosurface" may not be expressible as z(x,y), e.g. surfaces of constant pressure or temperature, etc.  Isosurfaces can associate multiple values with a given (x,y) position.  <br/> <br/>
Watersheds, Basins, Catchments
=================================
object = "watershed"
object = "watershed_boundary"
object = "watershed_outlet"


e.g. watershed_boundary_diameter
* Words like "bed", "floor" and "table" imply a surface, but we still include the word "surface" in the object name in accordance with the '''''Object_name + Model_name Pattern'''''. It also creates a natural grouping. <br/> <br/>
    watershed_boundary_shape_factor
    watershed_boundary_perimeter


    watershed_burned_area_fraction
* Quantities like aspect_angle, plan_curvature, profile_curvature, slope and slope_angle are not always well-defined for real topography.  Strictly speaking, these concepts only apply to a mathematical surface that is used to approximate the topography.  Quantities like slope and aspect require a surface that is smooth enough to be differentiated once. Any type of curvature (e.g. plan, profile, tangential, streamline, laplacian) requires a surface that is smooth enough to be differentiated twice.  This again shows why "surface" is included in the object name in accordance with the '''''Object_name + Model_name Pattern'''''.  <br/> <br/>
    watershed_d8_area            (i.e. upstream, contributing area)
    watershed_d_infinity_area
    watershed_drainage_density
    watershed_forested_area_fraction
    watershed_mass_flux_area      ####


    watershed_outlet_slope  ###  (channel_slope ??)
* We often want to refer to the "top" or "bottom" surface and then just add these additional modifiers before the word surface. <br/> <br/>
    watershed_outlet_suspended_sediment_discharge
    watershed_outlet_water_depth
    watershed_outlet_water_discharge
    watershed_outlet_water_speed
    watershed_outlet_width
    watershed_outlet_width_to_depth_ratio
    watershed_source_density


    watershed_total_channel_length
<br/>
<!-- ============================================= -->


* The word "basin" is used in other, non-water-related contexts.
== {{ Bar Heading| text=Watersheds, Basins and Catchments}} ==


* "watershed_boundary" seems better than "watershed_drainage_divide".
&nbsp; object = "basin" <br/>
  We could introduce "watershed_interior" also, if needed.
&nbsp; object = "basin_boundary" <br/>
&nbsp; object = "basin_outlet" <br/>


* "watershed_polygon" relates to our shape pattern (i.e. trapezoid, ellipsoid)
:''Examples''
See Attributes of Basins on the page [[CSN_Examples | CSDMS Standard Name Examples]].


===============
<br/>
Waves in Air
<!-- ============================================= -->
===============
base_object = "_wave"


e.g. atmospheric_internal_gravity_wave
== {{ Bar Heading| text=Waves in Air}} ==
    atmospheric_lee_wave  (OR  atmospheric_standing_wave)
    hydrostatic_wave
    rossby_wave  (or planetary_wave)


* See "Lee Wave" in Wikipedia.
&nbsp; base_object = "wave"


* What about "sound waves" ??
:''Examples''
atmospheric_wave~internal~gravity
atmospheric_wave~lee  (OR  atmospheric_standing_wave)
hydrostatic_wave
rossby_wave  (or planetary_wave)


==================
* See "Lee Wave" in Wikipedia. <br/> <br/>
Waves in Water
==================
object = "sea_water_internal_wave"
object = "sea_water_surface_wave"
object = "water_capillary_wave"


e.g. sea_water_surface_wave_height
* What about "sound waves" ??
    sea_water_surface_wave_incidence_angle
    sea_water_surface_wave_length
    sea_water_surface_wave_number
    sea_water_surface_wave_speed        (group or phase ??)
    sea_water_surface_wave_steepness


* To avoid ambiguity, always add an adjective like "surface" or "internal" in front
<br/>
  of the word "wave".  Note that "surface_wave" means "surface gravity wave" and
<!-- ============================================= -->
  "internal_wave" means "internal gravity wave".  In both cases, gravity (or buoyancy)
== {{ Bar Heading| text=Waves in Water}} ==
  is a restoring force acting at the interface of two fluids with different densities.
  Other types of waves include:  "breaking", "capillary", "solitary" and "tsunami".
  So we could have "surface_breaking_wave" and "surface_capillary_wave".
  Do we want to include words like "rogue", "sound", "standing", "swell" and "wind"
  as wave types ??  ########


* See Sea Water.
&nbsp; object = "sea_surface_water_wave" <br/>
&nbsp; object = "water_wave~capillary"


=======
:''Examples''
  Wind
  See Attributes of the Oceans on the page [[CSN_Examples | CSDMS Standard Name Examples]].
=======
base_object = "_wind"


e.g. wind_direction_angle
* To avoid ambiguity, always add an adjective like "surface" or "internal" in front of the word "wave". Note that "surface_wave" means "surface gravity wave" and "internal_wave" means "internal gravity wave". In both cases, gravity (or buoyancy) is a restoring force acting at the interface of two fluids with different densities.
    wind_reference_height_speed  (or maybe reference_height_wind_speed ??)
:
    wind_speed              (vs. air_flow_speed)
* Note that a "gravitational wave" is a ripple in the curvature of spacetime, first predicted by Einstein.  See [http://en.wikipedia.org/wiki/Gravitational_wave Wikipedia: Gravitational Wave].  They are not the same as "gravity waves".
    wind_speed_reference_height
:
* There are many specific types of waves, often named after their discoverer, such as [http://en.wikipedia.org/wiki/Kelvin_waves Kelvin waves], [http://en.wikipedia.org/wiki/Rossby-gravity_waves Rossby (gravity) waves], [http://en.wikipedia.org/wiki/Lamb_waves Lamb waves], Rayleigh waves, [http://en.wikipedia.org/wiki/Tollmien–Schlichting_wave Tollmien-Schlicting waves] and [http://en.wikipedia.org/wiki/Edge_wave edge waves].
:
* Other types of waves include:  "breaking", "capillary", "solitary" and "tsunami". So we could have "surface_breaking_wave" and "surface_capillary_wave". Do we want to include words like "rogue", "sound", "standing", "swell" and "wind" as wave types ??  ######
:


* Notice that "reference_height" and "wind_speed" can form a coupled pair
* See Sea Water.
  of quantities:  reference_height_wind_speed and wind_speed_reference_height,
  where the other quantity serves as an adjective/modifier.  But what is the
  object in "reference_height_wind_speed"?
 
* While "wind" could be called "air_flow" (which follows the "object - process"
  pattern) we use the more common and widely-recognized term when possible.


* What about gusts, or speeds sustained for some time period?
:
:
:

Latest revision as of 18:07, 4 April 2015

  CSDMS Standard Names — Object Templates

  • A CSDMS Standard Name must have an "object" part and a "quantity" part, with adjectives and modifiers (as prefixes) being used to help avoid ambiguity and identify a specific object and associated quantity. This document contains "object templates". Some examples are given here after a short discussion of the rules, although they are not all up-to-date. Many more (and current) examples can be found at: CSDMS Standard Name Examples. For "quantity templates", see: CSDMS Quantity Templates.
  • The "templates" listed below are not exhaustive, but they do address many commonly needed cases where the pattern may not bealaskan_black_bear obvious. Additional templates can be created from any of the "base objects" listed in the text file "CSDMS_Standard_Name_Objects.txt".
  • Each template includes examples and explanatory notes, and many of them make reference to the CF Standard Names, sometimes using the abbreviation "CF".
  • Object appears to be the right word choice. It is used in the same sense in object-oriented programming. For example, in Java, the base class for all objects is "Object". See Object (philosophy). A partial list of base objects is given in the text file: "CSDMS_Standard_Name_Objects.txt".
  • General Base Object Name Rule. Some object names have many synonyms or closely related terms. For example, the words "channel", "creek", "brook", "stream" and "river" all refer to a similar concept. In such cases a single object name may be selected to represent that "type" of object so that potential matches are more likely. (Specific assumptions on size, etc. are provided in a Model Coupling Metadata (MCM) file using the CSDMS Assumption Names.) In the above example, the word "channel" has been selected as the representative term because it doesn't have a size connotation. Note that there are textbooks on "open channel flow", we talk of "channelized flow" and then there is the English Channel. See the Watershed template for another example.
  • Use of Standard Object Names Rule. Lists of standardized object names have been compiled for several classes of objects and organisms. In such cases, there may be a common name and a scientific name. CSDMS promotes the use of standardized object names when they exist but their source must be provided using an <object_name_source> tag in the Model Coupling Metadata (MCM) file. See the Animals and Plants template below for examples. The IUPAC has developed a standard nomenclature for chemical compounds.
  • Part of Another Object Pattern. A quantity frequently applies to an object that is part of another object, such as the trunk of a tree. Another example is a hierarchy of organizations, such as (country + agency + program), (e.g. "US", "NOAA", "NWS"). Also see the Product of a Company template. In these cases, the object name begins with the main object and is appended with the name of the object part, building left to right from the general to the specific. The Channel Parts template below gives many examples. The first example below also uses the Object-to-object Quantity Pattern from the CSDMS Quantity Templates. Examples include:


automobile_engine__volume
automobile_fuel__consumption_rate
automobile_fuel-tank__volume   (or capacity)
automobile__fuel_economy  [mpg]
bear~alaskan~black_brain-to-body__mass_ratio
bear~alaskan~black_head__mean_diameter
channel_x-section__area
channel_centerline__downvalley_sinuosity
earth_axis__tilt_angle
earth_orbit__eccentricity
tree~oak~bluejack_trunk__diameter
An important variant of this pattern is that words like "top", "bottom", "edge~east", "edge~north", "vertical-x-section", "center", "centroid" and "layer" may also be viewed as "parts" of an object and handled in the same way. (Note: "side~left" and "side~right" can also be used, and are taken relative to the direction of flow or travel). Examples include:
atmosphere_top_air__temperature   (the CF Standard Names use "toa" as an abbreviation for "top of atmosphere")
atmosphere_bottom_air__pressure
channel_bottom_water__static_pressure
channel_bottom_water__temperature
earth_orbit_aphelion__distance
glacier_terminus_side~left__latitude
glacier_top_ice__temperature
land_surface__infiltration_rate
land_surface_air__temperature
model_grid_cell_center__latitude
model_grid_cell_edge~east__latitude
sea_bottom_sediment_layer__thickness
sea_photic-zone_bottom__depth
soil_sat-zone_top__depth
  • Object_name + Model_name Pattern. Some quantities are only well-defined for some idealized version or model of a given object. For example, the quantities "equatorial_radius" and "semi_major_axis_length" are only well-defined for a planet when the planet shape is approximated as an ellipsoid. As another example, the quantities "bottom_width" and "bank_angle" are only well-defined when the channel cross section shape is approximated as a trapezoid. As a third example, a quantity such as "plan curvature" only makes sense for a mathematical surface that is "twice differentiable". However, there are often other quantities that do not depend on any such assumption regarding the shape, such as "earth" + "mass" and "channel_x-section" + "perimeter". Note that model assumptions (geometric shapes in these examples) should always be included in the Model Coupling Metadata (MCM) file with an <assume> tag and a value such as "trapezoid_shaped". See CSDMS Assumption Names for more information. When a quantity depends on a "model" assumption, we insert the "model name" after the object name as in:
channel_centerline + length
channel_x-section_trapezoid + bottom_width
earth_ellipsoid + equatorial_radius
earth_mean-sea-level-datum_air + pressure
land_surface + plan_curvature
A variant of this pattern occurs when naming quantities that are associated with a named model for the object, such as the Brooks-Corey soil model or the Green-Ampt infiltration model. The model is often indicated with one or more last names of people (and often followed by the word "law"), inserted as a modifier between the object_name and the quantity_name, as in:
basin__flint_law_exponent     (vs. "flint_law_concavity_exponent")
basin__flint_law_coefficient   (vs. "flint_law_steepness_parameter")
basin_channel~longest__hack_law_coefficient
basin_channel~longest__hack_law_exponent
channel__downstream_hydraulic_geometry_width_vs_discharge_coefficient
channel__downstream_hydraulic_geometry_width_vs_discharge_exponent
earth_interior_earthquake__gutenberg-richter_law_a_parameter
glacier_ice__glen_law_coefficient
glacier_ice__glen_law_exponent
soil_water__brooks-corey_b_parameter
soil_water__green-ampt_capillary_length
soil_water__smith-parlange_gamma_parameter
soil_water__van-genuchten_alpha_parameter
or:   glacier + glen_law_strain_rate_vs_shear_stress_exponent   ??
       basin + flint_law_slope_vs_area_exponent ??
For a named, power-law model, there is generally one coefficient and one or more exponents. Interpretations of coefficients and exponents (e.g. concavity, creep, steepness) are redundant and can be excluded. In the case of multiple exponents, the name of the quantity that is being raised to a power is inserted, as in "area_exponent", "conductivity_exponent" and "slope_exponent". Note that vs is used as a special reserved word.
  • Object-as-Object Pattern (under review). The amount of a chemical species present in a sample (e.g. in atmospheric chemistry) is often expressed in terms of the amount of a particular element/constituent in the sample. For example, the term "clox" (ClOx) is used to describe a family called "chlorine radicals" that contain inorganic chlorine, and the amount of chlorine radicals is quantified as the amount of chlorine. (See: Radical.) In the CF Standard Names, the pattern "X_expressed-as-Y" is used in 149 names. In the CSDMS Standard Names, the reserved word "as" is used, as in these examples:
atmosphere_air-column_clox-as-chlorine__mass-per-area_density    (or "chlorine_radicals-as-chlorine" ?)
atmosphere_air-column_hox-as-hydrogen__mass-per-area_density 
atmosphere_air-column_nox-as-nitrogen__mass-per-area_density 
 
sea_water_diatoms-as-carbon__mass_concentration
sea_water_diatoms-as-chlorophyll__mass_concentration
sea_water_diatoms-as-nitrogen__mass_concentration
The reserved word as could also be used in situations where one measured quantity serves as a surrogate for another, perhaps as in "activity-as-ph", "pressure-as-height" or "salinity-as-electrical_conductivity".


Air

  base_object = "air"

Examples
See Attributes of the Atmosphere on the page  CSDMS Standard Name Examples.
  • This refers to the mixture of gases in Earth's atmosphere. As a simple term for a complex mixture, it is similar to terms like "soil" and even "sea_water".
  • The word "atmosphere" is sometimes used to mean a place or a container that has attributes such as "thickness". In other contexts it is used as a synonym for "air", which is the substance that occupies that "container", with attributes such as "density". (In Wikipedia, air redirects to Atmosphere of Earth.) This distinction is carefully considered when constructing CSDMS Standard Names, where the goal is for names to be consistent, unambiguous and easily understood. Note that we could use "mars_atmosphere" to refer to either the specific mixture of gases in the atmosphere of Mars or the place/container.
  • Similarly, "land_surface" by itself is taken to mean a land surface on Earth. For Mars, we could use "mars_land_surface" if the distinction was important.
  • Like water, air is generally contained within another object and can therefore be viewed as one of that object's parts. The Part of Another Object Pattern addresses this issue. So we could have "balloon_air" or "scuba_tank_air". (And perhaps "earth_atmosphere_air"?)
  • Air is also used to indicate a domain, as in traveling by land, sea or air. This is also reflected in: Army, Navy, Air Force.
  • See Atoms, Compounds, Ions and Molecules.


Animals and Plants

  object = organism_name

Examples
bass~small-mouth
bat~mexican~free-tail   (Carlsbad Caverns)
bear~alaskan~black
spider~black-widow
toad~spade-foot
 
bear~alaskan~black + max_running_speed
bear~alaskan~black~adult~male + mean_weight
bear~alaskan~black_brain-to-body + mean_mass_ratio
bear~alaskan~black + mean_digestion_period
bear~alaskan~black + mean_gestation_period
bear~alaskan~black + mean_hibernation_period
bear~alaskan~black + mean_lifetime   (or "life_time"?  "living_period"?)
bear~alaskan~black + mean_sleeping_period
bear~alaskan~black + mean_territorial_area
  • Standard vocabularies for many types of organisms already exist. For example, Yearsley et al. (2006) compiled the CSIRO Standard Fish Names in Australia. Wikipedia also has a List of Common Fish Names. Standardized names should be used whenever possible, with the source of the names provided in the associated metadata using the tag "object_name_source". However, common names are not as specific as scientific (genus-species) names. For the design goals of a "lingua franca", we could just select one source for each common or scientific name and indicate that source.

  • Note that "mean" was inserted in each of the above examples. This word removes ambiguity (i.e., it indicates an average value for a population vs. the value for an individual) but perhaps it should be placed with the metadata.

  • Note that "lifetime" is a compound word that ends in "time", which connotes units of time. This can be viewed as another variation of the Process_name + Quantity Pattern", where "life" indicates the process of "living" and we are interested in the duration of that process. We avoid "life_expectancy" here because "expectancy" is an ambiguous base quantity name, similar to expectation, better viewed as an operator. We are frequently interested in attributes of processes that act on a particular object as another type of attribute for the object.

  • Note that our lingua franca is focused on "numerical attributes" that have units, called "quantities". Animals have many other attributes, e.g. behaviors, food preferences, habitats, geographical distribution, etc. which are not quantities and are beyond the current scope.


Atoms, Compounds, Ions and Molecules

  object = [ element_name ] + [ "_atom" ]
  object = [ compound_name ] + [ "_compound" ]
  object = [ molecule_name ] + [ "_molecule"]

Examples
See Attributes of the Atoms and Attributes of Molecules on the page  CSDMS Standard Name Examples.
  • Insert the word "atom", "molecule", etc. whenever necessary to remove ambiguity between the substance and the atom (e.g. iron) or molecule (e.g. water). The absence of these extra words implies a "bulk" quantity.
  • It seems that compound is the most general term for atoms held together by some type of chemical bond. A molecule is a special type of compound that is (1) electrically neutral and (2) held together by covalent bonds. An ion is a (compound or molecule??) that carries a charge.


Channels, Streams, Rivers, Etc.

  object = "channel"

Examples
See Attributes of Channels on the page  CSDMS Standard Name Examples.
  • The word "channel" seems preferable as a general term to words like "creek", "stream" and "river" because it doesn't have a size connotation. For example, there are textbooks on "open channel flow", we talk of "channelized flow" and then there is the English Channel.
  • We could allow terms like "stream" and "river", but this will reduce the number of potential matches when coupling models.
  • Note that "channel_bank_angle" by itself would be ambiguous; is it the angle the bank makes with the vertical z-axis or with a horizontal x-axis? However, "channel_cross_section_trapezoid_bank_angle" is clear.
  • A quantity like "bottom_width" or "bank_angle" may only be well-defined for cross-sections of a particular shape, like a trapezoid. In such cases we use the Object_name + model_name Pattern.
  • We talk of "channel networks", but the network is not part of the channel, it is part of a drainage basin (e.g. basinchannel-network).
  • An outlet would be considered part of a drainage basin and not part of a channel. See the object pattern for Watershed, Basins and Catchments.


Coastlines, Shorelines and Beaches

Examples
See Attributes of Oceans (sea_shoreline) on the page  CSDMS Standard Name Examples.


Earth and Other Planets

  object = "earth"
  object = "earth_axis"
  object = "earth_ellipsoid"
  object = "earth_orbit"

Examples
See Attributes of Planets on the page  CSDMS Standard Name Examples.
  • A quantity like "equatorial_radius" or "flattening_ratio" may only be well-defined for particular planet shapes, like an ellipsoid. So we may want to insert the word "ellipsoid" for these.
  • The distance from the earth to the sun requires specifying two objects and uses the Object-to-object Quantity Pattern to produce "earth-to-sun_mean_distance".


Glaciers, Land Ice and Ice Sheets

  object = "glacier"

Examples
See Variable Names for Glaciers and Variable Names for Sea Ice on the page  CSDMS Standard Name Examples.


  • CF Standard Names use "land_ice" instead, contrasted with "sea_ice".


Hydrometeors

  object = "atmosphere_hydrometeor"

Examples
See Variable Names for the Atmosphere on the page  CSDMS Standard Name Examples.
  • This is a general term for precipitating water in any of its possible forms, including: ice, sleet, hail, rain, snow and graupel.
  • For a substance other than water, a prefix other than "hydro" should probably be inserted in front of "meteor".


Product of a Company

  object = company_name + product_name

Examples
gm_hummer_total_weight
porsche~911 + msrp_price
porsche~911 + top_speed
toyota_corolla~2008 + kelley_blue_book_price  ??
toyota_corolla~2008_fuel-tank + volume
toyota_corolla~2008 + fuel_economy   [mpg]
toyota_corolla~2008 + motor_trend_magazine_safety_rating
     (or "motor_trend_magazine" could go into metadata; how measured)
  • We would do something similar for organizations contained within other organizations, such as "us_noaa_nws" (country_agency_program). The general pattern is to go from the general to the specific.


Sea Water and Ocean

  object = "sea_water"

Examples
See Attributes of Oceans on the Examples page for many examples.
  • The word "sea_water" is preferable to "ocean" when the quantity is an attribute of the water. CF Standard Names have a different rule to decide when to use "ocean" vs. "_sea_water" (double check).

  • See Waves.


Snow

  base_object = "snow"

Examples
See Attributes of Snow on the page  CSDMS Standard Name Examples.
  • We could use "surface_snow" (maybe CF does), but is that necessary?
  • The concept of "snow" generalizes to frozen precipitation of other substances like carbon dioxide (on Mars) and methane (on Jupiter's moon, Titan). The current and natural trend is to simply call these "carbon_dioxide_snow" and "methane_snow". The word "snow" used by itself then means "water_snow". Similarly, we would use "carbon_dioxide_ice" and "methane_ice", even though the former is also known as "dry ice".


Soil

  base_object = "soil"

Examples
See Attributes of Soil on the page  CSDMS Standard Name Examples.


Surfaces and Isosurfaces

  base_object = "surface"
  base_object = "isosurface"

Examples
See Attributes of the Topography, Attributes of Oceans, etc. on the page  CSDMS Standard Name Examples.
  • Here, "surface" means a function, z(x,y), that associates a single value (usually an elevation) with every point (or grid cell) in the horizontal plane. Note that an "isosurface" may not be expressible as z(x,y), e.g. surfaces of constant pressure or temperature, etc. Isosurfaces can associate multiple values with a given (x,y) position.

  • Words like "bed", "floor" and "table" imply a surface, but we still include the word "surface" in the object name in accordance with the Object_name + Model_name Pattern. It also creates a natural grouping.

  • Quantities like aspect_angle, plan_curvature, profile_curvature, slope and slope_angle are not always well-defined for real topography. Strictly speaking, these concepts only apply to a mathematical surface that is used to approximate the topography. Quantities like slope and aspect require a surface that is smooth enough to be differentiated once. Any type of curvature (e.g. plan, profile, tangential, streamline, laplacian) requires a surface that is smooth enough to be differentiated twice. This again shows why "surface" is included in the object name in accordance with the Object_name + Model_name Pattern.

  • We often want to refer to the "top" or "bottom" surface and then just add these additional modifiers before the word surface.


Watersheds, Basins and Catchments

  object = "basin"
  object = "basin_boundary"
  object = "basin_outlet"

Examples
See Attributes of Basins on the page  CSDMS Standard Name Examples.


Waves in Air

  base_object = "wave"

Examples
atmospheric_wave~internal~gravity
atmospheric_wave~lee  (OR   atmospheric_standing_wave)
hydrostatic_wave
rossby_wave   (or planetary_wave)
  • See "Lee Wave" in Wikipedia.

  • What about "sound waves" ??


Waves in Water

  object = "sea_surface_water_wave"
  object = "water_wave~capillary"

Examples
See Attributes of the Oceans on the page  CSDMS Standard Name Examples.
  • To avoid ambiguity, always add an adjective like "surface" or "internal" in front of the word "wave". Note that "surface_wave" means "surface gravity wave" and "internal_wave" means "internal gravity wave". In both cases, gravity (or buoyancy) is a restoring force acting at the interface of two fluids with different densities.
  • Note that a "gravitational wave" is a ripple in the curvature of spacetime, first predicted by Einstein. See Wikipedia: Gravitational Wave. They are not the same as "gravity waves".
  • Other types of waves include: "breaking", "capillary", "solitary" and "tsunami". So we could have "surface_breaking_wave" and "surface_capillary_wave". Do we want to include words like "rogue", "sound", "standing", "swell" and "wind" as wave types ?? ######
  • See Sea Water.