# PointsRankEntry

> One row in a `PointsRank` standings table (spec §4/§5/§6) — an accumulated-points ranking, never a W/L/T record. `rank` is 1-based in table order, already decided by the countback sort ([`crate::stats::standings::racing_drivers_points_rank`] / `racing_constructors_points_rank`); `points`/`wins`/`events` are summed/counted from stored phase rows (`racing_result`) — never a fabricated zero for a shape (W/L/T) this table doesn't have.

One row in a `PointsRank` standings table (spec §4/§5/§6) — an accumulated-points
ranking, never a W/L/T record. `rank` is 1-based in table order, already decided by the
countback sort ([`crate::stats::standings::racing_drivers_points_rank`] /
`racing_constructors_points_rank`); `points`/`wins`/`events` are summed/counted from
stored phase rows (`racing_result`) — never a fabricated zero for a shape (W/L/T) this
table doesn't have.

**Kind:** object

| Field | Type | Required | Description |
|---|---|---|---|
| `competitor` | `RankedCompetitor` | yes |  |
| `events` | `integer<int32>` | yes |  |
| `points` | `integer<int32>` | yes |  |
| `rank` | `integer<int32>` | yes |  |
| `wins` | `integer<int32>` | yes |  |
