datasynth-core 5.29.0

Core domain models, traits, and distributions for synthetic enterprise data generation
Documentation
//! Statistical distribution samplers for realistic data generation.
//!
//! Based on empirical findings from the accounting network generation paper,
//! these samplers produce data that matches real-world distributions.
//!
//! # Modules
//!
//! - **amount**: Log-normal amount sampling with round-number bias
//! - **benford**: Benford's Law compliant sampling and fraud patterns
//! - **mixture**: Gaussian and Log-Normal mixture models
//! - **pareto**: Heavy-tailed Pareto distribution
//! - **weibull**: Time-to-event Weibull distribution
//! - **beta**: Beta distribution for proportions
//! - **zero_inflated**: Zero-inflated distributions
//! - **correlation**: Cross-field correlation engine
//! - **copula**: Copula-based dependency modeling
//! - **conditional**: Conditional distributions with breakpoints
//! - **drift**: Temporal drift and regime changes
//! - **industry_profiles**: Industry-specific distribution profiles
//! - **holidays**: Holiday calendar handling
//! - **seasonality**: Seasonal patterns
//! - **temporal**: Temporal sampling
//! - **business_day**: Business day calculations and settlement dates
//! - **period_end**: Period-end decay curves and dynamics
//! - **processing_lag**: Event-to-posting lag modeling
//! - **timezone**: Multi-region timezone handling
//! - **behavioral_drift**: Vendor/customer/employee behavioral drift
//! - **market_drift**: Economic cycles, commodities, price shocks
//! - **event_timeline**: Event timeline orchestrator
//! - **drift_recorder**: Ground truth drift label recorder
//! - **text_taxonomy**: SP6 PII-safe placeholder grammar + conditional template pools

mod advanced_amount;
mod amount;
mod behavioral_drift;
pub mod behavioral_priors;
mod benford;
mod beta;
mod business_day;
mod conditional;
pub mod conditional_iet;
mod copula;
mod correlation;
pub mod cross_entity_motifs;
mod drift;
mod drift_recorder;
mod event_timeline;
pub mod fanout_sampler;
mod holidays;
mod industry_profiles;
mod line_item;
mod market_drift;
mod mixture;
mod pareto;
mod period_end;
mod processing_lag;
mod seasonality;
pub mod source_active_window;
pub mod source_conditional_pair;
mod temporal;
mod temporal_context;
pub mod text_taxonomy;
mod timezone;
mod validation;
mod weibull;
mod zero_inflated;

pub use advanced_amount::*;
pub use amount::*;
pub use behavioral_drift::*;
pub use behavioral_priors::{
    ActiveLifetimePrior, BehavioralPriors, EmpiricalCdf, FanoutPrior, IetSummary, LagSummary,
    LineCountHistogram, LinesPerJePrior, LognormalParams, PerSourceIetPrior, PostingLagPrior,
    SourceMixPrior, ACTIVE_LIFETIME_DAY_BUCKETS, FANOUT_BUCKETS, LINE_COUNT_BUCKETS,
};
pub use benford::*;
pub use beta::*;
pub use business_day::*;
pub use conditional::*;
pub use conditional_iet::{ConditionalIETSampler, SourceIetState};
pub use copula::*;
pub use correlation::*;
pub use cross_entity_motifs::CrossEntityMotifSampler;
pub use drift::*;
pub use drift_recorder::*;
pub use event_timeline::*;
pub use fanout_sampler::{AttributeBucket, BipartiteFanoutSampler};
pub use holidays::*;
pub use industry_profiles::*;
pub use line_item::*;
pub use market_drift::*;
pub use mixture::*;
pub use pareto::*;
pub use period_end::*;
pub use processing_lag::*;
pub use seasonality::*;
pub use source_active_window::{ActiveWindow, MultiSegmentActiveWindow, SourceActiveWindow};
pub use temporal::*;
pub use temporal_context::*;
pub use text_taxonomy::{
    PiiHit, PiiPlaceholderKind, PlaceholderResolver, SyntheticExampleResolver, TaxonomyMeta,
    TemplateEntry, TemplatePool, TextTaxonomyPrior,
};
pub use timezone::*;
pub use validation::*;
pub use weibull::*;
pub use zero_inflated::*;