I'm wondering, since XMP is XML-friendly, shouldn't xmpMetadata decode HTML characters references?
exiftool -tagsfromfile img.jpg img.xmp produces a XMP where & (&), ' ('), " ("), > (>), and < (<) are escaped. On the other hand
exiv2 ex -e xX img.jpg is fine with quotes, but escapes linefeed (
) among others.
Or perhaps there another way to circumvent HTML character references?