A comprehensive Rust library for handling OpenMath objects, providing
- An [
OpenMath] data structure and - almost zero-copy (de)serialization for various OpenMath formats, including specification-compliant XML, JSON, and arbitrary other formats via serde.
Serialization & Deserialization
- [
OMSerializable] trait for converting Rust types to OpenMath - [
OMDeserializable] trait for parsing OpenMath into Rust types - (with
serdefeature enabled:) support for serde-based formats (JSON, etc.) following the OpenMath JSON specification, specification-conform XML (de)serialization (seeopenmath_serdeandOMFromSerde).
TODO
- structure sharing via OMR
- binary format
- official errors