Patent ID: 8396842

Claim:
A method of validating data, said method comprising: a computer receiving a data item input to a first software application included in a plurality of software applications; said computer receiving metadata specifying a type of said received data item; based on said received metadata, said computer determining a method to cleanse said received data item; based on said received metadata and based on said method to cleanse said received data item, said computer cleansing and validating said data item input to said first software application by said computer running a software-based validation engine, and external to said plurality of software applications; said computer caching a result of said cleansing and validating said data item input to said first software application; said computer receiving a request from a second software application included in the plurality of software applications to validate a data item input to said second software application; said computer determining said data item input to said second software application is identical to said data item input to said first software application; based on said received request from said second software application to validate said data item input to said second software application and based on said data item input to said second software application being identical to said data item input to said first software application, said computer validating said data item input to said second software application by sending said cached result of said cleansing and validating said data item input to said first software application to said second software application, without requiring an additional step of running said software-based validation engine to validate said data item input to said second software application; and wherein said received data item is a credit card number, wherein said running said software-based validation engine includes said computer running a Luhn validation routine to validate said credit card number input to said first software application, wherein said receiving said request from said second software application includes said computer receiving a request to validate said credit card number input to said second software application, and wherein said sending said cached result of said cleansing and validating includes said computer sending a result of said running said Luhn validation routine to said second software application to validate said credit card number input to said second software application without requiring an additional step of running said Luhn validation route to validate said credit card number input to said second software application.