Check out http://www.jrmediacenter.com/DevZone/DBExpressions.htm
I think you have to add a "/" before any characters you want read as characters, and not expression language.
I have already been using the expression documentation page. It really doesn't say anything about syntax or the details of evaluating an expression.
I understand the point about the / in front of a character to be treated as ordunary text. However, the composer name is inside [] which is supposed to means that if the text inside the brackets isn't a field name, it is treated as plain text.
For now, I tried just removing the comma inside the Composer name. However, I still have a problem with syntax. Commas are used to separate items in a list and commas are used to separate arguments to functions. However, there is nothing to mark the beginning and end of a list mentioned in the expressions documentation page. So I tried parens to mark the beginning and end of the first argument to the if function.
Here is a simplified example of what I am using:
if(([Composer]=[Beethoven],[Berlin]),[Composer],Minor Composer)
In the Composer pane I see lines like this
,Beethoven,Minor Composer)
and
,Bizet,Minor Composer)
It appears that the if() function is consuming the first argument testing the Composer values against the list but BOTH the second and third arguments are being output.
By now, I've done a lot of messing around to undertsnad what's going on. I think my attempt to do construct this Major/Minor Composer pane is about at an end.
Thanks again for your suggestion which is very useful to me.
Bill