In language theory, a non-terminal is a symbol which can be transformed via a transformation rule into another non-terminal, an ordered list of non-terminals, a terminal, or an ordered list of terminal|terminals.