Standard Name grammar in Prolog

This is the home page for a grammar for CF-metadata "standard names" in Prolog.

Prolog source for CF-metadata Standard Names grammar

This page contains the actual Prolog grammar rules for CF-metadata "standard names".  

This is actually the master copy, which can be accessed by Prolog programs using an http library.    Therefore, if you have edit permissions for this page, please change the content below the horizontal line only of you know what you are doing!


standard_names --> standard_name1.
standard_names --> standard_name1, standard_names.

standard_name1  --> surface, component, standard_name, at_surface, in_medium,
                    due_to_process, where_type, assuming_condition.

standard_name  --> basename.

standard_name  --> [change,over,time,in], standard_name.
standard_name  --> [convergence], [of], standard_name.

standard_name  --> [horizontal], [convergence], [of], standard_name.
standard_name  --> [correlation,of], standard_name, [and], standard_name.
standard_name  --> [correlation,of], standard_name, [and], standard_name, [over], standard_name.
standard_name  --> [covariance,of], standard_name, [and], standard_name.
standard_name  --> [covariance,of], standard_name, [and], standard_name, [over], standard_name.
standard_name  --> direction, [derivative,of], standard_name.
standard_name  --> [derivative,of], standard_name, [wrt], standard_name.
standard_name  --> [direction,of], standard_name.
standard_name  --> [divergence,of], standard_name.
standard_name  --> [horizontal,divergence_of], standard_name.
standard_name  --> [histogram,of], standard_name.
standard_name  --> [histogram,of], standard_name, [over], standard_name.
standard_name  --> [integral,of], standard_name, [wrt], standard_name.


basename -->  [amount].
basename -->  [area].
basename -->  [area,fraction].
basename -->  [density].
basename -->  [energy].
basename -->  [energy,content].
basename -->  [energy,density].
basename -->  [frequency].
basename -->  [frequency,of,occurence].
basename -->  [heat,flux].
basename -->  [heat,transport].
basename -->  [horizontal,streamfunction].
basename -->  [horizontal,velocity,potential].
basename -->  [mass].
basename -->  [mass,flux].
basename -->  [mass,fraction].
basename -->  [mass,mixing,ratio].
basename -->  [mass,transport].
basename -->  [mole,fraction].
basename -->  [mole,flux].
basename -->  [momentum,flux].
basename -->  [partial,pressure].
basename -->  [period].
basename -->  [power].
basename -->  [pressure].
basename -->  [probability].
basename -->  [radiative,flux].
basename -->  [specific,eddy,kinetic,energy].
basename -->  [speed].
basename -->  [stress].
basename -->  [temperature].
basename -->  [thickness].
basename -->  [velocity].
basename -->  [volume].
basename -->  [volume,flux].
basename -->  [volume,fraction].
basename -->  [volume,transport].
basename -->  [vorticity].


assuming_condition --> [assuming], condition.
assuming_condition --> [].

condition --> [clear,sky].
condition --> [deep,snow].
condition --> [no,snow].


component --> direction, direction.
component --> direction.
component --> [].


direction --> [upward].
direction --> [downward].
direction --> [northward].
direction --> [southward].
direction --> [eastward].
direction --> [westward].
direction --> [x].
direction --> [y].
direction --> [].


in_medium --> [in], medium.
in_medium --> [].

medium -->    [air].
medium -->    [atmosphere,boundary,layer].
medium -->    [mesosphere].
medium -->    [sea,ice].
medium -->    [sea,water].
medium -->    [soil].
medium -->    [soil,water].
medium -->    [stratosphere].
medium -->    [thermosphere].
medium -->    [troposphere].


at_surface --> [at], surface.
at_surface --> [].

surface -->   [toa].
surface -->   [tropopause].
surface -->   [surface].
surface -->   [adiabatic,condensation,level].
surface -->   [cloud,top].
surface -->   [convective,cloud,top].
surface -->   [cloud,base].
surface -->   [convective,cloud,base].
surface -->   [freezing,level].
surface -->   [ground,level].
surface -->   [maximum,wind,speed,level].
surface -->   [sea,floor].
surface -->   [sea,ice,base].
surface -->   [sea,level].
surface -->   [top,of,atmosphere,boundary,layer].
surface -->   [top,of,atmosphere,model].
surface -->   [top,of,dry,convection].
surface -->   [].


due_to_process --> [due,to], process.
due_to_process --> [].

process -->   [advection].
process -->   [convection].
process -->   [deep,convection].
process -->   [diabatic,processes].
process -->   [diffusion].
process -->   [dry,convection].
process -->   [gravity,wave,drag].
process -->   [gyre].
process -->   [isostatic,adjustment].
process -->   [large,scale,precipitation].
process -->   [longwave,heating].
process -->   [moist,convection].
process -->   [overturning].
process -->   [shallow,convection].
process -->   [shortwave,heating].
process -->   [thermodynamics].


where_type --> [where], wheretype.
where_type --> [].

wheretype --> [cloud].
wheretype --> [land].
wheretype --> [open,sea].
wheretype --> [sea].
wheretype --> [sea,ice].
wheretype --> [vegetation].
wheretype --> [].