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
//! W3C RDF Dataset Normalization Algorithm — URDNA2015 / RDNA 2015.
//!
//! This module provides a complete, spec-faithful implementation of the W3C RDF
//! Canonicalization algorithm (URDNA2015) for deterministic blank node naming in
//! RDF datasets. Canonical RDF is a prerequisite for cryptographic signing of
//! RDF documents and is used in:
//!
//! - W3C Verifiable Credentials
//! - W3C Data Integrity Proofs
//! - JSON-LD Signatures
//! - RDF Merkle trees
//!
//! ## Quick start
//!
//! ```rust
//! use oxirs_core::canon::{canonicalize, QuadTerm, RdfQuad};
//!
//! // Build a small RDF dataset
//! let quads = vec![
//! RdfQuad::new(
//! QuadTerm::blank("b0"),
//! QuadTerm::iri("http://schema.org/name"),
//! QuadTerm::string_literal("Alice"),
//! ),
//! ];
//!
//! let canonical = canonicalize(&quads);
//! // "_:c14n0 <http://schema.org/name> "Alice"^^<http://www.w3.org/2001/XMLSchema#string> ."
//! assert!(canonical.starts_with("_:c14n0"));
//! ```
//!
//! ## Reference
//!
//! - W3C RDF Canonicalization 1.0: <https://www.w3.org/TR/rdf-canon/>
// Sub-modules
// Re-exports — public API surface
pub use ;
pub use ;
pub use ;
pub use ;