title: Understanding Transient properties with NSFetchedResultsController
body: <p>I'm starting to create an application with Core Data, to retrieve a data for sectioned table i want to use NSFetchedResultController, in the <a href="http://developer.apple.com/library/ios/#samplecode/DateSectionTitles/Introduction/Intro.html" rel="nofollow">example</a> from apple there are two additional properties.</p>
  
  <ul>
  <li>primitiveTimeStamp</li>
  <li>primitiveSectionIdentifier</li>
  </ul>
  
  <p>For the case of <strong>primitiveSectionIdentifier</strong> apple says that </p>
  
  <blockquote>
    <p>In contrast, with transient properties you specify two attributes and
    you have to write code to perform the conversion.</p>
  </blockquote>
  
  <p>because the sectionidentifier is transient property.
  But what about the timeStamp ?this attribute is not a transient,  why there is a primitiveTimeStamp property ? and why there is explicit setter for timeStamp ?</p>
  
  <pre><code>- (void)setTimeStamp:(NSDate *)newDate {
  
      // If the time stamp changes, the section identifier become invalid.
      [self willChangeValueForKey:@"timeStamp"];
      [self setPrimitiveTimeStamp:newDate];
      [self didChangeValueForKey:@"timeStamp"];
  
      [self setPrimitiveSectionIdentifier:nil];
  }
  </code></pre>
  
  <p>or maybe it's not a actual setter? where is _timeStamp=newDate? </p>