protected DateTimeData parse(String str) throws SchemaDateTimeException {
  DateTimeData date=new DateTimeData(str,this);
  int len=str.length();
  int end=indexOf(str,0,len,'T');
  int dateEnd=getDate(str,0,end,date);
  getTime(str,end + 1,len,date);
  if (dateEnd != end) {
    throw new RuntimeException(str + " is an invalid dateTime dataype value. " + "Invalid character(s) seprating date and time values.");
  }
  validateDateTime(date);
  saveUnnormalized(date);
  if (date.utc != 0 && date.utc != 'Z') {
    normalize(date);
  }
  return date;
}

protected DateTimeData parse ( String str ) throws SchemaDateTimeException { DateTimeData date = new DateTimeData ( str , this ) ; int len = str . length ( ) ; int end = indexOf ( str , 0 , len , 'T' ) ; int dateEnd = getDate ( str , 0 , end , date ) ; getTime ( str , end + 1 , len , date ) ; if ( dateEnd != end ) { throw new RuntimeException ( str + " is an invalid dateTime dataype value. " + "Invalid character(s) seprating date and time values." ) ; } validateDateTime ( date ) ; saveUnnormalized ( date ) ; if ( date . utc != 0 && date . utc != 'Z' ) { normalize ( date ) ; } return date ; }
parses , validates and computes normalized version of datetime object
