Zum Hauptinhalt springen

5. Creating CBOR-Based Protocols (Erstellung CBOR-Basierter Protokolle)

5.1. CBOR in Streaming Applications (CBOR in Streaming-Anwendungen)

CBOR ist für die Verwendung in Streaming-Umgebungen konzipiert. Decoder können CBOR-Datenelemente schrittweise aus einem eingehenden Bytestrom verarbeiten.

5.2. Generic Encoders and Decoders (Generische Encoder und Decoder)

Eines der Hauptdesignziele von CBOR ist die Möglichkeit generischer Codecs, die CBOR-Datenelemente ohne Vorkenntnisse eines spezifischen Anwendungsschemas verarbeiten können.

5.3. Validity of Items Encoded in a CBOR Data Item (Gültigkeit der in einem CBOR-Datenelement Codierten Elemente)

Anwendungsspezifikationen KÖNNEN Einschränkungen auf die Struktur von CBOR-Datenelementen auferlegen (MAY):

  • Einschränkungen der erlaubten Haupttypen
  • Zeichenfolgenlängenbeschränkungen
  • Array- und Map-Größenbeschränkungen
  • Numerische Bereichseinschränkungen

5.4. Validity and Evolution (Gültigkeit und Evolution)

CBOR-basierte Protokolle SOLLTEN unter Berücksichtigung zukünftiger Erweiterungen entworfen werden (SHOULD):

  • Behandlung unbekannter Tags
  • Ignorieren zusätzlicher Map-Einträge
  • Verarbeitung optionaler Elemente

5.5. Numbers (Zahlen)

CBOR unterstützt die folgenden numerischen Typen:

  • Vorzeichenlose Ganzzahlen (Haupttyp 0)
  • Negative Ganzzahlen (Haupttyp 1)
  • Gleitkommazahlen (Haupttyp 7)

5.6. Specifying Keys for Maps (Angabe von Schlüsseln für Maps)

Anwendungsspezifikationen SOLLTEN die als Map-Schlüssel verwendeten Datentypen einschränken (SHOULD). Übliche Auswahlmöglichkeiten:

  • Ganzzahlen
  • Textzeichenfolgen
  • Mischung aus beiden