---
title: HKQueryDescriptor
framework: healthkit
role: symbol
role_heading: Class
path: healthkit/hkquerydescriptor
---

# HKQueryDescriptor

A descriptor that specifies a set of samples based on the data type and a predicate.

## Declaration

```swift
class HKQueryDescriptor
```

## Overview

Overview Use descriptors to create queries that return multiple data types. You can use descriptors when creating HKSampleQuery, HKAnchoredObjectQuery, or HKObserverQuery instances.

## Topics

### Creating Query Descriptors

- [init(sampleType:predicate:)](healthkit/hkquerydescriptor/init(sampletype:predicate:).md)

### Accessing Descriptor Data

- [predicate](healthkit/hkquerydescriptor/predicate.md)
- [sampleType](healthkit/hkquerydescriptor/sampletype.md)

### Initializers

- [init(coder:)](healthkit/hkquerydescriptor/init(coder:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)
- [Sendable](swift/sendable.md)
- [SendableMetatype](swift/sendablemetatype.md)

## See Also

### Basic queries

- [HKSampleQueryDescriptor](healthkit/hksamplequerydescriptor.md)
- [HKSampleQuery](healthkit/hksamplequery.md)
- [HKCorrelationQuery](healthkit/hkcorrelationquery.md)
- [HKQuery](healthkit/hkquery.md)
