xz_knowledge_graph/types/
attribute.rs1use serde::{Deserialize, Serialize};
2
3use super::confidence::Confidence;
4use super::provenance::Provenance;
5
6#[derive(Debug, Clone, Serialize, Deserialize)]
8pub struct AttributeValue {
9 pub value: String,
10 pub confidence: Confidence,
11 pub provenance: Option<Provenance>,
12}
13
14impl AttributeValue {
15 pub fn new(value: impl Into<String>) -> Self {
16 Self {
17 value: value.into(),
18 confidence: Confidence::Medium,
19 provenance: None,
20 }
21 }
22
23 pub fn with_confidence(mut self, confidence: Confidence) -> Self {
24 self.confidence = confidence;
25 self
26 }
27}