The quotes are necessary if the expression evaluates to a string and
each of the alternatives is a literal string.
Here are some simple examples.
:let x = 1
:echo x == 1 ? 73 : 88
73
:echo x == 0 ? "hello" : "goodbye"
goodbye
In the first example, the expression evaluates to a number, while in
the second example the expression evaluates to a string.
Here's an example of nesting.
:let x = 2
:echo x == 1 ? "one" : x == 2 ? "two" : "something else"
two
I deliberately didn't use any parentheses to show that they're often
not necessary, although they can make expressions more clear.
If you can't get it to work, post what you've tried here and we'll
figure it out.
Regards,
Gary