Changes for page Data Model (From Specification Chat)
Last modified by Robert Schaub on 2025/12/24 20:35
From version 5.2
edited by Robert Schaub
on 2025/11/27 12:31
on 2025/11/27 12:31
Change comment:
There is no comment for this version
To version 5.1
edited by Robert Schaub
on 2025/11/27 12:28
on 2025/11/27 12:28
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,418 +416,3 @@ 1 -((( 2 - 3 -))) 4 - 5 -= 5. Data Model = 6 - 7 -The FactHarbor data model centers on four fully versioned, immutable entities: 8 - 9 -* **Claim** 10 -* **Scenario** 11 -* **Evidence** 12 -* **Verdict** 13 - 14 -These entities form the structured **“truth landscape”** for each claim. 15 -The model is explicitly **versioned**, **traceable**, and **federation-ready**. 16 - 17 -To keep the system auditable and explainable, FactHarbor uses a consistent 18 -**identity vs. version** pattern: 19 - 20 -* Identity entities (e.g. {{code}}CLAIM{{/code}}, {{code}}SCENARIO{{/code}}) 21 - define *what* something is in a stable sense. 22 -* Version entities (e.g. {{code}}CLAIM_VERSION{{/code}}, {{code}}SCENARIO_VERSION{{/code}}) 23 - define *how that thing looked at a given point in time*. 24 - 25 -All reasoning (e.g. verdicts, review actions) is attached to **versions**, never to 26 -mutable identities. 27 - 28 ----- 29 - 30 -= 5.1 Core entities and versioning pattern = 31 - 32 -(% class="wikitable" %) 33 -| **Logical concept** | **Identity entity** | **Version entity** | **Notes** 34 -| Claim (what people argue about) | {{code}}CLAIM{{/code}} | {{code}}CLAIM_VERSION{{/code}} | Claim text, phrasing, and metadata live in {{code}}CLAIM_VERSION{{/code}}. The identity {{code}}CLAIM{{/code}} stays stable across rephrasings. 35 -| Scenario (interpretive frame) | {{code}}SCENARIO{{/code}} | {{code}}SCENARIO_VERSION{{/code}} | A SCENARIO belongs to a CLAIM. Its versions capture evolving definitions, assumptions, and boundaries. 36 -| Evidence (source / datapoint) | {{code}}EVIDENCE{{/code}} | {{code}}EVIDENCE_VERSION{{/code}} | Identity of a source vs. specific extractions / updates over time. 37 -| Verdict (assessment) | {{code}}VERDICT{{/code}} | {{code}}VERDICT_VERSION{{/code}} | A VERDICT is defined per SCENARIO; VERDICT_VERSION captures the history of assessments. 38 -| Scenario–Evidence link | {{code}}SCENARIO_EVIDENCE_LINK{{/code}} | {{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}} | Links bind scenario versions to evidence versions with relevance & direction. 39 -| Claim cluster (semantic group) | {{code}}CLAIM_CLUSTER{{/code}} | – | Groups semantically related claims; mainly for discovery and navigation. 40 - 41 -Key design decisions: 42 - 43 -* A {{code}}CLAIM{{/code}} belongs to exactly one {{code}}CLAIM_CLUSTER{{/code}}. 44 -* A {{code}}SCENARIO{{/code}} belongs to exactly one {{code}}CLAIM{{/code}} 45 - (scenarios live at the *claim* level, not per individual phrasing). 46 -* Verdicts and Scenario–Evidence links are always attached to **versions**: 47 -* {{code}}SCENARIO_VERSION{{/code}} + 48 -{{code}}EVIDENCE_VERSION{{/code}} → 49 -{{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}} 50 -* {{code}}SCENARIO_VERSION{{/code}} → 51 -{{code}}VERDICT_VERSION{{/code}} 52 - 53 -This ensures that when a Scenario or Evidence changes, old verdicts and links 54 -remain intact as historical records and can be revisited. 55 - 56 ----- 57 - 58 -= 5.2 Core Data Model ERD (expanded, versioned) = 59 - 60 -The following Mermaid ER diagram shows the main entities and their relationships. 61 -The convention is that fields ending in {{code}}Id{{/code}} are primary keys, 62 -and fields with {{code}}...IdFk{{/code}} are foreign keys. 63 - 64 -{{comment}} Core Data Model ERD (Mermaid, from /Specification/Diagrams/Data Model) {{/comment}} 65 -{{include document="FactHarbor.Playground.Core Data Model ERD Page (from Specification chat).WebHome"/}} 66 - 67 -= Core Data Model ERD (Versioned) = 68 - 69 -This diagram shows the full core data model with all versioned entities. 70 - 71 -{{mermaid}} 72 -erDiagram 73 - CLAIM_CLUSTER { 74 - string ClusterID PK 75 - string EmbeddingVectorRef 76 - string Theme 77 - } 78 - 79 - CLAIM { 80 - string ClaimID PK 81 - string ClusterID FK 82 - string Status 83 - datetime CreatedAt 84 - } 85 - 86 - CLAIM_VERSION { 87 - string ClaimVersionID PK 88 - string ClaimID FK 89 - string Text 90 - string ClaimType 91 - string Domain 92 - datetime CreatedAt 93 - } 94 - 95 - SCENARIO { 96 - string ScenarioID PK 97 - string ClaimID FK 98 - string Name 99 - datetime CreatedAt 100 - } 101 - 102 - SCENARIO_VERSION { 103 - string ScenarioVersionID PK 104 - string ScenarioID FK 105 - string Definitions 106 - string Assumptions 107 - string Boundaries 108 - datetime CreatedAt 109 - } 110 - 111 - EVIDENCE { 112 - string EvidenceID PK 113 - string SourceType 114 - string URL 115 - float ReliabilityScore 116 - } 117 - 118 - EVIDENCE_VERSION { 119 - string EvidenceVersionID PK 120 - string EvidenceID FK 121 - string Summary 122 - float ReliabilityScore 123 - datetime CreatedAt 124 - } 125 - 126 - SCENARIO_EVIDENCE_LINK { 127 - string LinkID PK 128 - string ScenarioVersionID FK 129 - string EvidenceVersionID FK 130 - float Relevance 131 - string Direction 132 - } 133 - 134 - VERDICT { 135 - string VerdictID PK 136 - string ScenarioID FK 137 - } 138 - 139 - VERDICT_VERSION { 140 - string VerdictVersionID PK 141 - string VerdictID FK 142 - float Verdict 143 - float Confidence 144 - string Reasoning 145 - datetime CreatedAt 146 - } 147 - 148 - CLAIM_CLUSTER ||--o{ CLAIM : contains 149 - CLAIM ||--o{ CLAIM_VERSION : versions 150 - 151 - CLAIM ||--o{ SCENARIO : has 152 - SCENARIO ||--o{ SCENARIO_VERSION : versions 153 - 154 - EVIDENCE ||--o{ EVIDENCE_VERSION : versions 155 - 156 - SCENARIO_VERSION ||--o{ SCENARIO_EVIDENCE_LINK : links 157 - EVIDENCE_VERSION ||--o{ SCENARIO_EVIDENCE_LINK : linked 158 - 159 - SCENARIO ||--o{ VERDICT : assessed 160 - VERDICT ||--o{ VERDICT_VERSION : versions 161 -{{/mermaid}} 162 - 163 -{{info}} 164 -All key entities are explicitly versioned here (…VERSION tables). 165 -This reflects the versioning requirements in the textual Data Model chapter. 166 -{{/info}} 167 - 168 - 169 -**Important points:** 170 - 171 -* Scenarios and Evidence are **linked via their versions** 172 - ({{code}}SCENARIO_VERSION{{/code}} and {{code}}EVIDENCE_VERSION{{/code}}). 173 -* Verdicts are **per ScenarioVersion** and stored in {{code}}VERDICT_VERSION{{/code}}. 174 -* {{code}}CLAIM_CLUSTER{{/code}} is shared across diagrams; it is shown here and in the Data Use / Review model. 175 - 176 -All version entities are immutable: once created, they are never changed, only 177 -superseded by newer versions. 178 - 179 ----- 180 - 181 -= 5.3 Data Use & Review ERD (expanded, versioned) = 182 - 183 -The **Data Use** model captures who does what with which versioned data: 184 - 185 -* Users (including technical users) 186 -* Roles and role assignments 187 -* Review actions on versioned entities 188 - 189 -{{comment}} Data Use ERD (Mermaid, from /Specification/Diagrams/Data Use ERD) {{/comment}} 190 -{{include document="FactHarbor.Playground.Data Use ERD Page (from Specification chat).WebHome"/}} 191 - 192 -= Data Use ERD (Roles, Review & Versioned Entities) = 193 - 194 -This diagram shows how users, roles, and review actions relate to the 195 -versioned core entities. 196 - 197 -{{mermaid}} 198 -erDiagram 199 - %% Core clusters shown for context 200 - CLAIM_CLUSTER { 201 - string ClusterID PK 202 - string EmbeddingVectorRef 203 - string Theme 204 - } 205 - 206 - CLAIM { 207 - string ClaimID PK 208 - string ClusterID FK 209 - string Status 210 - datetime CreatedAt 211 - } 212 - 213 - CLAIM_VERSION { 214 - string ClaimVersionID PK 215 - string ClaimID FK 216 - string Text 217 - string ClaimType 218 - string Domain 219 - datetime CreatedAt 220 - } 221 - 222 - SCENARIO { 223 - string ScenarioID PK 224 - string ClaimID FK 225 - string Name 226 - datetime CreatedAt 227 - } 228 - 229 - SCENARIO_VERSION { 230 - string ScenarioVersionID PK 231 - string ScenarioID FK 232 - string Definitions 233 - string Assumptions 234 - string Boundaries 235 - datetime CreatedAt 236 - } 237 - 238 - EVIDENCE { 239 - string EvidenceID PK 240 - string SourceType 241 - string URL 242 - float ReliabilityScore 243 - } 244 - 245 - EVIDENCE_VERSION { 246 - string EvidenceVersionID PK 247 - string EvidenceID FK 248 - string Summary 249 - float ReliabilityScore 250 - datetime CreatedAt 251 - } 252 - 253 - VERDICT { 254 - string VerdictID PK 255 - string ScenarioID FK 256 - } 257 - 258 - VERDICT_VERSION { 259 - string VerdictVersionID PK 260 - string VerdictID FK 261 - float Verdict 262 - float Confidence 263 - string Reasoning 264 - datetime CreatedAt 265 - } 266 - 267 - %% Users and roles 268 - USER { 269 - string UserID PK 270 - string Handle 271 - string Email 272 - } 273 - 274 - TECHNICAL_USER { 275 - string UserID PK 276 - string SystemName 277 - } 278 - 279 - CONTRIBUTING_USER { 280 - string UserID PK 281 - string DisplayName 282 - } 283 - 284 - TRUSTED_CONTRIBUTOR { 285 - string UserID PK 286 - string TrustLevel 287 - } 288 - 289 - REVIEWER { 290 - string UserID PK 291 - string Domain 292 - } 293 - 294 - EXPERT { 295 - string UserID PK 296 - string ExpertiseArea 297 - } 298 - 299 - FEDERATION_NODE { 300 - string NodeID PK 301 - string Region 302 - } 303 - 304 - FEDERATION_ADMIN { 305 - string UserID PK 306 - string Permissions 307 - } 308 - 309 - REVIEW_ACTION { 310 - string ReviewActionID PK 311 - string UserID FK 312 - string TargetEntityType 313 - string TargetEntityVersionID 314 - string ActionType 315 - string Comment 316 - datetime Timestamp 317 - } 318 - 319 - %% Inheritance / specialization (modelled as relationships) 320 - USER ||--o{ TECHNICAL_USER : "is a" 321 - USER ||--o{ CONTRIBUTING_USER : "is a" 322 - 323 - CONTRIBUTING_USER ||--o{ TRUSTED_CONTRIBUTOR : "subset" 324 - CONTRIBUTING_USER ||--o{ REVIEWER : "subset" 325 - CONTRIBUTING_USER ||--o{ EXPERT : "subset" 326 - 327 - TECHNICAL_USER ||--o{ FEDERATION_NODE : "operates" 328 - TECHNICAL_USER ||--o{ FEDERATION_ADMIN : "administers" 329 - 330 - %% Review actions on versioned entities 331 - USER ||--o{ REVIEW_ACTION : performs 332 - 333 - REVIEW_ACTION }o--|| CLAIM_VERSION : reviews 334 - REVIEW_ACTION }o--|| SCENARIO_VERSION : reviews 335 - REVIEW_ACTION }o--|| EVIDENCE_VERSION : reviews 336 - REVIEW_ACTION }o--|| VERDICT_VERSION : reviews 337 -{{/mermaid}} 338 - 339 -{{info}} 340 -This diagram focuses on *who* uses and reviews *which* versioned entities. 341 -USER is the base type; TECHNICAL_USER and CONTRIBUTING_USER are specializations. 342 -Other roles (REVIEWER, EXPERT, TRUSTED_CONTRIBUTOR, FEDERATION_ADMIN, FEDERATION_NODE) 343 -are modelled as specializations or technical subtypes. 344 -{{/info}} 345 - 346 - 347 -Notes: 348 - 349 -* Most roles (READER, CONTRIBUTOR, TRUSTED_CONTRIBUTOR, REVIEWER, MODERATOR, 350 - SYSTEM_ADMIN, FEDERATION_OPERATOR, FEDERATION_ADMIN, …) are represented as rows 351 - in {{code}}ROLE{{/code}}. 352 -* {{code}}TECHNICAL_USER{{/code}} captures strictly technical accounts (API keys, 353 - node-to-node federation agents, batch jobs). All other roles can, in principle, 354 - be held by both human and technical users where appropriate. 355 -* A {{code}}READER{{/code}} normally does **not** perform REVIEW_ACTIONs, while 356 - roles like REVIEWER, TRUSTED_CONTRIBUTOR, MODERATOR, and some federation roles 357 - do. 358 - 359 ----- 360 - 361 -= 5.4 Versioning and re-evaluation behavior = 362 - 363 -This section ties the data model to the re-evaluation logic 364 -(described in more detail in the Versioning and Automation chapters). 365 - 366 -* When a new {{code}}EVIDENCE_VERSION{{/code}} is created: 367 -* All related {{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}} entries referencing 368 - that evidence version are candidates for re-assessment. 369 -* Related {{code}}VERDICT_VERSION{{/code}} entries may become **outdated** and 370 - are queued for re-evaluation. 371 - 372 -* When a new {{code}}SCENARIO_VERSION{{/code}} is created: 373 -* It may inherit some links from earlier scenarios, or start empty depending 374 - on the change classification (cosmetic vs. conceptual). 375 -* All verdicts for that scenario are recalculated and stored as new 376 -{{code}}VERDICT_VERSION{{/code}} entries. 377 - 378 -* REVIEW_ACTIONs are always attached to the **exact version** that was seen by 379 - the reviewer. This preserves a faithful audit trail if data later changes. 380 - 381 -* In a federated environment, nodes can choose: 382 -* which identity entities to replicate (CLAIM, SCENARIO, EVIDENCE, VERDICT) 383 -* which versioned entities to replicate (e.g. only accepted VERDICT_VERSIONs, 384 - only EVIDENCE_VERSIONs above a reliability threshold, etc.) 385 - 386 ----- 387 - 388 -= 5.5 Behavioral Notes = 389 - 390 -== 5.5.1 Late-Arriving Evidence == 391 - 392 -New evidence versions can make existing verdicts **outdated** and may trigger 393 -re-evaluation cascades. This is handled by the global trigger and automation 394 -architecture (see the Versioning & Automation chapters). 395 - 396 -== 5.5.2 Scenario Evolution == 397 - 398 -Scenario changes create new SCENARIO_VERSIONs; dependent verdicts and 399 -Scenario–Evidence links are re-assessed. Old versions remain available for 400 -historical comparison and reproducibility. 401 - 402 -== 5.5.3 Federation == 403 - 404 -Federated nodes can replicate subsets of the graph, including: 405 - 406 -* Claims and Scenarios of local interest 407 -* Evidence metadata (without full content) 408 -* Verdict lineages used for local decision-making 409 - 410 -Federation-specific entities (such as {{code}}FEDERATION_NODE{{/code}}, 411 -replication logs, and trust rules) are described in the Federation & 412 -Decentralization chapter and build on top of the core data model defined here. 413 - 414 ----- 415 - 416 416 == 1. Overall analysis & review of the data model == 417 417 418 418 === 1.1 Strengths of the current design === ... ... @@ -580,3 +580,155 @@ 580 580 ))) 581 581 * That’s fine for now; I’ll just clarify that those belong to a “Processing / AKEL” submodel, not the core logical data model. 582 582 ))) 168 + 169 += 5. Data Model = 170 + 171 +The FactHarbor data model centers on four fully versioned, immutable entities: 172 + 173 +* **Claim** 174 +* **Scenario** 175 +* **Evidence** 176 +* **Verdict** 177 + 178 +These entities form the structured **“truth landscape”** for each claim. 179 +The model is explicitly **versioned**, **traceable**, and **federation-ready**. 180 + 181 +To keep the system auditable and explainable, FactHarbor uses a consistent 182 +**identity vs. version** pattern: 183 + 184 +* Identity entities (e.g. {{code}}CLAIM{{/code}}, {{code}}SCENARIO{{/code}}) 185 + define *what* something is in a stable sense. 186 +* Version entities (e.g. {{code}}CLAIM_VERSION{{/code}}, {{code}}SCENARIO_VERSION{{/code}}) 187 + define *how that thing looked at a given point in time*. 188 + 189 +All reasoning (e.g. verdicts, review actions) is attached to **versions**, never to 190 +mutable identities. 191 + 192 +---- 193 + 194 += 5.1 Core entities and versioning pattern = 195 + 196 +(% class="wikitable" %) 197 +| **Logical concept** | **Identity entity** | **Version entity** | **Notes** 198 +| Claim (what people argue about) | {{code}}CLAIM{{/code}} | {{code}}CLAIM_VERSION{{/code}} | Claim text, phrasing, and metadata live in {{code}}CLAIM_VERSION{{/code}}. The identity {{code}}CLAIM{{/code}} stays stable across rephrasings. 199 +| Scenario (interpretive frame) | {{code}}SCENARIO{{/code}} | {{code}}SCENARIO_VERSION{{/code}} | A SCENARIO belongs to a CLAIM. Its versions capture evolving definitions, assumptions, and boundaries. 200 +| Evidence (source / datapoint) | {{code}}EVIDENCE{{/code}} | {{code}}EVIDENCE_VERSION{{/code}} | Identity of a source vs. specific extractions / updates over time. 201 +| Verdict (assessment) | {{code}}VERDICT{{/code}} | {{code}}VERDICT_VERSION{{/code}} | A VERDICT is defined per SCENARIO; VERDICT_VERSION captures the history of assessments. 202 +| Scenario–Evidence link | {{code}}SCENARIO_EVIDENCE_LINK{{/code}} | {{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}} | Links bind scenario versions to evidence versions with relevance & direction. 203 +| Claim cluster (semantic group) | {{code}}CLAIM_CLUSTER{{/code}} | – | Groups semantically related claims; mainly for discovery and navigation. 204 + 205 +Key design decisions: 206 + 207 +* A {{code}}CLAIM{{/code}} belongs to exactly one {{code}}CLAIM_CLUSTER{{/code}}. 208 +* A {{code}}SCENARIO{{/code}} belongs to exactly one {{code}}CLAIM{{/code}} 209 + (scenarios live at the *claim* level, not per individual phrasing). 210 +* Verdicts and Scenario–Evidence links are always attached to **versions**: 211 +* {{code}}SCENARIO_VERSION{{/code}} + 212 +{{code}}EVIDENCE_VERSION{{/code}} → 213 +{{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}} 214 +* {{code}}SCENARIO_VERSION{{/code}} → 215 +{{code}}VERDICT_VERSION{{/code}} 216 + 217 +This ensures that when a Scenario or Evidence changes, old verdicts and links 218 +remain intact as historical records and can be revisited. 219 + 220 +---- 221 + 222 += 5.2 Core Data Model ERD (expanded, versioned) = 223 + 224 +The following Mermaid ER diagram shows the main entities and their relationships. 225 +The convention is that fields ending in {{code}}Id{{/code}} are primary keys, 226 +and fields with {{code}}...IdFk{{/code}} are foreign keys. 227 + 228 +{{comment}} Core Data Model ERD (Mermaid, from /Specification/Diagrams/Data Model) {{/comment}} 229 +{{include document="FactHarbor.Playground.Core Data Model ERD Page (from Specification chat).WebHome"/}} 230 + 231 +**Important points:** 232 + 233 +* Scenarios and Evidence are **linked via their versions** 234 + ({{code}}SCENARIO_VERSION{{/code}} and {{code}}EVIDENCE_VERSION{{/code}}). 235 +* Verdicts are **per ScenarioVersion** and stored in {{code}}VERDICT_VERSION{{/code}}. 236 +* {{code}}CLAIM_CLUSTER{{/code}} is shared across diagrams; it is shown here and in the Data Use / Review model. 237 + 238 +All version entities are immutable: once created, they are never changed, only 239 +superseded by newer versions. 240 + 241 +---- 242 + 243 += 5.3 Data Use & Review ERD (expanded, versioned) = 244 + 245 +The **Data Use** model captures who does what with which versioned data: 246 + 247 +* Users (including technical users) 248 +* Roles and role assignments 249 +* Review actions on versioned entities 250 + 251 +{{comment}} Data Use ERD (Mermaid, from /Specification/Diagrams/Data Use ERD) {{/comment}} 252 +{{include document="FactHarbor.Playground.Data Use ERD Page (from Specification chat).WebHome"/}} 253 + 254 +Notes: 255 + 256 +* Most roles (READER, CONTRIBUTOR, TRUSTED_CONTRIBUTOR, REVIEWER, MODERATOR, 257 + SYSTEM_ADMIN, FEDERATION_OPERATOR, FEDERATION_ADMIN, …) are represented as rows 258 + in {{code}}ROLE{{/code}}. 259 +* {{code}}TECHNICAL_USER{{/code}} captures strictly technical accounts (API keys, 260 + node-to-node federation agents, batch jobs). All other roles can, in principle, 261 + be held by both human and technical users where appropriate. 262 +* A {{code}}READER{{/code}} normally does **not** perform REVIEW_ACTIONs, while 263 + roles like REVIEWER, TRUSTED_CONTRIBUTOR, MODERATOR, and some federation roles 264 + do. 265 + 266 +---- 267 + 268 += 5.4 Versioning and re-evaluation behavior = 269 + 270 +This section ties the data model to the re-evaluation logic 271 +(described in more detail in the Versioning and Automation chapters). 272 + 273 +* When a new {{code}}EVIDENCE_VERSION{{/code}} is created: 274 +* All related {{code}}SCENARIO_EVIDENCE_LINK_VERSION{{/code}} entries referencing 275 + that evidence version are candidates for re-assessment. 276 +* Related {{code}}VERDICT_VERSION{{/code}} entries may become **outdated** and 277 + are queued for re-evaluation. 278 + 279 +* When a new {{code}}SCENARIO_VERSION{{/code}} is created: 280 +* It may inherit some links from earlier scenarios, or start empty depending 281 + on the change classification (cosmetic vs. conceptual). 282 +* All verdicts for that scenario are recalculated and stored as new 283 +{{code}}VERDICT_VERSION{{/code}} entries. 284 + 285 +* REVIEW_ACTIONs are always attached to the **exact version** that was seen by 286 + the reviewer. This preserves a faithful audit trail if data later changes. 287 + 288 +* In a federated environment, nodes can choose: 289 +* which identity entities to replicate (CLAIM, SCENARIO, EVIDENCE, VERDICT) 290 +* which versioned entities to replicate (e.g. only accepted VERDICT_VERSIONs, 291 + only EVIDENCE_VERSIONs above a reliability threshold, etc.) 292 + 293 +---- 294 + 295 += 5.5 Behavioral Notes = 296 + 297 +== 5.5.1 Late-Arriving Evidence == 298 + 299 +New evidence versions can make existing verdicts **outdated** and may trigger 300 +re-evaluation cascades. This is handled by the global trigger and automation 301 +architecture (see the Versioning & Automation chapters). 302 + 303 +== 5.5.2 Scenario Evolution == 304 + 305 +Scenario changes create new SCENARIO_VERSIONs; dependent verdicts and 306 +Scenario–Evidence links are re-assessed. Old versions remain available for 307 +historical comparison and reproducibility. 308 + 309 +== 5.5.3 Federation == 310 + 311 +Federated nodes can replicate subsets of the graph, including: 312 + 313 +* Claims and Scenarios of local interest 314 +* Evidence metadata (without full content) 315 +* Verdict lineages used for local decision-making 316 + 317 +Federation-specific entities (such as {{code}}FEDERATION_NODE{{/code}}, 318 +replication logs, and trust rules) are described in the Federation & 319 +Decentralization chapter and build on top of the core data model defined here.