HN user

t_null

3 karma
Posts2
Comments4
View on HN

I built *erxi*, a Rust implementation of *EXI* (W3C Efficient XML Interchange)

Write-up with benchmarks and context: https://hahn.website/blog/erxi

Main goal: XML/EXI interoperability with good performance and memory usage, without requiring a JVM runtime.

Current status: - Rust encoder/decoder with interoperability testing - Big improvements over my initial versions in runtime and memory - EXI4JSON implementation (JSON workflows can be bridged into EXI) - Good baseline for further tooling

Next thing I’m considering is where to focus next. Would you prefer:

1. *Visualization/translator tooling* XML/JSON <-> EXI with a debuggable event/structure view.

2. *More of the XML stack in Rust* XML parsing, XSD parsing, validation, etc.

If you had to pick one first, which would you want and why?

An exi decoder/encoder (goal is to have modes for spec conform and interop, which right now doesn't seem to be the same thing). Afterwards I also want to try to use it to encode huge XML datasets in precomp mode with good encoder (maybe ztsd). Should be pretty useful for large repetitive datasets. I also want to build a tool to visualize XML to exi de/encoding in the browser.