After a bit more investigation it would appear that YQL is inserting the underscores in my JSON keys, so that "Tom Jones" becomes "Tom_Jones". While when I have spaces in my value it leaves them along, such as:
And all handled it as if it was valid JSON. I have not been able to find anything in the JSON spec that states that a key's string must not have spaces, or that they should be replaced by an underscore. Am I overlooking something or is this an opinion of JSON that YQL is asserting?