<!--
{
  "availability" : [
    "macCatalyst: 13.0.0 -",
    "macOS: 10.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/NSWhoseSpecifier/SubelementIdentifier",
  "metadataVersion" : "0.1.0",
  "role" : "Enumeration",
  "symbol" : {
    "kind" : "Enumeration",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "c:@E@NSWhoseSubelementIdentifier"
  },
  "title" : "NSWhoseSpecifier.SubelementIdentifier"
}
-->

# NSWhoseSpecifier.SubelementIdentifier

`NSWhoseSpecifier` uses these constants to specify sub-elements within the collection of objects being tested that pass the specifier’s test.

```
enum SubelementIdentifier
```

## Overview

These constants are used by [`startSubelementIdentifier`](/documentation/Foundation/NSWhoseSpecifier/startSubelementIdentifier), [`startSubelementIdentifier`](/documentation/Foundation/NSWhoseSpecifier/startSubelementIdentifier), [`endSubelementIdentifier`](/documentation/Foundation/NSWhoseSpecifier/endSubelementIdentifier), and [`endSubelementIdentifier`](/documentation/Foundation/NSWhoseSpecifier/endSubelementIdentifier).

## Topics

### Constants

[`NSWhoseSpecifier.SubelementIdentifier.indexSubelement`](/documentation/Foundation/NSWhoseSpecifier/SubelementIdentifier/indexSubelement)

An element at a given index that meets the specifier test.

[`NSWhoseSpecifier.SubelementIdentifier.everySubelement`](/documentation/Foundation/NSWhoseSpecifier/SubelementIdentifier/everySubelement)

Every element that meets the specifier test.

[`NSWhoseSpecifier.SubelementIdentifier.middleSubelement`](/documentation/Foundation/NSWhoseSpecifier/SubelementIdentifier/middleSubelement)

The middle element that meets the specifier test.

[`NSWhoseSpecifier.SubelementIdentifier.randomSubelement`](/documentation/Foundation/NSWhoseSpecifier/SubelementIdentifier/randomSubelement)

Any element that meets the specifier test.

[`NSWhoseSpecifier.SubelementIdentifier.noSubelement`](/documentation/Foundation/NSWhoseSpecifier/SubelementIdentifier/noSubelement)

No sub-element met the specifier test. Valid only for specifying the end sub-element.; that is, there is no end, so consider all elements.



---

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)