The following set of grammars define the syntax of the JDO Query Language. Terminal symbols are shown in bold. Nonterminal symbols are shown in italic. The name of a nonterminal, followed by a colon, introduces the definition of the nonterminal. Subsequent lines specify one or more alternatives for the nonterminal with a level of indentation. A blank line indicates the end of the alternatives. An optional symbol in the syntax may occur with the nonterminals DeclareParameters, DeclareVariables, DeclareImports, and SetOrdering.