shex_validation/
lib.rs

1//! ShEx validation
2//!
3//!
4mod result_value;
5// mod validation_state;
6pub mod atom;
7pub mod reason;
8pub mod rule;
9pub mod schema_without_imports;
10pub mod schema_without_imports_error;
11pub mod shex_config;
12pub mod shex_format;
13pub mod solver;
14pub mod validator;
15pub mod validator_config;
16pub mod validator_error;
17pub mod validator_runner;
18
19pub use crate::atom::*;
20pub use crate::reason::*;
21pub use crate::result_value::*;
22pub use crate::rule::*;
23pub use crate::schema_without_imports::*;
24pub use crate::schema_without_imports_error::*;
25pub use crate::shex_config::*;
26pub use crate::shex_format::*;
27pub use crate::validator::*;
28pub use crate::validator_config::*;
29pub use crate::validator_error::*;
30pub use crate::validator_runner::*;
31
32/// Default MAX STEPS
33/// This value can be overriden in the Validator configuration
34const MAX_STEPS: usize = 20;
35
36/// Method employed to resolve imports when ghessing the format of an import
37#[derive(Debug, Clone)]
38pub enum ResolveMethod {
39    RotatingFormats(Vec<ShExFormat>),
40    ByGuessingExtension,
41    ByContentNegotiation,
42}
43
44impl Default for ResolveMethod {
45    fn default() -> Self {
46        ResolveMethod::RotatingFormats(vec![ShExFormat::ShExC, ShExFormat::ShExJ])
47    }
48}