Skip to main content

Module validation

Module validation 

Source
Expand description

Instance validation against XSD schemas

This module provides validation error types, a push-based SchemaValidator, and supporting types for XML instance validation with spec-aligned error codes.

Re-exports§

pub use errors::error;
pub use errors::error_with_path;
pub use errors::facet_constraint_code;
pub use errors::from_facet_error;
pub use errors::from_value_error;
pub use errors::value_error_constraint_code;
pub use errors::ValidationError;
pub use errors::ValidationResult;
pub use info::AssertionOutcome;
pub use info::InheritedAttribute;
pub use info::ContentProcessing;
pub use info::ContentType;
pub use info::DefaultAttribute;
pub use info::ExpectedAttribute;
pub use info::ExpectedElement;
pub use info::NoNamespaceSchemaLocationHint;
pub use info::NodeIdentity;
pub use info::SchemaInfo;
pub use info::SchemaLocationHint;
pub use info::SchemaValidity;
pub use info::TypeSource;
pub use info::ValidationAttempted;
pub use info::ValidationFlags;
pub use content::ContentValidatorState;
pub use content::ElementMatchInfo;
pub use context::ElementValidationState;
pub use context::ValidatorState;
pub use simple::validate_simple_type;
pub use simple::SimpleTypeResult;
pub use hint_loader::enrich_schema_set;
pub use hint_loader::load_hints_into_builder;
pub use hint_loader::EnrichmentOutcome;
pub use hint_loader::HintLoadResult;
pub use identity::KeyFieldValue;
pub use identity::KeySequence;
pub use identity::KeyTable;
pub use navigator_driver::drive_navigator;
pub use navigator_driver::drive_buffer_document;
pub use quick_xml_driver::drive_quick_xml;
pub use quick_xml_driver::drive_quick_xml_in;
pub use quick_xml_driver::drive_quick_xml_with;
pub use quick_xml_driver::drive_quick_xml_with_in;
pub use quick_xml_driver::AttributeView;
pub use quick_xml_driver::DriveError;
pub use quick_xml_driver::DriveOutcome;
pub use quick_xml_driver::DriveWithError;
pub use quick_xml_driver::ElementStartView;
pub use quick_xml_driver::EndElementInfo;
pub use quick_xml_driver::EndOfAttributesView;
pub use quick_xml_driver::NoopHandler;
pub use quick_xml_driver::TextKind;
pub use quick_xml_driver::ValidationEventHandler;
pub use runtime::ValidationRuntime;
pub use validator::CollectingValidationSink;
pub use validator::ErrorOnlySink;
pub use validator::SchemaValidator;
pub use validator::ValidationSink;
pub use validator::ValidationWarning;

Modules§

active_axis
Streaming matcher for identity-constraint XPath expressions.
alternatives
XSD 1.1 type alternative (conditional type assignment) evaluation.
assertions
XSD 1.1 complex-type assertion evaluation.
asttree
AST types, error handling, and namespace resolution for identity-constraint XPath.
content
Content model state dispatch for instance validation
context
Per-element validation state and validator state machine
errors
Validation error types for instance validation
hint_loader
Schema location hint loader.
identity
Per-constraint state management and key table types for identity-constraint streaming validation.
identity_lexer
Lexer for XSD identity-constraint XPath subset (selector/field expressions).
identity_parser
Hand-written recursive-descent parser for identity-constraint XPath.
info
Validation output types returned to callers after each validation event
navigator_driver
Reusable driver that walks an already-parsed DomNavigator tree into a ValidationRuntime — validation without re-reading or re-parsing the source text.
quick_xml_driver
Reusable driver that wires a quick_xml::Reader event stream into a ValidationRuntime.
runtime
ValidationRuntime — mutable per-run validation state.
simple
Simple type value validation
validator
Core SchemaValidator — immutable validation configuration.