XML validation

{{Refimprove|date=May 2010}}

XML validation is the process of checking a document written in XML (eXtensible Markup Language) to confirm that it is both well-formed and also "valid" in that it follows a defined structure. A well-formed document follows the basic syntactic rules of XML, which are the same for all XML documents.{{cite web

|work=Extensible Markup Language (XML) 1.1

|title=Well-Formed XML Documents

|url=http://www.w3.org/TR/2004/REC-xml11-20040204/#sec-well-formed

|date=2004

|publisher=W3C

}} A valid document also respects the rules dictated by a particular DTD or XML schema.{{cite web

|title=Constraints and Validation Rules

|work=XML Schema Part 1: Structures Second Edition

|date=2004

|publisher=W3C

|url=http://www.w3.org/TR/xmlschema-1/#concepts-schemaConstraints

}} Automated tools – validators – can perform well-formedness tests and many other validation tests, but not those that require human judgement, such as correct application of a schema to a data set.

Standards

  • OASIS CAM is a standard specification that provides contextual validation of content and structure that is more flexible than basic schema validations.
  • Schematron, a method for advanced XML validation.

Tools

  • xmllint is a command line XML tool that can perform XML validation. It can be found in UNIX / Linux environments.
  • XML toolkit. [http://xmlsoft.org/xmldtd.html The XML C parser and toolkit of Gnome] – libxml includes xmllint
  • [https://codebeautify.org/xmlvalidator XML Validator Online] Validate your XML data.
  • [https://www.corefiling.com/opensource/schemaValidate XML Schema Validator] Validate XML files against an XML Schema.

References

{{Reflist}}

:*

; Articles discussing XML validation

:*[http://www.devx.com/xml/Article/41066 DEVX March, 2009 - Taking XML Validation to the Next Level: Introducing CAM] {{Webarchive|url=https://web.archive.org/web/20120316091304/http://www.devx.com/xml/Article/41066 |date=2012-03-16 }}

Category:XML

Category:Data modeling languages

{{markup-languages-stub}}