1. A method for processing information comprising: defining a schema validation using metadata stored in a database, the metadata including constraints defined in a declarative manner, the constraints including at least one non-structural constraint, wherein the metadata comprises: a target validation table that points to a XML schema to be validated; a validation function table pointing to a Java class to be executed; a transaction table that specifies a transaction context for when a validation function will be executed; a validation parameter table that determines how the validation function will be executed; and an external rule table; building a memory model using said metadata; receiving input data for validation in a validation engine; evaluating a validation condition against an external rule contained in said external rule table; based on the evaluation of the validation condition against the external rule, validating said input data by executing the Java class in said validation engine using said input data and said metadata, wherein the Java class is configured to perform cross element validation on said data input; and generating an output from said validation engine that identifies said input data as being validated or not validated.