# HpfSpdAlt

Speed range and altitude combinations defining holding altitudes for specific speed ranges at each holding pattern

**Source:** NASR table `HPF_SPD_ALT` · version `e25086c3e952` · effective 2026-04-16

> Ordered by HP_NAME, HP_NO, SPEED_RANGE, ALTITUDE. The combination of HP_NAME, HP_NO, SPEED_RANGE, and ALTITUDE forms the unique record key.

## Example query

```graphql
# Introspect the HpfSpdAlt type in GraphiQL at https://api.nav.sortie.co/graphql
# Example shape (pair with a compatible root query field):
{
  # ...rootQuery... {
    effDate
    hpName
    hpNo
    stateCode
  # }
}
```

Run at https://api.nav.sortie.co/graphql (GraphiQL available in-browser).

## Fields

| Field | Type | Description | Units | Enum |
|---|---|---|---|---|
| `effDate` | `String` | The 28 Day NASR Subscription Effective Date in format YYYY/MM/DD |  |  |
| `hpName` | `String` | Holding Pattern Identifier formatted as NAVAID_NAME FACILITY_TYPE*STATE_CODE or FIX_NAME FIX_TYPE*STATE_CODE*ICAO_REGION_CODE |  |  |
| `hpNo` | `HpNo` | Pattern Number to Uniquely Identify Holding Pattern |  | `1`, `2`, `3`, … (10 values) |
| `stateCode` | `FixBaseStateCode` | Associated State Post Office Code, standard two letter abbreviation for US States and Territories |  | `AK`, `AL`, `AR`, … (61 values) |
| `countryCode` | `HpfBaseCountryCode` | Country Post Office Code |  | `AS`, `BS`, `CA`, … (8 values) |
| `speedRange` | `SpeedRange` | Speed range in knots for which the associated holding altitude applies. Values may represent a single speed or a range in the format lower/upper. | knots | `100`, `17/60`, `170`, … (27 values) |
| `altitude` | `String` | Holding altitude for the associated speed range of record | feet MSL |  |

## Enum values

### `hpNo` (`HpNo`)

| Code | Description |
|---|---|
| `1` | Pattern 1 |
| `2` | Pattern 2 |
| `3` | Pattern 3 |
| `4` | Pattern 4 |
| `5` | Pattern 5 |
| `6` | Pattern 6 |
| `7` | Pattern 7 |
| `8` | Pattern 8 |
| `9` | Pattern 9 |
| `10` | Pattern 10 |

### `stateCode` (`FixBaseStateCode`)

| Code | Description |
|---|---|
| `AK` | Alaska |
| `AL` | Alabama |
| `AR` | Arkansas |
| `AS` | American Samoa |
| `AZ` | Arizona |
| `CA` | California |
| `CO` | Colorado |
| `CT` | Connecticut |
| `DC` | District of Columbia |
| `DE` | Delaware |
| `FL` | Florida |
| `GA` | Georgia |
| `GU` | Guam |
| `HI` | Hawaii |
| `IA` | Iowa |
| `ID` | Idaho |
| `IL` | Illinois |
| `IN` | Indiana |
| `KS` | Kansas |
| `KY` | Kentucky |
| `LA` | Louisiana |
| `MA` | Massachusetts |
| `MD` | Maryland |
| `ME` | Maine |
| `MI` | Michigan |
| `MN` | Minnesota |
| `MO` | Missouri |
| `MP` | Northern Mariana Islands |
| `MS` | Mississippi |
| `MT` | Montana |
| `NC` | North Carolina |
| `ND` | North Dakota |
| `NE` | Nebraska |
| `NH` | New Hampshire |
| `NJ` | New Jersey |
| `NM` | New Mexico |
| `NV` | Nevada |
| `NY` | New York |
| `OA` | Pacific Ocean Area |
| `OG` | Gulf of Mexico Area |
| `OH` | Ohio |
| `OK` | Oklahoma |
| `OP` | Pacific Ocean Area |
| `OR` | Oregon |
| `PA` | Pennsylvania |
| `PR` | Puerto Rico |
| `QM` | Atlantic Ocean Area |
| `QW` | Atlantic Ocean Area West |
| `RI` | Rhode Island |
| `SC` | South Carolina |
| `SD` | South Dakota |
| `TN` | Tennessee |
| `TX` | Texas |
| `UT` | Utah |
| `VA` | Virginia |
| `VI` | Virgin Islands |
| `VT` | Vermont |
| `WA` | Washington |
| `WI` | Wisconsin |
| `WV` | West Virginia |
| `WY` | Wyoming |

### `countryCode` (`HpfBaseCountryCode`)

| Code | Description |
|---|---|
| `AS` | American Samoa |
| `BS` | Bahamas |
| `CA` | Canada |
| `FM` | Federated States of Micronesia |
| `MH` | Marshall Islands |
| `MP` | Northern Mariana Islands |
| `PW` | Palau |
| `US` | United States |

### `speedRange` (`SpeedRange`)

| Code | Description |
|---|---|
| `100` | 100 knots |
| `17/60` | 17 to 60 knots |
| `170` | 170 knots |
| `170/175` | 170 to 175 knots |
| `175` | 175 knots |
| `175/200` | 175 to 200 knots |
| `19/60` | 19 to 60 knots |
| `20/60` | 20 to 60 knots |
| `200` | 200 knots |
| `200/230` | 200 to 230 knots |
| `200/265` | 200 to 265 knots |
| `200/310` | 200 to 310 knots |
| `210` | 210 knots |
| `210/310` | 210 to 310 knots |
| `230` | 230 knots |
| `230/265` | 230 to 265 knots |
| `230/310` | 230 to 310 knots |
| `265` | 265 knots |
| `265/310` | 265 to 310 knots |
| `27/27` | 27 knots |
| `280` | 280 knots |
| `300` | 300 knots |
| `310` | 310 knots |
| `360` | 360 knots |
| `90` | 90 knots |
| `90/310` | 90 to 310 knots |
| `ALL` | All speed ranges |

## Column provenance

Every field maps 1:1 to a column in the `HPF_SPD_ALT` table of `nasr.db`. Original FAA column names:

| GraphQL field | SQLite column |
|---|---|
| `effDate` | `EFF_DATE` |
| `hpName` | `HP_NAME` |
| `hpNo` | `HP_NO` |
| `stateCode` | `STATE_CODE` |
| `countryCode` | `COUNTRY_CODE` |
| `speedRange` | `SPEED_RANGE` |
| `altitude` | `ALTITUDE` |
