v0.0.10 Boîte à outils XML en pur Rust
Zéro code unsafe. Performance XML sans compromis.
oxml est une suite complète de traitement XML pour Rust, WebAssembly et les agents IA. Conçu dès le premier jour avec #![forbid(unsafe_code)], accélération SWAR, arbre DOM en arène et moteur XPath 1.0.
Installation en une commande
Ajoutez oxml à votre manifeste Cargo et analysez instantanément vos données avec une API ergonomique.
terminal
cargo add oxml
use oxml::Document;
fn main() -> Result<(), Box<dyn std::error.Error>> {
let doc = Document::parse("<book id='b1'>Rust</book></library>")?;
let book = doc.select("//book[@id='b1']")?;
println!("Trouvé : {}", book[0].text_content());
Ok(())
} Architecture et Fonctionnalités
Chaque composant est conçu pour la fiabilité, la sécurité mémoire et la prévisibilité.
-
Zéro code unsafe
Garanti par #![forbid(unsafe_code)] à la racine du crate. Zéro arithmétique de pointeurs bruts, zéro comportement indéfini.
-
Arbre en arène générationnelle
Arène contiguë optimisée pour le cache avec recyclage O(1). Les nœuds supprimés réutilisent leurs emplacements sans dangling handles.
-
Moteur XPath 1.0
Évaluateur conforme avec 13 axes, prédicats, fonctions standard (count, contains, starts-with) et variables dynamiques.
-
Écosystème synchronisé
Outil CLI, module WebAssembly, JSON-RPC, serveur LSP et boîte à outils MCP pour agents IA.
Conçu selon les normes les plus strictes
Validé face aux suites de conformité W3C XML et évalué par rapport aux références de l'industrie.
- 0
- Blocs unsafe dans toute la bibliothèque centrale
- 2.5x
- Accélération du débit grâce au balayage SWAR
- 7
- Crates synchronisés dans l'écosystème