DTD не помогает разобрать XML, но обеспечивает элементарную проверку путем определения определенных правил для документа. Если документ нарушает правила валидации, синтаксический анализ должен произойти сбой (или выдать предупреждающее сообщение, которое должно зависеть от конфигурации валидаторов). Они могут назвать это «полезным», потому что ваш навигационный код DOM сможет сделать более точные предположения о структуре документа, не опасаясь грубого сбоя.
Они, вероятно, хотят, чтобы вы включили DTD, потому что в противном случае DTD должен быть распознан по идентификатору документа PUBLIC / SYSTEM и где-то размещен. Или они должны иметь предопределенное DTD в исходном коде (также версия этого «хостинга где-то»), что может быть невозможным, если один и тот же код должен обрабатывать разные документы без предварительного знания структуры.
Заявление о нахождении дубликатов может быть проще, потому что они планируют выбросить документ в случае дубликата; не уверен, насколько это полезно для соединений, не зная деталей нарезки и поворота.