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.[1]

System edit

 
Syntax diagram of the Color Naming 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:.[2][3]

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 edit

There have been variations of the CNS proposed for inclusion into CSS that are more compatible with existing schemes.[4]

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' | …

See also edit

ISCC-NBS System - a competing color naming system

References edit

  1. ^ Berk; Brownston; Kaufman (1982). "A New Color-Naming System for Graphics Languages". IEEE Computer Graphics and Applications. 2 (3): 37. doi:10.1109/MCG.1982.1674223. S2CID 16846774.
  2. ^ Tab Atkins Jr.: The CNS Color Naming System on adding CNS to CSS Color level 4
  3. ^ "CNS". Crissov. Archived from the original on 22 January 2013. Retrieved 1 August 2013.
  4. ^ Benjamin D. Gray (May 2002). "New CSS3 Color Names".