<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -",
    "macCatalyst: 15.0.0 -",
    "macOS: 12.0.0 -",
    "tvOS: 15.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 8.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "SwiftUI",
  "identifier" : "/documentation/SwiftUI/SectionedFetchRequest/Configuration",
  "metadataVersion" : "0.1.0",
  "role" : "Structure",
  "symbol" : {
    "kind" : "Structure",
    "modules" : [
      "SwiftUI"
    ],
    "preciseIdentifier" : "s:7SwiftUI21SectionedFetchRequestV13ConfigurationV"
  },
  "title" : "SectionedFetchRequest.Configuration"
}
-->

# SectionedFetchRequest.Configuration

The request’s configurable properties.

```
struct Configuration
```

## Overview

You initialize a [`SectionedFetchRequest`](/documentation/SwiftUI/SectionedFetchRequest) with a section identifier,
an optional predicate, and sort descriptors, either explicitly or with
a configured
<doc://com.apple.documentation/documentation/CoreData/NSFetchRequest>.
Later, you can dynamically update the identifier, predicate, and sort
parameters using the request’s configuration structure.

You access or bind to a request’s configuration components through
properties on the associated [`SectionedFetchResults`](/documentation/SwiftUI/SectionedFetchResults) instance,
just like you do for a [`FetchRequest`](/documentation/SwiftUI/FetchRequest) using
[`FetchRequest.Configuration`](/documentation/SwiftUI/FetchRequest/Configuration).

When configuring a sectioned fetch request, ensure that the
combination of the section identifier and the primary sort descriptor
doesn’t create discontiguous sections.

## Topics

### Setting the section identifier

[`var sectionIdentifier: KeyPath<Result, SectionIdentifier>`](/documentation/SwiftUI/SectionedFetchRequest/Configuration/sectionIdentifier)

The request’s section identifier key path.

### Setting a predicate

[`var nsPredicate: NSPredicate?`](/documentation/SwiftUI/SectionedFetchRequest/Configuration/nsPredicate)

The request’s predicate.

### Setting sort descriptors

[`var sortDescriptors: [SortDescriptor<Result>]`](/documentation/SwiftUI/SectionedFetchRequest/Configuration/sortDescriptors)

The request’s sort descriptors, accessed as value types.

[`var nsSortDescriptors: [NSSortDescriptor]`](/documentation/SwiftUI/SectionedFetchRequest/Configuration/nsSortDescriptors)

The request’s sort descriptors, accessed as reference types.



---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)