lenses/dataset-full.schema.json¶
dist/z-mount-lenses.full.jsonに生成する、レンズFull版の配布データ全体を検証します。
ルートの配布メタデータと、product-fullに従うproducts配列を結び付けるスキーマです。
ルートフィールド¶
次のフィールドはすべて必須です。
| パス | 型・値 | 説明 |
|---|---|---|
$schema |
固定URI | このスキーマのバージョン付き公開URL |
datasetName |
"Z Mount Lens Database" |
レンズ配布データの固定名称 |
datasetVariant |
"full" |
Full版を表す固定値 |
schemaVersion |
"1.0.0" |
JSON Schema一式で共有するバージョン |
dataVersion |
YYYY.MM.DD形式の文字列 |
データのリリース識別子。Gitタグにも同じ値を使う |
creator |
文字列 | 配布データの作成者 |
license |
"CC-BY-4.0" |
配布データに適用するSPDXライセンス識別子 |
licenseUrl |
HTTP(S) URL | CC BY 4.0のカノニカルURL |
repositoryUrl |
HTTP(S) URL | 収録製品データ、JSON Schema、ライセンス案内、Issue、リリース履歴を管理する公開リポジトリ |
recordCount |
0以上の整数 | productsに含まれる製品数 |
contentHash |
sha256:<64桁の小文字16進数> |
referenceDataとproductsを含む内容オブジェクトのSHA-256 |
referenceData |
reference-data | この配布データから参照するIDと表示情報 |
products |
product-full[] | すべての収録製品データから生成した製品配列。各要素に$schemaは含めない |
datasetNameは配布データ内の固定値であり、プロジェクト名「Z Mount Product Database」とは異なります。
JSON Schema以外の検証
recordCountは、生成処理がproductsの要素数から設定します。
hatch run validateでは、配布データを再構築した結果と生成ファイルが一致することを確認します。
JSON Schemaも、products[]内の$schemaを拒否します。
contentHashは、referenceDataとproductsを持つオブジェクトをRFC 8785に従って正規化し、そのUTF-8バイト列から計算します。
生成ファイルは直接編集しません
内容を変更する場合は、対応する収録製品データまたは生成処理を修正します。
関連ページ¶
- product-full:
products[]に含まれる製品1件 - 配布データを使う:Full版の取得方法とメタデータの確認
- データモデル:収録製品データから配布データを生成する流れ