Subject: [Cbor] CBOR Compression

From: Jim Schaad <[email-masked]>
Date: Thu, 30 Jul 2020 12:37:57 -0700

While thinking through some of the places that I would potentially use CBOR
Compression/Dictionarying, I of course came on how I would use it with
things like CoRAL.  In this case I would want to be able to prefix strings,
maps and arrays.  By allowing the prefixing of arrays I get a goodly amount
of compression for CRI values as well.  This might change the entire way
that we look at how we build a dictionary for CoRAL!!!

Jim

---

From: Carsten Bormann <[email-masked]>
Date: Thu, 30 Jul 2020 23:25:39 +0200

On 2020-07-30, at 21:37, Jim Schaad <[email-masked]> wrote:
> 
> By allowing the prefixing of arrays I get a goodly amount
> of compression for CRI values as well.

Aah, right.

This introduces a slight dent in the use of Tag 6 as a reference to prefix 0 (Tag 6 with an array starts a new packed instance right now).  Simply saying “can’t use Tag 6 to reference an array prefix” creates a slight complication for the compressor, who would need to swap/rotate prefix 0 with the first non-array prefix (possibly including a non-existent prefix if all prefixes are array prefixes), but that seems acceptable to me.

Grüße, Carsten