code: def __parse(value):
          
          match_result = _RE_DATE.match(value)
          if match_result is None:
              raise ValueError("date data has invalid format '%s'" % (value,))
          return _date_from_match(match_result)
docs: Parse the string date.
  
          Supports the subset of ISO8601 used by xsd:date, but is lenient with
          what is accepted, handling most reasonable syntax.
  
          Any timezone is parsed but ignored because a) it is meaningless without
          a time and b) B{datetime}.I{date} does not support timezone
          information.
  
          @param value: A date string.
          @type value: str
          @return: A date object.
          @rtype: B{datetime}.I{date}