Savvy DOCX Recovery 2.0.3
ML was designed from the beginning to be intolerant of errors. This XML 'precision decision' adversely affects MS Word's corruption recovery. If there is one error in the document.xml subfile where all the docx text is stored within the DOCX, MS Word will stop with an error. This is frustrating in a data recovery situation where partial recovery is better than nothing.
Savvy Word Recovery attempts to do precise surgery on corrupt Word documents of the 'Unspecified' and '...end tag of the element must match the element type in the start tag' error types to reorder or excise bad XML tags.
For other types of errors it uses the command line app xmllint first to attempt to repair corrupt XML subfiles particularly the document.xml one.
If this doesn't work a third attempt is made where the XML subfiles are truncated at the first XML error, and the correct ending tags are again added with xmllint.
Finally if all else fails SilverCoder's DocToText is used to try to extract text.