Oh, boy. Thanks, Matt. You guys are way over my head! I'm assuming that's all through code??? If so, what language is that?
I did come up with a solution for each of the three as follows:
1) Convert all to uppercase:
translate(., "abcdefghijklmnopqrstuvwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ")
2) Convert first letter to uppercase:
concat(substring(translate(., "abcdefghijklmnopqrstuvwxyz", "ABCDEFGHIJKLMNOPQRSTUVWXYZ"), 1, 1), substring(., 2, string-length(.) - 1))
3) Format a telephone number as 999 999-9999:
I adapted S.Y.M Wong A Ton's solution for formatting a time field found here: http://enterprise-solutions.swits.net/infopath/auto-format-time-on-lostfocus.htm.
He was so taken with the idea of using it for telephone numbers that he's re-thinking the solution and will post it as a new receipe this weekend.
I will also save what you've posted as an example of doing it with code, correct? ;-)