title: FetchRequest NSPredicate nullifies instead of removing?
body: <p>I try to remove some <code>Persons</code> from a <code>FetchRequest</code>, but the object itself is not removed and only the name property is empty. I load it like this:</p>
  <pre><code>var filteredPersons: FetchRequest&lt;Person&gt;
  
  init() {
      let personFilterIds = [&quot;1234&quot;, &quot;2345&quot;, &quot;3456&quot;]
      filteredPersons = FetchRequest&lt;Person&gt;(
          entity: Person.entity(),
          sortDescriptors: [NSSortDescriptor(keyPath: \Person.name, ascending: false)],
          predicate: NSPredicate(format: &quot;NOT (id IN %@)&quot;, personFilterIds)
      )
  }
  </code></pre>
  <p>I then display the remaining <code>Persons</code> in this way:</p>
  <pre><code>var body: some View {
      ForEach(filteredPersons.wrappedValue, id: \.self) { person in
          // Why do I need this if to only display the filtered ones?
          // Why does the person object still exist in the list? (person.id is for example still there)
          if (!person.name.isEmpty) {
              Text(person.name)
          }
     }
  }
  </code></pre>
  <p>Why is it not working correctly without the <code>if (!person.name.isEmpty)</code>? Am I doing the filtering wrong?</p>