Skip to main content

datasynth_core/models/
industry_benchmark.rs

1//! Industry benchmark models for comparative financial analysis.
2//!
3//! These models represent synthetic industry-average metrics that auditors
4//! and analysts use to benchmark an entity's performance against peers.
5
6use rust_decimal::Decimal;
7use serde::{Deserialize, Serialize};
8
9/// An industry benchmark metric representing a synthetic peer-group average.
10///
11/// Auditors use industry benchmarks (ISA 520 analytical procedures) to compare
12/// an entity's financial ratios and KPIs against sector norms. These benchmarks
13/// are entirely synthetic and labeled as such.
14#[derive(Debug, Clone, Serialize, Deserialize)]
15pub struct IndustryBenchmark {
16    /// Industry this benchmark applies to (e.g., "retail", "manufacturing")
17    pub industry: String,
18    /// Metric name (e.g., "gross_margin_pct", "current_ratio")
19    pub metric: String,
20    /// The benchmark value
21    #[serde(with = "rust_decimal::serde::str")]
22    pub value: Decimal,
23    /// Source attribution — always synthetic
24    pub source: String,
25    /// Fiscal period label (e.g., "FY2025")
26    pub period: String,
27}