Subj : Re: help with ebnf for ebnf newbie? To : comp.programming From : pantagruel Date : Thu Sep 15 2005 03:43 am '"callid=" is followed by a comma and "callfrom=" is not. ' oops, typo there. "Can be empty? " Theoretically as none of the fields are required but I think for a good order it will be specified that it cannot be empty. but if: ::= | "," ::= name "=" value then won't that allow callid=wotcha so it should be: ::= | "," ::= name "=" value Values can include spaces, names can theoretically include spaces however I think it would make sense to limit spaces as well where names are concerned. " you should probably concatenate instead since you seem to want both callid and callfrom on the same line. " yeah, this is the part where I have the biggest trouble, there is a list of known names none of which are required. Unfortunately don't know how to represent these names as optional, with the possibility of other user defined names and values. for example before where I said: callid=wotcha,callfrom=whoyathunk,testing=othervalue it should also just as well match callfrom=whoyathunk,testing=othervalue,callid=wotcha .