Проблема заключалась в том, что сервер W3 был недоступен в то время. Код ответа HTTP 503 означает «Служба недоступна».
То, что вы сделали в своем решении, это сказали DOM-парсеру не пытаться извлекать внешние DTD. Это фактически отключает проверку по всем DTD, которые ваше приложение не может найти локально. Я считаю, что это также имеет побочный эффект не заполнение DOM значениями по умолчанию для атрибутов.
Лучшим решением было бы получить копии любых внешних DTD, которые ваше приложение может использовать, и либо подключить их в ваше приложение, либо сохранить их в постоянном локальном кэше. Это защищает ваше приложение от простоев внешнего сервера, а также снижает нагрузку на инфраструктуру W3.
Другой альтернативой может быть настройка приложения на использование кэширующего веб-прокси.