1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//! Schema inference engine for JSON data
//!
//! This module provides automatic schema inference from raw JSON data,
//! detecting types, formats, and generating JSON Schema definitions.
//!
//! ## Features
//!
//! - **Type inference** - Detect JSON types (string, number, boolean, array, object)
//! - **Format detection** - Recognize common formats (date, uuid, email, uri, etc.)
//! - **Schema merging** - Combine schemas to find the minimum common schema
//! - **Nullability tracking** - Track optional vs required fields
//! - **Example collection** - Gather sample values for documentation
//!
//! ## Example
//!
//! ```rust,ignore
//! use data_modelling_core::inference::{SchemaInferrer, InferenceConfig};
//!
//! let mut inferrer = SchemaInferrer::new();
//!
//! // Add JSON records
//! inferrer.add_json(r#"{"name": "Alice", "age": 30}"#)?;
//! inferrer.add_json(r#"{"name": "Bob", "age": 25, "email": "bob@example.com"}"#)?;
//!
//! // Generate schema
//! let schema = inferrer.finalize()?;
//! println!("{}", serde_json::to_string_pretty(&schema)?);
//! ```
pub use ;
pub use InferenceError;
pub use ;
pub use ;
pub use ;
pub use ;
// Re-export parallel inference functions when staging feature is enabled
pub use ;