AuelProject DataSift
Latest version: 1.0b2
Released: November 15th, 2004
This version adds new validators and transformers to the platform. Among others:
- Validators for dates, email addresses, URLs and pattern matching.
- Transformers to manage dates, urls, trim strings, extract text using patterns
and manage variable-sized forms coming from dynamic tables in web pages.
See all changes in the
ChangeLog file.
DataSift can be downloaded from the
download section.
If you want to suggest more validations or transformations that can be enough common to be
in the predefined set, please use our
issue tracking system to post
your suggestions.
What is DataSift?
DataSift is a powerful java data validation and transformation framework, aimed at enterprise
software development, which provides developers with an extensible architecture they can fully
adapt to their software needs. Almost every feature in it can be configured in some
way, and developers can create new plugins that extends its capabilities.
Concepts: validation and transformation
We refer to data validation as the process performed to ensure some data
is in the shape we want it to be, or that is holds the correct values (e.g. we can
validate that a String object contains an integer number).
Data transformation is the process performed to re-shape or change the values
contained in some piece of data, with the aim of adapting it to needs different
than the ones the original data addressed (e.g. we can convert a String object
containing an integer number into an Integer object).
Features
-
Generic and extensible data resolution. The data to be validated can be
retrieved from a javabean, an XML document, an HTTP request or any other object
the developer may have created a Resolver for (plugin).
-
Generic and extensible validation and transformation processes. Though the
framework provides a set of predefined validations and transformations, the user
may develop new Validators and Transformers to adapt DataSift to
his/her needs.
-
Highly configurable. All entities in the framework (resolvers, validators and
transformers) can be declaratively (XML files) or programmatically
(Java code) registered and configured, including the establishment of default values
for their configuration.
-
Clean integration. Validation and transformation processes are defined in
simple XML files, decoupling your code from the validation of your data.
-
Power and flexibility. DataSift's powerful architecture provides the developer
with the ability to perform operations not allowed by most similar toolkits and
frameworks. For example, take an http request (an
HttpServletRequest
object) containing three parameters named day, month and
year. Now you want to validate this http request by establishing that
day will be an integer number between 1 and 31, month an
integer between 1 and 12, and year an integer between 1900 and 2100.
But you also want to validate that the three altogether form a valid date (no things
like February 30th) and even more, that this date is previous to the present one.
You wouldn't be able to do all these things with most other validation libraries, but
with DataSift's architecture and the right validators it could be as easy as writing
a few lines of XML code.
-
Ease of use. In spite of its power and genericity, DataSift comes
out-of-the-box with a set of registered resolvers, validators and transformers which
can fit the needs of many developers without writing ad hoc plugins or
configuration files (apart from the spec definitions themselves).