" 
 That's right, Terminal and non-terminal functions only handles CFL (without saying so, as many wikipedia articles do). It is mainly about parse trees and uses some unusual notation (viz. ""function"", which occurs neither nor the only source , nor in the parse tree article). Maybe a sentence that nonterminal symbols and terminal symbols correspond to interior and leaf nodes in a CFG parse tree, respectively, could be used. And the example from the picture seems more understandable (everyone who learned English grammar might have seen such a tree) than the  example (which doesn't fit the previous grammar definition but uses some unexplained extensions for optionality and repetition). 

 It could look like this (wording subject to improvements): 

  
 . Nonterminal symbols and terminal symbols correspond to interior and leaf nodes, respectively.]] 
 As an example, consider the following context-free grammar for simple English sentences. 
 N = { S, NP, VP, Det, N, V, ... }, 
 Σ = { John, ball, hit, the, ... }, 
 start symbol is S, 
 P is as follows: 

 S   := NP VP | ... 
 VP  := V NP  | ... 
 NP  := Det N | ... | John | ... 
 N   := ball | ... 
 V   := hit | ... 
 Det := the | ... 

 In this example, nonterminal symbols denote grammatical categories, like ""sentence"" (abbreviated by ""S""), ""noun phrase"" (""NP""), etc., while terminal symbols are English words, like ""John"", ""ball"", etc. 

 -   "