Description / Features
This plugin enables analysis of XML files within Sonar.
Some common use cases are:
- Validation of XHTML files by using the XHTML schemas as provided by the W3C (strict, transitional, and others). Quickly validate the markup of a set of XHTML files.
- Validation of XML files for conformance to the provided XML schema.
- Validation of rules in XML files (ex: validate the Maven pom files for conformance to coding standards).
Installation
- Install the XML plugin through the Update Center or download it into the SONAR_HOME/extensions/plugins directory
- Restart the Sonar server
Usage
Run a Sonar Analysis with the Sonar Runner (Recommended Way)
To launch a Sonar analysis of your XML project, use the Sonar Runner.
A sample project is available on github that can be browsed or downloaded: /projects/languages/xml/xml-sonar-runner.
Run a Sonar Analysis with the other Analyzers
Maven and Ant can also be used to launch analysis on Web projects.
Advanced Properties
Property | Description |
|---|---|
sonar.xml.includeFileFilter | Additional filter for the files to be scanned |
Validating Files Against Specific Schema
Files can be validated against a specific schema thanks to the XML Schema Check.
Within the same project some files can be validated against schema 'S1', others against schema 'S2' and so on. So, this rule has to be copied and configured as many times as you have pairs of files/schema.
Property | Description | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
filePattern | Files to be validated against the schema set through the schemas parameter. | |||||||||||||||||||||||||||||||||
schemas | Namespace of schema to use for validation. It can either be set to:
Default value: autodetect. In this case, the parser will try to load the schema based on the doctype or the namespace declaration in the document. Built-in schemas:
|
Notes:
- Schema validation is performed by the Xerces parser using XML schemas (XSDs).
- For validation of XHTML files it is recommended to use autodetect, xhtml1-transitional or xhtml1-strict.
Custom Checks Using XPath Expressions
The XPath Check allows to define custom checks on XML documents using XPath expressions.
Within the same project some files can be checked against XPath rules 'R1', 'R2', etc., others against rules 'R6', 'R7', etc. and so on. So, this rule has to be copied and configured as many times as you have pairs of files/rule.
Property | Description |
|---|---|
filePattern | Files to be checked against the XPath expression set through the xpathQuery parameter. |
| xpathQuery | The XPath query |
| message | The violation message |
Change Log
| Release 0.1 (3 issues) | |||
|---|---|---|---|
| Type | Key | Summary | Priority |
|
|
SONARPLUGINS-852 | XML Schema check for XML documents |
|
|
|
SONARPLUGINS-851 | XPath Check for XML documents |
|
|
|
SONARPLUGINS-611 | Add a check for Maven POM code convention |
|

