commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <james_strac...@yahoo.co.uk>
Subject Re: [digester] forcing a specific DTD
Date Tue, 13 Nov 2001 18:09:32 GMT
FWIW Xerces has some properties for setting the location of an XML Schema
document via SAX properties which allows you to perform validation without
the source document containing a schema declaration. I don't think
specifying a DTD is possible yet.

Other than that you could use Sun's MSV library to validate a SAX event
stream using a DTD, XML Schema, RelaxNG document etc.

http://www.sun.com/software/xml/developers/multischema

James

----- Original Message -----
From: "Craig R. McClanahan" <craigmcc@apache.org>
> On Tue, 13 Nov 2001, Tal Dayan wrote:
>
> > Date: Tue, 13 Nov 2001 09:04:43 -0800
> > From: Tal Dayan <tal@zapta.com>
> > Reply-To: Jakarta Commons Developers List
<commons-dev@jakarta.apache.org>
> > To: commons-dev@jakarta.apache.org
> > Subject: [digester] forcing a specific DTD
> >
> >
> > We plan to use Digester for parsing XML based configuration files and
would
> > like
> > to use a DTD to save some validation code. From the Digester
documentation
> > it seems that the DTD based validation works as follows, the user
specifies
> > an arbitrary DTD, and digester.parse() makes sure the XML document
matches
> > the user's specified DTD.
> >
> > We have two problems with this approach:
> >
> > 1. When we parse a file, we know what DTD it should conform to so there
is
> > not need require the user to type it (e.g. when Tomcat reads server.xml,
the
> > user does not care about the DTD, it should be up to Tomcat to do the
magic
> > of validating it).
> >
> > 2. The user can specify arbitrary DTD but we want to validate against a
> > *specific* DTD. It does not help us much if we know that the XML
conforms to
> > some arbitrary DTD the user specified (this reminds me an old joke, a
man is
> > asked by the bank manager to identify himself, he pull a picture of from
his
> > pocket and says 'that's me').
> >
> > Any idea how to address these issues ?
> >
> > A good solution would be example a digester.forceSpecificDTD(...) method
> > that forces a specific DTD for that instance of the parser. This makes
sense
> > since the digester is configured anyway (via the set of rules) to parse
a
> > specific type of XML document.
> >
> > Thanks,
> >
> > Tal
> >
>
> This sounds like it might be an interesting idea, but I don't know how to
> implement it :-(.  Digester uses a SAX parser via the JAXP/1.1 APIs
> underneath the covers.  How do you tell the parser to use an arbitrary DTD
> instead of whatever is specified in the document being parsed?
>
> Craig
>
>
> --
> To unsubscribe, e-mail:
<mailto:commons-dev-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail:
<mailto:commons-dev-help@jakarta.apache.org>


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <mailto:commons-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:commons-dev-help@jakarta.apache.org>


Mime
View raw message