At 11:02 20/09/2008, Jim Idle wrote: >event: ^( EVENT > T1 ... > | T2 ... > | T3 ... > ); I'm pretty sure you'll also need an extra set of parentheses there: event : ^( EVENT ( T1 ... | T2 ... | T3 ... ) ); Or alternatively a subrule: event : ^( EVENT eventdetails ); eventdetails : T1 ... | T2 ... | T3 ... ;