XML Validation
XML Document Validation
Index > Books > Declarative Development Guide > Technology Tour > XML Validation

Rate this page:
Really useful
Satisfactory
Not helpful
Confusing
Incorrect
Unsure
Extra comments:


XML Validation

Validation is the act of checking a document against a specification. There are several popular or standard technologies for expressing a schema. NetKernel supports several of these.

Traditionally validation has been thought of as a parse time operation. NetKernel separates validation out into an operation so that it can be performed anywhere and anytime in an XML process. Whilst validation is principally to ensure data integrity it can also be an important mechanism to control process flow - in this runtime approach schema may even be dynamically generated within a process.

Popular Schema Technologies

Schema languages can be complex and one size does not fit all. The choice of schema technology depends on the problem domain, development time, maintainability and most importantly ease of use. The 1060 NetKernel supports several schema technologies together with support for runtime DTD validation.

  • DTD is the original XML/SGML document constraint syntax. It is relatively simple and widely utilized. DTD validation, like schemas (below), is performed at runtime.
  • XML Schema (XSD) is the W3C standard schema technology. It is powerful but can be complicated to develop and maintain.
  • RelaxNG is an OASIS standard schema technology. It is an intuitive declarative schema language that's powerful, quick to write, and easy to use and maintain.
  • Schematron is an XPath based schema language. It can be a fast way to make assertions about document validity.

Application Specific Validation

In addition to the formal schema languages the platform provides application specific validation technologies.

xpatheval is a lightweight xpath evaluation accessor that is very useful to create simple validation conditions which may be used for control flow.


© 2003-2005, 1060 Research Limited. 1060 registered trademark, NetKernel trademark of 1060 Research Limited.