Skip to content
This repository


Validation is the most important form of quality control for styles and locales. Only styles and locales that are valid XML and conform to the CSL schema can be expected to work correctly with all CSL-compatible applications.


The easiest way to validate styles and locale files is online at Just paste in your style or locale and click the "Validate" button to validate against the CSL 1.0.1 schema. If there aren't any validation errors you will get the message "Validation successful.".

You can also use

  • Select your style or locale. You can provide an URL if your style/locale is accessible online (the "Address" option), select the file on your computer ("File Upload"), or copy and paste the complete code into the text box ("Text Field").
  • (preselected if using the link above) Enter the URL to the CSL schema in the "Schemas" text field. For CSL 1.0.1, this is To validate styles in the older CSL 1.0 and 0.8.1 formats, use or, respectively.
  • (preselected if using the link above) In the "Parser" drop-down menu, select the "XML; don't load external entities" option. Also check the "Be lax about HTTP Content-Type" check-box.
  • Click the “Validate” button. If the style/locale is valid, you will get the message “The document validates according to the specified schema(s) and to additional constraints checked by the validator.”, or, if the style/locale is invalid, "There were errors.". Warnings can be ignored; only errors are important.

Other Validators

You can validate your style/locale with any tool that offers XML validation and supports the RELAX NG Compact schema language. Examples are the editors Emacs (when used with the nXML addon) and the commercial oXygen XML Editor (both offer real-time validation), and the command-line utilities Jing and RNV.

Something went wrong with that request. Please try again.