This is the main development page for the XML Validator project. The XML Validator is a framework, currently written only in Java, for developers to use when validating XML.
Why write XMLV?
A while back, I started writing a Java app. that was going to have an XML file for setup purposes. I noticed that when I would make mistakes in my XML file (during testing), that the parser would give me back some completely unreadable error from the DTD. Something like (not exactly like mind you, but close enough)
"Line 34 - node entity X unrecognized, all entities must be defined"
Well, this was no good. The user would have no idea how to correct this error unless they were a developer, and even then they would have to be experienced with XML. Not a good solution. So, I started a quest for a good XML validation method. I tried XML schema, because that was the only other one I could find that was supported by most parsers. Well, when I started, there were barely any docs on schema, it was still in proposal stage and after I waded through hundreds of pages of the proposal and figured it out, it was just as bad as DTDs.
So, I gave up and just settled for DTDs. Next I encountered another horrible limitation with DTD. I wanted to have a tag where it had two attributes, either one of them could be specified, neither of them could be specified, BUT NOT both. Well, this just wasn't going to happen. Is I checked out schema again. No dice there either. Well, this was just a pain. Plus I was really getting annoyed with a lot of things about DTD and XML schema and I realized the problem, no committie could no exactly how I was going to need my XML validated. Plus, they couldn't give me the flexibility of XML in the validators without a spec. that was as thick as the OED. So, I realized what needed to be done, there needed to be a validation framework for validation, like XML schema, where the document descriptor is written in XML, that developers could extends and change in order to meet all their validation needs. This way they are not limited by a strict validation language. They can make up their own language for their descriptors and then write a little extra code to handle it.
So, I started work on the XML Validator framework. It's a fairly simple framework that contains a few classes that can be extended or used as is, to validate XML using a descriptor written in XML. Are you still kinda confused on exactly what it is or how it works, click here for a longer description.