Actually, it would be better to write something that LOOKS to be a correct date on these invalid ones. So in one example:  2011-01  in another 2011-01-2, and 2011-01-31-31 are invalid dates. But they're harder for the implementation to get "right".