pub fn encode_schema(
json: &str,
compress: Option<SchemaCompressionAlgo>,
) -> Result<String, SchemaError>Expand description
Encode JSON to schema format: JSON → IR → binary → [compress] → display96 → framed
Transforms JSON into a compact, display-safe wire format suitable for LLM-to-LLM communication.
The output is wrapped in Egyptian hieroglyph delimiters (𓍹...𓍺) and uses a 96-character
alphabet of box-drawing and geometric shapes.
§Arguments
json- JSON string to encode (must be object or array of objects)compress- Optional compression algorithm (brotli, lz4, or zstd)
§Returns
Returns a framed, display-safe string like 𓍹{encoded_payload}𓍺
§Errors
SchemaError::InvalidInput- Invalid JSON or unsupported structure (e.g., root primitives)SchemaError::Compression- Compression failure
§Example
ⓘ
use base_d::{encode_schema, SchemaCompressionAlgo};
let json = r#"{"users":[{"id":1,"name":"alice"}]}"#;
// Without compression
let encoded = encode_schema(json, None)?;
println!("{}", encoded); // 𓍹╣◟╥◕◝▰◣◥▟╺▖◘▰◝▤◀╧𓍺
// With brotli compression
let compressed = encode_schema(json, Some(SchemaCompressionAlgo::Brotli))?;§See Also
decode_schema- Decode schema format back to JSON- SCHEMA.md - Full format specification