The Color Naming System (CNS) is a systematic notation for named colors for computer applications using English terms created by Berk et al. in 1982.
System
CNS uses ten color names, three of which (black, white, gray) are special, and has them combined or prefixed with several modifiers.
The system expressed in Backus–Naur form looks something like this:.
named-color := gray-color | chromatic-color
gray-color := ‘black’ | ‘white’ | lightness gray
gray := ‘gray’ | ‘grey’
chromatic-color := [ tint | shade ] hue | [ lightness || saturation ]? hue
tint := ‘whitish’ | ‘pale’ | ‘brilliant’ | ‘vivid’
shade := ‘blackish’ | ‘dim’ | ‘deep’ | ‘vivid’
saturation := ‘grayish’ | ‘moderate’ | ‘strong’ | ‘vivid’
lightness := ‘moderate’ | ‘very’? [ ‘dark’ | ‘light’ ]
hue := splash-color? base-color | base-color ‘-‘ base-color
base-color := ‘red’ | ‘orange’ | ‘brown’ | ‘yellow’ | ‘green’ | ‘blue’ | ‘purple’
splash-color := ‘reddish’ | ‘orangish’ | ‘brownish’ | ‘yellowish’ | ‘greenish’ | ‘bluish’ | ‘purplish’
Derivations
There have been variations of the CNS proposed for inclusion into CSS that are more compatible with existing schemes.
color := [saturation || lightness || transparency] hue
saturation := absolute saturation-value | saturation-value relative
saturation-value := ‘dull’ | ‘bright’
lightness := absolute lightness-value | lightness-value relative
lightness-value := ‘dark’ | ‘light’
absolute := [modifier ‘-‘]?
modifier := ‘extra’ | ‘semi’
relative := ‘er’
transparency := [‘semi-‘]? opacity-value
opacity-value := ‘opaque’ | ‘transparent’
hue := prime | general | special
prime := ‘red’ | ‘green’ | ‘blue’ | ‘cyan’ | ‘magenta’ | ‘yellow’ | ‘white’ | ‘black’
general := ‘navy’ | ‘lime’ | ‘teal’ | ‘aqua’ | ‘maroon’ | ‘purple’ | ‘fuchsia’ | ‘olive’ | ‘gray’ | ‘silver’
special := extra | composite ; composite ≈ prime ‘-‘ prime
extra := ‘pink’ | ‘brown’ | ‘tan’ | ‘orange’
composite := ‘yellow-green’ | ‘green-cyan’ | ‘cyan-blue’ | ‘blue-magenta’ | ‘magenta-red’ | …
Source From Wikipedia