В python Я проверяю по данному DTD в python 3 следующим образом:
dtd = etree.DTD(StringIO(my_dtd))
root = etree.fromstring(st)
is_valid = dtd.validate(root)
И этот my_dtd я определил как строку в python файле my_dtd .py следующим образом:
my_dtd = """<!--
my.dtd
...
"""
Но вместо того, чтобы поместить это как строку в файл python, я бы хотел прочитать ее прямо my.dtd. In В связи с этим я прошел следующий пост: Python xml etree DTD из источника StringIO? , но у меня нет четкого представления о том, как это сделать.