As this question came up on StackOverflow and cypher doesn't support ternary operators for default values (except for coalesce) yet, I want to share the "hack" I wrote.
http://stackoverflow.com/questions/11629913/ternary-operator-default-value-in-neo4j-cypher/11773740
if an employee's city is Delhi, return 5 else return 10
Unfortunately it is not supported out of the box but here is a hack to do it, using filter, head and collection literals.
The idea is to have a two element list and a filter expression that becomes true for the first element for your "true-branch" and true for the second element in the list.
see this console example:
http://console.neo4j.org/r/6tig7g
start n=node(5) return head(filter( a in [5,10] : n.city = 'DELHI' OR a = 10))