24 Aug
2015
24 Aug
'15
8:14 a.m.
If it comes to a separate processing step, I'd prefer a post-processor that detects this and wraps the offending reference in parens. perl -pe 's/(%[A-Za-z][A-Za-z0-9.-]+;),/($1),/g;' < in.dtd > out.dtd Or, as I said, *all* of 'em. perl -pe 's,%[A-Za-z][A-Za-z0-9.-]+;,($&),g;' < in.dtd > out.dtd Of course, these make the mistake of hitting those that are in comments, too. But since the DTD file is generated output that we generate, this doesn't worry me too much.
I agree with Syd: the last thing we want to do is hobble Pure ODD for the sake of supporting DTDs.
How about a pre-processor step that detects this Pure ODD context and wraps it in a sequence?