Re: [xml] xmllint: validating a document that doesn't specify a DTD

From: Date: Sat, 21 Nov 2009 11:56:15 +0000
Subject: Re: [xml] xmllint: validating a document that doesn't specify a DTD
References: 1 2 3 4 5  Groups: php.doc 
Request: Send a blank email to phpdoc+get-969381147@lists.php.net to get a copy of this message
On Sat, Nov 21, 2009 at 02:12, Hannes Magnusson <hannes.magnusson@gmail.com> wrote: > On Tue, Nov 17, 2009 at 18:31, Daniel Veillard <veillard@redhat.com> wrote: >> On Tue, Nov 17, 2009 at 05:03:41PM +0100, Murray Cumming wrote: >>> On Tue, 2009-11-17 at 14:24 +0100, Daniel Veillard wrote: >>> > On Tue, Nov 17, 2009 at 01:33:44PM +0100, Murray Cumming wrote: >>> > > Should I be able to validate an XML document (such as a .glade file) >>> > > that has no DOCTYPE line, and therefore doesn't specify a DTD? >>> > > >>> > > When I try it with xmllint, I get this error >>> > >   validity error : Validation failed: no DTD found ! >>> > > even when I have specified a local DTD with --dtdvalid. >>> > >>> >   Works for me with the version from git head: >>> >>> Thanks. I was actually using >>>   xmllint --valid --dtdvalid mydtd.dtd mydoc.xml >>> >>> So is --dtdvalid an alternative to --valid rather than a way of using >>> --valid? >> >>  and alternative, as DTD validation as defined in the XML-1.0 spec >> is --valid i.e. validating as parsing based on DOCTYPE contained in >> the document, and --dtdvalid is just a different kind of validation >> closely related, but certainly different, and in subtle case you may >> see different results (but in general it will be the same !) >> > > > I did not know that. > This doesn't however seem to be implemented in PHP, Rob... :) > > Is this something we can implement? Pretty-please? :) > > AFAICT it could help us _massively_ when rendering "standalone > extension" (and possibly per-file) in the documentations. > The "root file" (manua.xml) could still have the DTD attached, but > when rendering a standalone book (extension/reference) we could simply > attach the DTD via "dtdvalid" to get the entities defined in the DTD > (all our snippets) and validate it. Actually, I just tried it with xmllint. --dtdvalid doesn't inject the referenced dtd into the doc so entities aren't "copied over", its pure validation against the dtd :( Rob: You wouldn't happen to know of any neat "workarounds" for that? -Hannes

« previous php.doc (#969381147) next »