THIS IS A TEST INSTANCE. ALL YOUR CHANGES WILL BE LOST!!!!
Wiki Markup |
---|
h2. MSV Component
The MSV component performs XML validation of the message body using the [MSV Library|https://msv.dev.java.net/] and any of the supported XML schema languages, such as [XML Schema|http://www.w3.org/XML/Schema] or [RelaxNG XML Syntax|http://relaxng.org/].
Maven users will need to add the following dependency to their {{pom.xml}} for this component:
{code:xml}
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-msv</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
{code}
Note that the [Jing] component also supports [RelaxNG Compact Syntax|http://relaxng.org/compact-tutorial-20030326.html]
h3. URI format
{code}
msv:someLocalOrRemoteResource[?options]
{code}
Where *someLocalOrRemoteResource* is some URL to a local resource on the classpath or a full URL to a remote resource or resource on the file system. For example
{code}
msv:org/foo/bar.rng
msv:file:../foo/bar.rng
msv:http://acme.com/cheese.rng
{code}
You can append query options to the URI in the following format, {{?option=value&option=value&...}}
h3. Options
{div:class=confluenceTableSmall}
|| Option || Default || Description ||
| {{useDom}} | {{true}} | *Camel 2.0:* Whether DOMSource/DOMResult or SaxSource/SaxResult should be used by the validator. *Note:* DOM must be used by the [MSV] component. |
{div}
h3. Example
The following [example|http://svn.apache.org/repos/asf/camel/trunk/components/camel-msv/src/test/resources/org/apache/camel/component/validator/msv/camelContext.xml] shows how to configure a route from endpoint *direct:start* which then goes to one of two endpoints, either *mock:valid* or *mock:invalid* based on whether or not the XML matches the given [RelaxNG XML Schema|http://relaxng.org/] (which is supplied on the classpath).
{snippet:id=example|lang=xml|url=camel/trunk/components/camel-msv/src/test/resources/org/apache/camel/component/validator/msv/camelContext.xml}
{include:Endpoint See Also}
|