B
B Mahoney
I have a simple Kid template document:
<?xml version='1.0' encoding='utf-8'?>
<?python
import time
title = "A Kid &anything; Template"
?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlnsy="http://purl.org/kid/ns#".... (snip)
</html>
This runs as expected but now I would like to load a DTD without
tampering with this xml file
In the expat parser __init__ after setting other handlers
for parser, I have added:
parser.ExternalEntityRefHandler = self._ExternalEntityRefHandler
parser.UseForeignDTD(1) (also tried True)
Which I understand at some point will call
self._ExternalEntityRefHandler
with None for args and I must have code to get this other dtd.
I have done regular ExternalEntityRefHandlers before.
As required, these two lines occur before my Parse() call.
Perhaps I misunderstand the sequence, or need something more in my
xml file, but my _ExternalEntityRefHandler is never called. The
process behaves as if I never added these two lines.
Help?
<?xml version='1.0' encoding='utf-8'?>
<?python
import time
title = "A Kid &anything; Template"
?>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlnsy="http://purl.org/kid/ns#".... (snip)
</html>
This runs as expected but now I would like to load a DTD without
tampering with this xml file
In the expat parser __init__ after setting other handlers
for parser, I have added:
parser.ExternalEntityRefHandler = self._ExternalEntityRefHandler
parser.UseForeignDTD(1) (also tried True)
Which I understand at some point will call
self._ExternalEntityRefHandler
with None for args and I must have code to get this other dtd.
I have done regular ExternalEntityRefHandlers before.
As required, these two lines occur before my Parse() call.
Perhaps I misunderstand the sequence, or need something more in my
xml file, but my _ExternalEntityRefHandler is never called. The
process behaves as if I never added these two lines.
Help?