BNF Grammar for PPDDL1.0
We provide the full syntax for PPDDL1.0 using an extended BNF notation
with the following conventions:
- Each rule is of the form
non-terminal
::= expansion.
- Alternative expansions are separated by a vertical bar
(“|”).
- A syntactic element surrounded by square brackets (“[“ and
“]”) is optional.
- Expansions and optional syntactic elements with a superscripted
requirements flag are only available if the requirements flag is
specified for the domain or problem currently being defined. For
example, [
types-def]
:typing
in the syntax for
domain definitions means that
types-def
may only occur in
domain definitions that include the :typing flag in the requirements
declaration.
- An asterisk (“*”) following a syntactic element x means
zero or more occurrences of x; a plus (“+”) following
x means at least one occurrence of x.
- Parameterized non-terminals, for example
typed
list (x), represent separate rules for each instantiation of the
parameter.
- Terminals are written using typewriter font.
- The syntax is Lisp-like. In particular, case is
not significant (for example, ?x and ?X are equivalent),
parenthesis are an essential part of the syntax and have no semantic
meaning in the extended BNF notation, and any number of whitespace
characters (space, newline, tab, etc.) may occur between tokens.
Subsections
Håkan L. S. Younes
2005-12-06