The grammar for the ASI language is described in the table that follows using BNF notation. An epsilon (ε) is shown to indicate the possibility of an empty clause.
| ASI_OLD | |
|---|---|
| Clause | Definition |
| statement | condition statement_2 |
| statement_2 | logic_symbol statment | ε |
| condition | lbracket statement rbracket | residue condition_2 | select_statement condition_2 | score_statement condition_2 |
| condition_2 | logic_symbol condition | ε |
| score_statement | score from lbracket score_list rbracket |
| score_list | residue_clause score_value score_list_2 |
| score_list_2 | comma score_list |
| residue_clause | lbracket residue_clause rbracket | residue residue_clause_2 |
| residue_clause_2 | logic_symbol residue_clause | ε |
| select_statement | select select_statement_2 |
| select_statement_2 | atleast select_statement_3 | notmorethan from lbracket select_list rbracket |
| select_statement_3 | from lbracket select_list rbracket | logic_symbol notmorethan from lbracket select_list rbracket |
| select_list | residue select_list_2 |
| select_list_2 | comma select_list | ε |
