Well, if the data you are reading contains a " it will terminate the string when it is parsed. Say your string contains `He said "hello"` (is. as read by the backend). You then wrap it in double quotes and give it to the parser. It is now `"He said "hello""`. The result is the string "He said" and then a parse error because 'hello"" is not valid input.

Also have to be careful with use of `\` - it must be specified how it is used as an escape mechanism. There is no such thing in hiera1, but the Puppet parser uses escapes to embed " new-lines etc.