I think we should throw this exception instead of catching it.  If it's caught like this the caller doesn't get notified if using incorrect formats (could be a nightmare to debug).