用語集¶
このページでは、Z Mount Product Databaseの日本語ドキュメントで使う用語の意味と表記を定めます。 JSONのキー、列挙値、ファイル名はコード表記のまま示します。
プロジェクトと収録対象¶
- Z Mount Product Database
- ニコンZマウントに関わる製品情報を、再利用できるデータセットとして公開するプロジェクトの名称です。
- Zマウント
- ニコンのZマウントシステムを指します。
JSONでは、マウントシステムID
nikon-zで表します。 - レンズと関連光学製品
- Zマウント用として販売された写真用レンズ、シネマ用レンズ、テレコンバーター、ピンホールなどを指します。
- マウントアダプター
- 他の交換レンズマウントからZマウントへの変換を主目的とする製品を指します。
- カメラ
- Zマウントを採用するカメラを指します。 現在の配布データには含まれません。 将来追加する場合は、独立したデータセットとします。
- 候補製品
- 収録するかどうかを調査する製品です。 調査結果データには、収録、除外、要確認のいずれかを記録します。
- 収録製品
- 収録対象と判断され、対応する収録製品データがある製品です。
二つのデータセット¶
- レンズと関連光学製品のデータセット
- レンズと関連光学製品を収録するデータセットです。
ファイルパスとJSON SchemaのURLには
lensesを使います。 収録する製品種別は、レンズ、テレコンバーター、ピンホールの三つです。 - マウントアダプターのデータセット
- マウントアダプターを収録するデータセットです。
ファイルパスとJSON SchemaのURLには
adaptersを使います。 レンズと関連光学製品とは異なるデータ構造を使い、製品種別を表すproductTypeは持ちません。
調査から配布までのデータ¶
- 調査結果データ
- 候補製品ごとに、収録判断とその根拠として使った情報源を記録するJSONデータです。
未解決事項がある場合は
unresolvedに記録します。research/results/lenses/またはresearch/results/adapters/に置きます。 - 収録製品データ
- 収録対象と判断した製品について、根拠となる情報源で確認した製品情報を、1製品につき1つのJSONファイルに記録したデータです。
data/records/lenses/またはdata/records/adapters/に置きます。 - 配布データ
- 収録製品データから自動生成され、利用者が検索、分析、再配布、Web表示などに使うJSONデータです。
dist/の3ファイルと、GitHub Releasesで配布する同名ファイルを指します。 - 製品一覧
- 収録製品と調査状況を人が確認するための
PRODUCTS.mdです。 調査結果データと収録製品データから自動生成されます。 - 生成ファイル
- 生成処理で作られる配布データと
PRODUCTS.mdです。 直接編集しません。
収録判断¶
- 収録(
included) - 候補製品を収録対象と判断した状態です。
対応する収録製品データのIDを
recordIdに記録します。 - 除外(
excluded) - 根拠となる情報源に基づいて、収録対象外と判断した状態です。
判断理由を
reasonに記録します。 - 要確認(
needs-review) - 収録するかどうかを確定できない状態です。
次に確認する具体的な問いを
unresolvedに記録します。 - 未解決事項(
unresolved) - 追加の確認が必要な具体的な問いです。
要確認では、1件以上を調査結果データの
unresolvedに記録します。 - 最終確認日(
reviewedOn) - 調査結果データに記録した判断と情報源を最後に確認した日です。
発表と販売の確認¶
- 発売発表
- メーカーまたはブランドが、製品としての発売を公式に発表することです。
収録製品データの
announcementDateには、この発表日を記録します。 - 開発発表
- 開発中の製品を予告する発表です。 開発発表だけでは収録製品データを作らず、発売発表か販売を確認できるまで要確認とします。
- 販売確認
- 製品が実際に販売されたこと、または入手可能になったことを、収録判断の根拠となる情報源で確認することです。 発売発表のページが見つからない場合でも、販売確認によって収録できることがあります。
製品情報と情報源¶
- メーカー
- 製品を製造する主体です。 収録製品データでは、メーカーとブランドを分けて記録します。
- ブランド
- 製品に表示され、販売上の識別に使われる名称です。 メーカーと同じ場合も異なる場合もあります。
- 公式製品ページ
- 対象製品そのものを扱う公式のメインページです。
収録製品データの
officialProductPagesに記録します。 - 情報源
- 収録判断や製品情報の確認に使ったページです。
仕様書、マニュアル、発表、サポートページなどを、調査結果データの
sourcesに記録します。 - レジストリ
- データ内で使うIDと名称の対応を管理するデータです。 メーカーとブランドのレジストリ、およびマウントシステムのレジストリがあります。
- ID
- 製品、調査結果、レジストリ内の項目を識別する文字列です。 一意性と公開後の扱いは、対象ごとに定めた規則に従います。
- 製品ID
- 収録製品データと配布データの
idです。 名前空間内で一意です。 ブランド名や製品名をもとに、小文字英数字をハイフンで区切った、人が読めるスラッグ形式です。 スラッグ内の語と製品情報との対応関係は、公開データの仕様に含まれません。 メーカー、ブランド、製品名、仕様、製品種別はidから解析せず、それぞれの専用フィールドを使います。 本プロジェクトがGitHub Releasesで初めて正式公開した後はIDを変更せず、別製品への割り当てや削除後の再利用も行いません。 - 複合キー(composite key)
- 複数の値を組み合わせて、1件のレコードを一意に識別するキーです。
このプロジェクトでは、データセットの名前空間と製品IDを組み合わせます。
レンズFull版とLight版は
("lenses", id)、マウントアダプターFull版は("adapters", id)を使います。 異なる名前空間では同じidを使用できるため、複数のデータセットをまとめる場合はid単体を主キーにしません。 複合キーが変わらないことは、その製品が最新版や以後のすべてのリリースに収録されることを保証しません。
配布ファイルと取得方法¶
- レンズFull版
- レンズと関連光学製品の収録製品データを統合し、記録した項目をすべて含む
z-mount-lenses.full.jsonです。 - レンズLight版
- レンズFull版から、既存のWeb表示に必要な項目だけを残した
z-mount-lenses.light.jsonです。 収録する製品とその順序はレンズFull版と一致し、IDと保持する値も書き換えません。 - マウントアダプターFull版
- マウントアダプターの収録製品データを統合し、記録した項目をすべて含む
z-mount-adapters.full.jsonです。 マウントアダプターにはLight版を設けません。 - 最新版
- GitHub Releasesから、その時点で最新の配布データを取得する方法です。
URLに
releases/latest/download/を使います。 - 特定バージョン
- 特定の
dataVersionをURLに含め、同じ版の配布データを継続して取得する方法です。
バージョンと検証¶
- JSON Schema
- JSONの型、必須項目、許可する値、条件付き制約を定義する検証規則です。 このプロジェクトではJSON Schema Draft 2020-12を使います。
- スキーマバージョン(
schemaVersion) - すべての配布データに共通するJSON Schema一式のバージョンです。
1.0.0のように、三つの整数をピリオドで区切るSemVer形式で表します。 - データバージョン(
dataVersion) - 収録内容のリリースを識別する値です。
Gitタグにも同じ値を使い、
YYYY.MM.DD形式で表します。 - ハッシュ値(
contentHash) - 配布データの内容を照合するために、SHA-256で計算した値です。
配布データごとに、
referenceDataとproductsまたはadaptersを含む内容オブジェクトをRFC 8785に従って正規化して計算します。 - リポジトリ検証
- JSON Schemaだけでは確認できない、リポジトリ全体の整合性を確認する処理です。 ファイル名と配置、ID、レジストリ参照、ファイル間の対応などを対象とします。