[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [xml-dev] Java, DTD locally
- From: "Robert C. Lyons" <firstname.lastname@example.org>
- To: Randall Britten <email@example.com>, firstname.lastname@example.org
- Date: Fri, 02 Nov 2001 09:47:19 -0500
If all the XML documents to be validated contain a
DOCTYPE that points to the remote official copy of
the DTD, then your system could use an
org.xml.sax.EntityResolver to substitute the remote
DTD with a local copy. For example, the
could return an InputSource for a local copy of the
DTD when it is asked to resolve the entity whose
public ID is "-//OurMessage//EN" and whose system ID
Hope this helps.
<sig name = 'Bob Lyons'
title = 'XML and Java Consultant'
company = 'Unidex, Inc.'
phone = '+1-732-975-9877'
email = 'email@example.com'
url = 'http://www.unidex.com/'
product = 'XML Convert: transforms flat files to XML and vice versa' />
We are using Java and SAX. Our system is distributed and sends text
messages between nodes.
We would like to avoid having to have a web server as part of the system, so
each node will have the DTD's stored locally.
How can we validate the received XML text against a DTD which resides on the
local file system.
In other words, we want to avoid having to include the DOCTYPE tag that
points at a URL, but rather choose the DTD just prior to parsing, let the
parser know which DTD we are using, and have the parser then validate using
this "last minute" DTD.
So the DOCTYPE line below would be omitted.
<!DOCTYPE our-message PUBLIC "-//OurMessage//EN"
Rest of XML