When the SharePoint 2003 Document event template is used to upload documents to SharePoint and an XML Field is used as the source for document to be uploaded, then characters with an ASCII value above 128 will be replaced by a question mark character [?]. This is because the code generated by the SharePoint 2003 Document server event template uses ASCII encoding.
To correct this make the following code change in the SharePoint 2003 Document server event template code. Replace the line of code that says:
oByte = System.Text.ASCIIEncoding.ASCII.GetBytes(K2.ProcessInstance.XmlFields["K2InfoPathSchema"].Value);
With these two lines:
System.Text.UTF8Encoding oTextEncoder = new System.Text.UTF8Encoding();
oByte = oTextEncoder.GetBytes(K2.ProcessInstance.XmlFields["K2InfoPathSchema"].Value);