5. Criteria for Evaluating the Validation Support of Frameworks

The support of MVC frameworks for constraint validation can be evaluated according to the following criteria. Does the framework support

  1. the declaration of all important kinds of property constraints as defined above (String Length Constraints, Mandatory Value Constraints, Range Constraints, etc.) in model classes?

  2. the provision of an object validation function to be invoked in the UI on form submission, and in the model layer before save?

  3. validation in the model class on assign property and before save object?

  4. informative generic validation error messages referring to the object and property concerned?

  5. custom validation error messages with parameters?

  6. responsive validation in the user interface on input and on submit based on the constraints defined in the model classes, preferably using the HTML5 constraint validation API, or at least a general front-end API like the jQuery Validation Plugin?

  7. two-fold validation with defining constraints in the model and checking them in the model and in the view?

  8. three-fold validation with defining constraints in the model and checking them in the model, the view and in the database system?

  9. reporting database validation errors that are passed from the database system to the app?