Recently I came across this error while trying to publish a translated application. The application needed to be translated in the polish language, this was the first time that I came across a language with special signs in it.
I quickly found out that I cannot just save the xliff file on my windows machine, I need to choose the correct type of file otherwise the special characters will be lost. So the translated language is polish and my target database has the WE8MSWIN1252 character set.
I saved the xliff file with type Unicode file using notepad. When I tried publishing the next error appeared:
ORA-31011: XML parsing failed. ORA-19202: Error occurred in XML processing ( LPX-00216: Invalid character 0 (0x0). Error at line 1 ).
Not really knowing what the problem could be I tried saving it as UTF8 type file with notepad. If I tried to publish the new file I got a different error:
ORA-31011: XML parsing failed. ORA-19202: Error occurred in XML processing( LPX-00210: ‘<' expected instead of '¿'. Error at line 1 ).
After some research I found out that notepad(Microsoft) adds a BOM (Byte Order Mark), these are 3 bytes at the start of the document that indicate the character encoding of the document. So I tried a non-Microsoft tool like ‘UltraEdit’ and saved my document with type UTF-8 – NO BOM. Now I could perfectly upload and publish my application.