The comment in the manual re the default encoding for this function is surely incorrect. What the expat function does is surely to give you the ability to _override_ the encoding given in the file, which would mean the default encoding is that given in the file. And the default for xml files, i.e. if no encoding is specified, is utf-8.
Some examples of when you would use the source and target encoding would be useful.