Re: validating from the commandline

[ This may be a bit off-topic for SVG list, but anyway ... ]

Tobias Reif <tobiasreif@pinkjuice.com> wrote:

> >  An old but still useful report on "Conformance
> > Testing for XML Processors" is at:
> > 
> >     http://www.xml.com/pub/a/1999/09/conformance/
> 
> 
> Thanks.
> Are there any up to date test suite result tables, comparing major parsers?

Not quite up to date, but still newer than the above test can be
found at:

   http://xmlconf.sourceforge.net/?selected=xml

And for Java parsers, the following page is still newer (last updated
on 6 November 2001):

   http://xmlconf.sourceforge.net/xml/?selected=java

> Would you say Xerces-C is fairly complete and conformat?
> Does it support complex modular DTDs well (XHTML1.1, DocBook)?

I haven't run the conformance test with the latest Xerces-C (I'm using
1.7.0), so I can't say anything definitive, but my *personal* impression
is that it's fast, fairly complete and sufficiently conformant, as far
as DTD validation is concerned.  I don't have enough experience in
XML Schema validation with Xerces-C. 

As the above result shows, Xerces-C 1.2.0 already had rather good level
of conformance, and I presume newer version has better conformance.
And speaking from my experience in developing XHTML Modularization,
it works fine with modular DTDs, and sometimes it reported possible
problems that Xerces-J didn't report.  It's been helpful to develop
modular SVG DTD modules, too ;-)

So it's one of my favorites, though, I tend to use Xerces-J, primarily
because I often need to handle XML documents encoded in some character
encoding not supported by Xerces-C, and Xerces-J supports a lot more
character encodings than Xerces-C.

> How exactly do/would you run it from the commandline to validate a document foo.xml?(on Windows)

Nothing special - for Xerces-C, just like you.  For Xerces-J and
Crimson, set an appropriate CLASSPATH (of course you need a Java
environment) and use samples like "dom.Counter" and "SAXTagCount" as:

  java dom.Counter -v foo.xml

or to switch different parsers, use batch file like:

  @echo off
  set OLDCLASSPATH=%CLASSPATH%
  set CLASSPATH=[path_to]xmlParserAPIs.jar;[path_to]xercesImpl.jar;[path_to]xercesSamples.jar
  java dom.Counter %1 %2 %3 %4 %5 %6 %7 %8 %9
  set CLASSPATH=%OLDCLASSPATH%

Regards,
-- 
Masayasu Ishikawa / mimasa@w3.org
W3C - World Wide Web Consortium

Received on Monday, 25 March 2002 02:04:58 UTC