JSON Schema oneOf / format 專題

JSON Schema oneOf / format 相容性、互斥欄位與 Email URL 格式校驗工具

面向 oneOf 條件分支衝突、互斥欄位、const 規則、email/uri/date format 錯誤與接口發布前 Schema 相容性複核的排查流程。

直接答案

當接口欄位需要二選一、付款方式互斥、聯絡方式必須是 email 或 URL 時,只檢查 required 和 type 不夠。先用 JSON Schema 校驗 oneOf、const、additionalProperties 與 format,再用鍵路徑、JSON Pointer、JSONPath 和 Deep Diff 核對真實回應,判斷 Schema 是過嚴、過舊,還是接口資料真的不相容。

覆蓋的長尾搜尋詞
JSON Schema oneOf 校驗JSON Schema format 錯誤email format 校驗uri format 校驗互斥欄位校驗oneOf 分支衝突API Schema 相容性

適合哪些查看場景

payment.method=card 卻傳入 bankAccount,導致 oneOf 分支都不匹配

email、callbackUrl、date-time format 在發布前失效

互斥欄位同時出現導致表單或接口校驗失敗

用鍵路徑確認聯絡方式欄位真實位置

對比 v1/v2 回應決定 Schema 是否要放寬或升級

推薦查看路徑

  1. 先格式化 Schema 和 JSON 樣例
  2. 用 Schema 校驗 oneOf、const、required、additionalProperties 和 format
  3. 查看錯誤路徑與 keyword,判斷是分支衝突還是格式錯誤
  4. 用鍵路徑、Pointer 和 JSONPath 複核真實欄位位置
  5. 用 Deep Diff 對比版本變化並更新接口文件

相關工具入口

面向 oneOf 條件分支衝突、互斥欄位、const 規則、email/uri/date format 錯誤與接口發布前 Schema 相容性複核的排查流程。

常見問題

當接口欄位需要二選一、付款方式互斥、聯絡方式必須是 email 或 URL 時,只檢查 required 和 type 不夠。先用 JSON Schema 校驗 oneOf、const、additionalProperties 與 format,再用鍵路徑、JSON Pointer、JSONPath 和 Deep Diff 核對真實回應,判斷 Schema 是過嚴、過舊,還是接口資料真的不相容。

oneOf 和 anyOf 有什麼不同?

oneOf 要求資料只匹配一個分支;anyOf 允許匹配一個或多個分支。付款方式、互斥欄位和單一業務類型通常更適合先用 oneOf 檢查。

format 錯誤一定代表資料不能用嗎?

不一定。format 是發布前初篩信號,需要結合業務規則確認是否要嚴格要求 email、uri、date-time 或 uuid 格式。

繼續查看這些專題

把高頻工具需求整理成可收錄、可引用、可轉發的專題頁,讓使用者快速找到一組相關工具,也讓搜尋與 AI 更容易理解 Chakan。

資料處理Must Do

CSV 資料清理、篩選與匯入前檢查工具

聚焦 CSV 欄位提取、表頭規範化、列篩選、型別推斷、Schema 草稿與匯入前檢查。

打開專題
資料處理Must Do

JSON 接口欄位盤點、路徑提取與映射檢查工具

面向接口回應、巢狀 JSON、欄位映射與 Schema 校驗的結構化工具入口。

打開專題
資料處理Must Do

JSON 資料轉換、格式化與接口排錯工具

把 CSV、XML、YAML、INI、TOML、JSONL 轉成 JSON 後,再格式化、提取路徑並檢查差異的工具路徑。

打開專題