\u001B[1mSYNOPSIS\u001B[0m
    ${project.description}

    Original Maven URL:
        \u001B[33mmvn:http://repository.jboss.org/nexus/content/groups/public-jboss/:${pkgGroupId}/${pkgArtifactId}/${pkgVersion}\u001B[0m

\u001B[1mDESCRIPTION\u001B[0m

    Hibernate Validator 4.x is the reference implementation for JSR 303 - Bean Validation of which Red Hat is the
    specification lead.

    JSR 303 - Bean Validation defines a metadata model and API for JavaBean validation. The default metadata source is
    annotations, with the ability to override and extend the meta-data through the use of XML validation descriptors.
    The API is not tied to a specific application tier or programming model. It is specifically not tied to either the
    web tier or the persistence tier, and is available for both server-side application programming, as well as rich
    client Swing application developer.

    Together with the reference implementation of JSR 303 - Bean Validation, Hibernate provides also the Bean Validation
    TCK. You can find more information about the TCK on the Hibernate wiki.

    Hibernate Validator 4, together with the Bean Validation API and TCK are all provided and distributed by JBoss
    (Red Hat) under the Apache Software License 2.0.

\u001B[1mSEE ALSO\u001B[0m
    \u001B[36mhttp://www.hibernate.org/subprojects/validator.html\u001B[0m
