Tools for validating a large XML file against a complex XSD file?

Posted on 2006-07-05
Last Modified: 2008-02-26
Greetings experts,

I am in a position where I am frequently needing to validate large (>60Meg) XML files against complex XSD files, and then when validation fails, be able to determine exactly why not and fix the problem ASAP.  (The XSD files include other XSD files which include other XSD files - it's a mess!)

XMLSpy worked wonderfully, but my trial period expired and my boss won't buy it for me.

XMLCooktop works reasonably well for small XML files, but is not 100% dependable even in those cases and is next to useless for 50 to 60 Meg files.

I have Visual Studio 6.0 - is there something in there I can use?  Would it be reasonably easy to write Visual Basic code to do it?

Are there any other freeware tools or other "tricks of the trade" I can take advantage of?

Appreciating any advice/help,
Question by:DalTXColtsFan
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
LVL 60

Expert Comment

by:Geert Bormans
ID: 17045950
Hi DalTXColtsFan,
> XMLSpy worked wonderfully, but my trial period expired and my boss
> won't buy it for me.

note that XMLSpy schema parsing has quiet a number of bugs when schemata become complex
the only way Spy gives 100% correct validation is when the schema was created using Spy
If that is the case, you might be dissapointed with another, possibly more correct tool

60 Meg isn't that problematically big, so you have quiet some options
You can download Xerces from the apache project:
(Java, C or even in an IDE such as Oxygen
Oxygen does not come for free, but the license is quiet somewhat cheaper then Spy,
if you really need an IDE....
but you can use Xerces commandline as well


Author Comment

ID: 17046274
Thanks Gert!

I downloaded Xerces but I'm having trouble finding out how to do what I want.  Can you help me find the documentation, or better yet, give me a pointer in the right direction on how to validate a particular XML file against a particular XSD and get a list of reasons it failed validation?

That Oxygen one looks good - thanks.

LVL 60

Expert Comment

by:Geert Bormans
ID: 17046413
just pick Xerces-C
read the installation guide
pick the samples, eg. you can run memparse :
(by using a sample, you don't have to package this in your own application)
make sure you have the correct command line parameters
you ll get the error messaging you need


Author Comment

ID: 17050170
I'm sorry if it seems like I'm asking to be spoonfed but I simply do not find xerces's documentation the least bit intuitive.

The memparse seems to be wanting to validate the document "in a memory buffer" - what is the memory buffer and how do I load *my* file into it?

Sorry again and thanks,
LVL 60

Accepted Solution

Geert Bormans earned 500 total points
ID: 17050299
> I'm sorry if it seems like I'm asking to be spoonfed but I simply do not find xerces's documentation the least bit intuitive.


well, it has been a while since I last used xerces outside Oxygen or Stylus
I remember I took a sample... likely it was not memparse then
try SAXCount

SAXCount -v=always -n -s -f yourfilename.xml


Featured Post

How Do You Stack Up Against Your Peers?

With today’s modern enterprise so dependent on digital infrastructures, the impact of major incidents has increased dramatically. Grab the report now to gain insight into how your organization ranks against your peers and learn best-in-class strategies to resolve incidents.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Viewing XML as a table on a Mac 3 248
XSL - change date format 3 52
XML & .net 5 52
Setting up a IIS 8 Web Server to send and receive XML files 7 102
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
Many times as a report developer I've been asked to display normalized data such as three rows with values Jack, Joe, and Bob as a single comma-separated string such as 'Jack, Joe, Bob', and vice versa.  Here's how to do it. 
In an interesting question ( here at Experts Exchange, a member asked how to split a single image into multiple images. The primary usage for this is to place many photographs on a flatbed scanner…

726 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question