Sagebase の公開データの各行には sagebase_id が付いています。外部から Sagebase のデータを参照・保存・結合するときのキーはこの列です。このページは、ID の形式と「どこまで変わらないと約束するか」を書いたものです(2026-07〜08 に段階的に切り替えた方針)。


形式

{prefix}_{32 桁の 16 進数}   (3 文字 + _ + 32 桁 = 36 文字)
例: pol_3f2a9c1e8b7d4e6f0a1b2c3d4e5f6a7b
  • 16 進数部分は、その行の 自然キー(氏名・団体名・会議日・議案番号など、現実世界で実体を決める値の組)を BLAKE2b-128 でハッシュしたものです。UUID ではありません。乱数ではないので、同じ実体は何度取り込んでも同じ ID になります。
  • 2026-07〜08 の切替より前は乱数の UUID4 でした。当時の記事や文書で「UUID」と書いているものは古い方式の説明で、当時保存した ID の値は現在の ID とは別物です(ID が変わるとき)。

主な prefix

prefixテーブルprefixテーブル
govgoverning_bodies(議会・開催主体)mtgmeetings(会議)
cnfconferences(会議体)mntminutes(議事録)
polpoliticians(政治家)cvsconversations(発言)
ptypolitical_parties(政党)spkspeakers(発言者)
pgrparliamentary_groups(会派)prpproposals(議案)
elcelections(選挙)pdlproposal_deliberations(議案審議)
elmelection_members(当選者)psbproposal_submitters(議案提出者)
gofgovernment_officials(政府関係者)pjdproposal_judges(議案賛否・個人)

変わらない範囲

議事録のレイヤーまでは恒久

governing_bodies / conferences / meetings / minutes と、その親にあたるエンティティ(politicians / political_parties / elections / parliamentary_groups)の sagebase_id は自然キーから決定的に作られ、再取込・再パースで変わりません。

発言は「議事録の中の位置」で安定

発言(conversations)の sagebase_id は「所属する議事録の sagebase_id + 議事録内の通し番号(sequence_number)」から決まります。議事録の識別子(多くの議会では議事録の URL)と、会議の自然キー(会議体・会議日・会議名)が変わらない限り、再取込で発言の sagebase_id は変わりません。

保証しないもの

  • 議事録本文のパーサーを改良した場合(発言分割の閾値変更、話者判別ルールの改訂)は発言の境界が振り直され、conversations の sagebase_id は変わり得ます。完全な発言単位の恒久 ID は設計の範囲外です。
  • 賛否 3 表(proposal_vote_records と、その中間表 proposal_vote_parliamentary_groups / proposal_vote_politicians)は生成時の UUID4 のままで、再構築で変わる可能性があります。
  • 上流(議会サイト)が会議名や議事録 URL を付け替えた場合、該当行は別の実体として新しい ID になります。

特定の発言に恒久リンクを張りたいとき

「議事録(minutes)の sagebase_id + 発言の抜粋テキスト」 を保存してください。議事録 ID は恒久で、抜粋テキストがあればパーサー変更後も同じ発言を再同定できます。発言 ID 単体の保存は推奨しません。


内部 id は使わない

各テーブルには整数の id 列もありますが、これは内部処理用で、再取込で振り直されます。結合・ブックマーク・外部システムへの保存には sagebase_id を使ってください。


ID が変わるとき

  • 自然キーの定義(どの列の組から ID を作るか)は凍結された契約で、変える場合は該当テーブルの ID が全部動きます。実施する場合は、事前に お知らせ と sagebase-community で告知します。
  • 方式切替(乱数 UUID4 → 自然キー由来)より前の旧 ID から新 ID への対応表は提供していません。旧 ID を保存している場合は、該当データの自然キー(氏名・会議日など)で引き直してください。
  • 同じ ID のまま行の内容が更新されること(上流の訂正、名寄せの再実行)はあります。ID の安定は内容の不変を意味しません。

関連