soul-base 0.1.0

Data contract primitives for the Soul platform (IDs, Subject, Scope, Consent, Envelope, ...).
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
pub use crate::{
    actor::{ActorDomain, ActorId, ActorStatus, ActorType},
    envelope::Envelope,
    evidence::{DegradationReason, EvidenceLevel, EvidenceRequirement, EvidenceSource},
    id::{CausationId, CorrelationId, Id},
    ownership::OwnershipLevel,
    scope::{Consent, Scope},
    subject::Subject,
    tenant::TenantId,
    time::Timestamp,
    trace::TraceContext,
    traits::{Auditable, Causal, Partitioned, Versioned},
    validate::{Validate, ValidateError},
};

// Backward compatibility re-export
#[allow(deprecated)]
pub use crate::subject::SubjectKind;