5. Creating CBOR-Based Protocols (Creazione di Protocolli Basati su CBOR)
5.1. CBOR in Streaming Applications (CBOR nelle Applicazioni di Streaming)
CBOR è progettato per l'uso in ambienti di streaming. I decodificatori possono elaborare in modo incrementale gli elementi di dati CBOR da un flusso di byte in arrivo.
5.2. Generic Encoders and Decoders (Codificatori e Decodificatori Generici)
Uno degli obiettivi di progettazione principali di CBOR è la possibilità di codec generici in grado di elaborare elementi di dati CBOR senza conoscenza preventiva di uno schema applicativo specifico.
5.3. Validity of Items Encoded in a CBOR Data Item (Validità degli Elementi Codificati in un Elemento di Dati CBOR)
Le specifiche dell'applicazione POSSONO imporre (MAY) vincoli sulla struttura degli elementi di dati CBOR:
- Restrizioni sui tipi principali consentiti
- Limiti di lunghezza delle stringhe
- Limiti di dimensione di array e mappe
- Restrizioni sull'intervallo numerico
5.4. Validity and Evolution (Validità ed Evoluzione)
I protocolli basati su CBOR DOVREBBERO essere progettati (SHOULD) considerando l'estensione futura:
- Gestione di tag sconosciuti
- Ignorare voci di mappa aggiuntive
- Elaborazione di elementi opzionali
5.5. Numbers (Numeri)
CBOR supporta i seguenti tipi numerici:
- Interi senza segno (tipo principale 0)
- Interi negativi (tipo principale 1)
- Numeri in virgola mobile (tipo principale 7)
5.6. Specifying Keys for Maps (Specificare le Chiavi per le Mappe)
Le specifiche dell'applicazione DOVREBBERO limitare (SHOULD) i tipi di dati utilizzati come chiavi di mappa. Scelte comuni:
- Interi
- Stringhe di testo
- Mix di entrambi