Marker Format

[marker]
Carbon TypeDescriptionSizeExamples
markerconstant for encoding of items and containers1 byte[n], [[], [x]

Reserved Marker

MarkerCarbon TypeDescriptions
[t]truea field truth value true
[f]falsea field truth value false
[c]u8an unsigned 8-bit integer field
[d]u16an unsigned 16-bit integer field
[i]u32an unsigned 32-bit integer field
[l]u64an unsigned 64-bit integer field
[C]u8a signed 8-bit integer field
[D]u16a signed 16-bit integer field
[I]u32a signed 32-bit integer field
[L]u64a signed 64-bit integer field
[r]floata single-precision floating number field
[s]stringa character string field
[b]binarya binary string field with known MIME type
[x]custom binarya binary string field with user-defined type
[n]nullabsence of data

Figure MF-1: Data Type Markers

MarkerCarbon TypeDescriptions
[{]objectmarks begin of an object
[}]objectmarks end of an object
[[]arraymarks begin of an array
[]]arraymarks end of an array
[1]column-u8an unsigned 8-bit integer column
[2]column-u16an unsigned 16-bit integer column
[3]column-u32an unsigned 32-bit integer column
[4]column-u64an unsigned 64-bit integer column
[5]column-i8an signed 8-bit integer column
[6]column-i16an signed 16-bit integer column
[7]column-i32an signed 32-bit integer column
[8]column-i64an signed 64-bit integer column
[R]column-floata single-precision floating number column
[B]column-booleana three-valued logic column

Figure MF-2: Container Type Markers

Begin MarkerAbstract TypeBaseContainerElementDistinctSorted
[{]unsorted-multimapyesobjectpairnono
[~]sorted-multimapnoobjectpairnoyes
[:]unsorted-mapnoobjectpairyesno
[#]sorted-mapnoobjectpairyesyes

Figure MF-2: Abstract Types on object containers

Begin MarkerAbstract TypeBaseContainerElementDistinctSorted
[[]unsorted-multisetyesarrayvaluenono
[<]sorted-multisetnoarrayvaluenoyes
[/]unsorted-setnoarrayvalueyesno
[=]sorted-setnoarrayvalueyesyes

Figure MF-2: Abstract Types on array containers

Begin MarkerAbstract TypeBaseContainerElementDistinctSorted
[1]unsorted-multisetyescolumn-u8valuenono
[SOH]sorted-multisetnocolumn-u8valuenoyes
[STX]unsorted-setnocolumn-u8valueyesno
[ETX]sorted-setnocolumn-u8valueyesyes
[2]unsorted-multisetyescolumn-u16valuenono
[ENQ]sorted-multisetnocolumn-u16valuenoyes
[ACK]unsorted-setnocolumn-u16valueyesno
[BEL]sorted-setnocolumn-u16valueyesyes
[3]unsorted-multisetyescolumn-u32valuenono
[TAB]sorted-multisetnocolumn-u32valuenoyes
[LF]unsorted-setnocolumn-u32valueyesno
[VT]sorted-setnocolumn-u32valueyesyes
[4]unsorted-multisetyescolumn-u64valuenono
[CR]sorted-multisetnocolumn-u64valuenoyes
[S0]unsorted-setnocolumn-u64valueyesno
[S1]sorted-setnocolumn-u64valueyesyes
[5]unsorted-multisetyescolumn-i8valuenono
[DC1]sorted-multisetnocolumn-i8valuenoyes
[DC2]unsorted-setnocolumn-i8valueyesno
[DC3]sorted-setnocolumn-i8valueyesyes
[6]unsorted-multisetyescolumn-i16valuenono
[NAK]sorted-multisetnocolumn-i16valuenoyes
[SYN]unsorted-setnocolumn-i16valueyesno
[ETB]sorted-setnocolumn-i16valueyesyes
[7]unsorted-multisetyescolumn-i32valuenono
[EM]sorted-multisetnocolumn-i32valuenoyes
[SUB]unsorted-setnocolumn-i32valueyesno
[ESC]sorted-setnocolumn-i32valueyesyes
[8]unsorted-multisetyescolumn-i64valuenono
[GS]sorted-multisetnocolumn-i64valuenoyes
[RS]unsorted-setnocolumn-i64valueyesno
[US]sorted-setnocolumn-i64valueyesyes
[R]unsorted-multisetyescolumn-floatvaluenono
["]sorted-multisetnocolumn-floatvaluenoyes
[$]unsorted-setnocolumn-floatvalueyesno
[.]sorted-setnocolumn-floatvalueyesyes
[B]unsorted-multisetyescolumn-booleanvaluenono
[_]sorted-multisetnocolumn-booleanvaluenoyes
[']unsorted-setnocolumn-booleanvalueyesno
[DEL]sorted-setnocolumn-booleanvalueyesyes

Figure MF-2: Abstract Types on column containers

MarkerCarbon TypeDescriptions
[?]nokeyno record identifier assigned
[*]autokeyrecord identifier is auto-generated a u64 value
[+]ukeyrecord identifier is user-defined a u64 value
[-]ikeyrecord identifier is user-defined a i64 value
[!]ikeyrecord identifier is user-defined a string value

Figure MF-3: Record Identifier Type Markers

MarkerCarbon TypeDescriptions
[0]reservedmarks a single reserved byte

Figure MF-4: Special Purpose Markers

[NUL], [EOT], [BS], [FF], [DLE], [DC4], [CAN], [FS], [^], [\], [@] 

Figure MF-4: Unused but reserved Markers