xz_knowledge_graph/types/
consistency.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize)]
5pub struct ConsistencyIssue {
6 pub severity: IssueSeverity,
7 pub issue_type: ConsistencyIssueType,
8 pub description: String,
9 pub related_entities: Vec<String>,
10 pub related_relations: Vec<String>,
11}
12
13#[derive(Debug, Clone, Serialize, Deserialize)]
14pub enum ConsistencyIssueType {
15 OrphanRelation,
16 SelfReferencing,
17 CircularReference,
18 DuplicateEntity,
19 ConflictingAttribute,
20 ExpiredRelation,
21 OrphanEntity,
22}
23
24#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
25pub enum IssueSeverity {
26 Info,
27 Warning,
28 Error,
29}