name: datalog-schema-philosophy description: DataLog の 6 基本述語・3 層スキーマ戦略など、設計の不変原理を説明。監査ルール定義・IDB ルール設計・新規概念ノード追加・述語選択で判断が必要なときに参照する。運用レシピは datalog-debug-skill 側。

Datalog Schema Philosophy: Atomic Predicate logic

本ドキュメントは、本システムにおける Datalog スキーマ設計および知識表現の基本原則を定義します。

1. 原則:すべては述語論理である

エンティティ内部に属性を閉じ込めるのではなく、事実(Fact)の集合として世界を記述します。

2. 統合述語体系とSVO原則

世界を以下の 6 つの基本的なリレーションセットで記述します。主語(S)は常に時間的に新しく追加されたもの、またはより具体的なものを選択します。

A. 概念・実体関係 (Instance/Scope)

B. 1:1 属性関係 (Attribute)

C. 1:N 構成関係 (Composition)

3. アトミックなベーススキーマと規則による翻案

4. 属性からドメイン述語への翻訳レイヤー (Strict Layering)

「取引 -> 支払い」のような単一のツリー構造をデータ側で保証(暗黙のカテゴライズ)するのではなく、属性の組み合わせから規則によって動的にドメイン用語を導出します。

5. 制約の外部化 (Validate Queries)

スキーマによる静的な制約(型、単一性など)以外のビジネスロジックに伴う制約は、ハードコードせず Validate Query(監査ルール)として記述します。

5. 実装への反映

6. 実行時スキーマ情報の取得