title: Golang XML Unmarshal and time.Time fields
body: <p>I have XML data I am retrieving via a REST API that I am unmarshal-ing into a GO struct.  One of the fields is a date field, however the date format returned by the API does not match the default time.Time parse format and thus the unmarshal fails.</p>
  
  <p>Is there any way to specify to the unmarshal function which date format to use in the time.Time parsing?  I'd like to use properly defined types and using a string to hold a datetime field feels wrong.</p>
  
  <p>Sample struct:</p>
  
  <pre><code>type Transaction struct {
  
      Id int64 `xml:"sequencenumber"`
      ReferenceNumber string `xml:"ourref"`
      Description string `xml:"description"`
      Type string `xml:"type"`
      CustomerID string `xml:"namecode"`
      DateEntered time.Time `xml:"enterdate"` //this is the field in question
      Gross float64 `xml:"gross"`
      Container TransactionDetailContainer `xml:"subfile"`
  }
  </code></pre>
  
  <p>The date format returned is "yyyymmdd".</p>