<concept> ::= "(" <concept>
")" | <concept-reference> | <percept-reference> | <param-reference>
| <question-reference> | <variant-reference> | <correlation> |
<relevance> | <dependency> | <union> | <inversion> | <evaluation>
| <decision> | <assignment> | <merge> | <experience> | <question>
<concept-reference> ::= "[" <concept-name> "]"
<percept-reference> ::= "['" <percept-name> "']"
<param-reference> ::= "[%]"
<question-reference> ::= "[?" <opt-question-index> "]"
<variant-reference> ::= "[&" <opt-variant-addr> "]"
<correlation> ::= "(" <concept> "->" <concept>
")"
<relevance> ::= "<" <relevance_list> ">"
<relevance_list> ::= <relevance_term> | <relevance_term> ","
<opt-whitespace> <relevance_term>
<relevance_term> ::= <percent> "%" <relevance_strength>
<concept>
<relevance_strength> ::= null | "x" <strength>
<dependency> ::= "?" <concept> ":" <concept>
<union> ::= <concept> "*" <concept>
<inversion> ::= "!" <concept>
<evaluation> ::= "$" <concept>
<decision> ::= "^" <concept>
<assignment> ::= <percept-reference> <opt-whitespace> "="
<opt-whitespace> <concept>
<merge> ::= <percept-reference> <opt-whitespace> "+"
<opt-whitespace> <concept>
<experience> ::= <percept-reference> <opt-whitespace> "~"
<opt-whitespace> <concept>
<question> ::= <percept-reference> <opt-whitspace> "@"
<opt-whitespace> <concept>