I ran into this issue at some point, if I recall correctly I had to scan my data and replace some special characters in one or more text fields
See this note for more and another way to potentially get around it. I prefer the streaming approach, but have used graphml as well, there are pros and cons of each.
In my experience any sizable dataset will have "interesting" characters in the text somewhere...