В l xml, как мне проверить на соответствие DTD? - PullRequest
0 голосов
/ 30 января 2020

Я немного растерялся. У нас есть собственное DTD, оно живет на нашем сервере сборки. Вдали от нашего сервера сборки мой python скрипт используется другими командами как часть большой системы. В моем сценарии я использую l xml для записи XML файлов на основе некоторого JSON ввода, который обрабатывается.

Вот мое замешательство. В моем скрипте у меня есть следующее:

sumheader = "<?xml version \"1.0\" encoding=\"UTF-8\"?><!DOCTYPE my summary PUBLIC \"-//companyx//DTD companyx DITA special Summary 1.2.1//EN\" \"specialsummary.dtd\">"

Это передается l xml при построении дерева. Прежде чем записать файл, я хочу проверить XML, чтобы убедиться, что он действителен. Поскольку DTD не живет в различных системах, использующих мой сценарий, и некоторые из этих систем не имеют доступа к серверу сборки, я предполагаю, что мне нужно было бы поместить пользовательское DTD где-нибудь в репозитории git, чтобы при обновлении их git репо, они будут иметь доступ к пользовательскому DTD? Или есть другой способ сделать это?

С деревом, уже находящимся в памяти, похоже, что хлопотать данк для проверки перед записью файла, но выяснить, как дать l xml знать, как найти правильный DTD для проверки меня немного озадачил.

...