# 状态体系 (/docs/status-taxonomy)

**我们把 27 个商标局的原始状态归一化为四轴模型，跨局口径统一。** 不确定时永远查 API 拿权威字典（0 点）。

## 四轴模型 [#四轴模型]

| 轴 | 含义 | 示例 |
|---|---|---|
| `primary` | 当前主要法律状态 | `filed` `exam` `published` `registered` `rejected` `cancelled` `expired` |
| `stage` | 存续阶段 | `live` `pending` `dead` |
| `raw` | 各局原始状态原文 | `Notice of Allowance (Issued)` |
| `events` | 生命周期事件序列 | 申请 → 审查 → 公告 → 注册 → 续展 |

## 为什么不直接用原始状态 [#为什么不直接用原始状态]

同一件事在不同局叫法不同：USPTO 的 `LIVE` 与 EUIPO 的 `Registered` 都映射到 `primary: registered, stage: live`。统一口径让跨局筛查可以一条过滤写完：

```txt
status.primary=registered
status.stage=live
```

## 事件类型字典 [#事件类型字典]

常见 `event_type`（完整字典走 `GET /v1/status-codes`，0 点）：

| event_type | 触发 |
|---|---|
| `application_filed` | 提交申请 |
| `exam_report` | 审查意见 |
| `published` | 公告/公示 |
| `registered` | 注册 |
| `opposition_filed` | 被异议 |
| `renewed` | 续展 |
| `cancelled` / `expired` | 撤销 / 届满 |

<Callout type="warning" title="已知限制">

- 历史事件在部分局首同步时缺失，从我们的同步起点开始完整
- `raw` 字段永远保留官方原文 —— 对口径有疑义时以原文为准

</Callout>
