On Mar 17, 2008, at 9:34 PM, Dan Newman wrote:
I've been looking over the DTD version 2.0 Release Candidate 1,
applying it to validation of a dataset.
To do this I've been using emacs nxml-mode, which requires pre-
translation of the DTD to a RELAX-NG schema format. The translation
is performed automatically, but the change in format made a quirk in
the DTD mor obvious. DAVEfunc.dtd does not set a default namespace,
but the included MathML2 DTD does. This can have the effect of
competing namespaces, which will confuse some validating parsers.
It has absolutely no effect on any application of the DTD to data
However, to avoid the problem entirely, I'd like to suggest that
DAVEfunc should be given a default, blank (or otherwise if you like)
namespace, and that this should be allocated before the mathml2
entity is declared. I have attached a version of the DTD with this
change included. Please consider it.
I too use emacs with nxml-mode and have long wondered how to resolve
this issue; I had about given up on getting at the root of the
problem. Thanks for figuring it out!
It may well be time to give DAVEfunc a namespace to avoid collisions.
I'm working on release candidate 2 and we may want to add a namespace
such as dml.