XML Schema Validation Tool Survey
Introduction
XML is a general purpose markup language which supports lightweight and structured way of exchanging data across applications. The data inside the XML file should follow specific structure rules(type of the data, keys and so forth) in order to be parsed and understood correctly by the reader. For this purpose, an XML schema can be used to specify the structure for an custom XML data file. In order to check the validity of the XML data file according to a specific XML schema, designer needs to be sure that XML schema is syntactically and structurally correct in itself. In this survey, four different XML schema validation tools are examined. All of these validators follow the W3C Recommendations[1] while validating the input schema which is described in XSD[2] form.
Liquid Technologies Xml Studio Community Edition
Xml Studio Community Edition[3] is free(limited) version of a fully featured commercial product, which supports advanced XML Schema Validation and editing. Any syntax or structure error is automatically(simultaneously) shown in the editor via intelli-sense property. Diagram of the schema can be displayed in order to see the overall visual tree-view structure of XML schema file. By this way users can see the structural mistakes visually which cannot be detected via validators. In community edition, on split mode(editor and diagram on the same window) diagram editing is disabled therefore the visual part is read only. Users can take a screen shot of the schema diagram in order to use it in other documents.
Validome XML - DTD and Schema Validator
Validome[4] is an online non-commercial XML Schema Validation tool, which has multilingual(English, German, French and Russian) support for interface. Validome supports three types of input for schema; uploading a file from user's local disk, specifying URL of the file or entering content of the file directly into a text field. In spite of the fact that its functionality is limited with syntax and structure validation of schema files, it displays the result of validation in a detailed and user friendly format.
XMLMe XML Schema Validator
Florida based company Seanco Technology has bunch of XML tools; such as XPath Query Expression Tool , XML Serialization & Deserialization tool, XML Reader, and most importantly an online validation tool for XML Schemas. XML Schema Validator[5] tool does not support direct file uploading(for security concerns) but users can paste the content of their custom XML schema and data files into specified text areas on the form. This tool not only validates the syntax and structure of XML schema but also validates the XML data. While validating the XML data, it checks syntax and structure errors in XML data file and its conformity to XML Schema. Error messages for in XML schema are not well formed because the exception error message(from .NET Framework) is directly displayed as “Validation Results” to the user which may not be very helpful and user friendly. In addition, web site is not so reliable, and sometimes hangs without any response.
XSV Validator for XML Schema
XSV[6] is an advanced web based XML schema syntax and structure validator. There is an option “Keep Going” for the parser which provides continuation of validation after hitting an error. By this way user can see all the errors in the schema document in one validation. Another useful feature is letting the user to provide related schemas of the main schema which user is validating. However, this feature is only available for URL inputs. In addition to these, XSV provides different view formats for validation results of the schema.
Conclusion
In the light of what we have discussed, we come up with choosing the right tool depends on the needs of user(Table 1). If user want to see a visual diagram of the schema and simultaneous validation, XML Studio is the only alternative from the list. Nonetheless, if user doesn't want to install any software on his/her system, s/he needs to pick a web based validation tool. XmlMe is a great alternative if user wants to check the conformity of the XML data to an XML schema while checking the validity of syntax and structure of both files. When detailed error messages are needed Validome is a really helpful tool to detect and solve the error on XML schema file. For the power users, XSV can be the best tool which has open source code(custom parsing algorithms can be derived).
References:
[1] W3C Recommendations, http://www.w3.org/TR/xmlschema-1/
[2] XML Schema Definition(XSD), http://en.wikipedia.org/wiki/XSD
[3] Liquid Technologies Xml Studio Community Edition, http://www.liquid-technologies.com/xmlstudio/xmlstudio.aspx
[4] Validome XML - DTD and Schema Validator, http://www.validome.org/grammar/
[5] XMLMe XML Schema Validator, http://www.xmlme.com/Validator.aspx
[6] XSV - Validator for XML Schema, http://www.w3.org/2001/03/webdata/xsv
Comments
http://www.w3cvalidation.net/