2009-03-20 conditions (draft) comparation = { dpcomparation | lvcomparation | stringcomparation } dpcomparation = dpexpression "<" | "<=" | ">" | ">=" | "==" | "!=" dpexpression lvcomparation = lvexpression "<" | "<=" | ">" | ">=" | "==" | "!=" lvexpression stringcomparation = """ string """ "<" | "<=" | ">" | ">=" | "==" | "!=" """ string """ logicexpression = ["!"] logicterm { "&&" ["!"] logicterm } logicterm = logicfactor { "||" logicfactor } logicfactor = comparation | logicfunction | logicconstant | "(" logicexpression ")" logicfunction = name "(" logicexpression {"," logicexpression} ")" name = "a"|..|"z" {"a"|..|"z"|"0"|..|"9"} logicconstant = name dpcondition = logicexpression "?" dpexpression ":" dpexpression lvcondition = logicexpression "?" lvexpression ":" lvexpression stringcondition = logicexpression "?" """ string """ ":" """ string """