No sé que libreria es ni para que sistema operativo ni para que lenguaje, pero seguro que hay una función que dado un DTD te devuelva un xml, a partir de ahi , comparas los 2 XML y ahí tienes la respuesta.
Igual tienes que modificar algo , pero bueno ,para ir tirando te servirá y no perderás casi tiempo programando eso .
Saludos