'@param date: The value of the object.
@type date: (date|str)
@raise ValueError: When I{date} is invalid.'

def __init__(self, date):

    if isinstance(date, dt.date):
        self.date = date
        return
    if isinstance(date, basestring):
        self.date = self.__parse(date)
        return
    raise ValueError, type(date)
