[Home] [By Thread] [By Date] [Recent Entries]

  • From: Mike Sokolov <sokolov@i...>
  • To: "David A. Lee" <dlee@c...>
  • Date: Thu, 03 Sep 2009 10:31:55 -0400

Yes I liked your solution, which I found earlier via web search.  
Definitely cleaner than mine.  It doesn't however, handle the truly 
pathological case of a malformed DOCTYPE decl as in:

<!DOCTYPE TEI PUBLIC "name removed to protect my client">

I guess a url following the name is required in this case.

Perhaps it's a *bad idea*, but I am trying to allow this by ignoring 
it.  At least the angle brackets match. Sigh.

-Mike

David A. Lee wrote:
> I solved this problem in a different that is less destructive.  This 
> also works to replace a DTD with a different one or to force 
> validation on a schema even if a non-existant DTD is specified.  
>
> This particular implementation  requires using the SAXParser but I 
> belive the idea would work with other parsers that provide similar 
> functionality,
> namely an override of "resolveEntity".  The key trick is to resolve 
> all DTD's with a "NullInputStream" ( these are trivial to write so I 
> wont supply the code here)
> An empty DTD file validates any XML (atleast it does in my tests).
>
> Here's the snippet


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member