Variables occurring anywhere in a KE text (e.g., inside rule statements) must begin with a question mark (?). This convention signals the knowledge entry facilities to treat the object as a variable, rather than as a constant.
It is not necessary to include the initial "#$" in references to known constants (i.e., constants which Cyc already knows to exist), though it is not disallowed. For example, one could use either #$Siegel or Siegel; #$KeithsHouse or KeithsHouse. Accepted practice is to write KE text without the "#$" prefix.
Strings referred to in KE text (such as entries on the #$comment predicate for a constant) must be delimited by double quotes (e.g., "This is a string."), as in Common Lisp and C.
To use double quotes inside comments, prefix them with a backslash. (e.g. "This comment \"contains\" double quotes.")
KE File preserves tab and return/newline/linefeed characters that occur inside strings, but will remove any non-printing characters.
Keywords occurring in formulas must be prefixed with a colon. (e.g. "f: (genKeyword PublicConstant :PUBLIC-CONSTANT).")
Symbols occuring in formulas must be prefixed with a single quote. (e.g. "f: (afterAdding genls 'GENLS-AFTER-ADDING).")