Draft: draft-ietf-quic-qpack

Commentary: This was inspired by the comment by afrind at For each representation , uniformly use the word " representation " in the first sentence ; use the word " identifies " if it 's a verbatim entry ; " encodes " otherwise ; identify relative versus post - base indexing in the first sentence ; move drawing right after first sentence ; use consistent language describing binary format .
Paragraph (version A):
An indexed header field representation identifies an entry in either
the static table or the dynamic table and causes that header field to
be added to the decoded header list.
Paragraph (version A):
If the entry is in the static table, or in the dynamic table with an
absolute index less than the Base, this representation starts with
the '1' 1-bit pattern, followed by the 'T' bit indicating whether the
reference is into the static or dynamic table.  The 6-bit prefix
integer (see prefixed-integers) that follows is used to locate the
table entry for the header field.  When T=1, the number represents
the static table index; when T=0, the number is the relative index of
the entry in the dynamic table.
Paragraph (version A):
If the entry is in the dynamic table with an absolute index greater
than or equal to the Base, the representation starts with the '0001'
4-bit pattern, followed by the post-base index (see post-base) of the
matching header field, represented as an integer with a 4-bit prefix
(see prefixed-integers).
Paragraph (version A):
A literal header field with name reference represents a header field
where the header field name matches the header field name of an entry
stored in the static table or the dynamic table.
Paragraph (version A):
If the entry is in the static table, or in the dynamic table with an
absolute index less than the Base, this representation starts with
the '01' two-bit pattern.
Paragraph (version A):
The following bit, 'N', indicates whether an intermediary is
permitted to add this header to the dynamic header table on
subsequent hops.  When the 'N' bit is set, the encoded header MUST
always be encoded with a literal representation.  In particular, when
a peer sends a header field that it received represented as a literal
header field with the 'N' bit set, it MUST use a literal
representation to forward this header field.  This bit is intended
for protecting header field values that are not to be put at risk by
compressing them (see security-considerations for more details).
Paragraph (version B):
An indexed header field representation identifies an entry in the
static table, or an entry in the dynamic table with an absolute index
less than the Base.
Paragraph (version B):
This representation starts with the '1' 1-bit pattern, followed by
the 'T' bit indicating whether the reference is into the static or
dynamic table.  The 6-bit prefix integer (see prefixed-integers) that
follows is used to locate the table entry for the header field.  When
T=1, the number represents the static table index; when T=0, the
number is the relative index of the entry in the dynamic table.
Paragraph (version B):
An indexed header field with post-base index representation
identifies an entry in the dynamic table with an absolute index
greater than or equal to the Base.
Paragraph (version B):
This representation starts with the '0001' 4-bit pattern.  This is
followed by the post-base index (see post-base) of the matching
header field, represented as an integer with a 4-bit prefix (see
prefixed-integers).
Paragraph (version B):
A literal header field with name reference representation encodes a
header field where the header field name matches the header field
name of an entry in the static table, or the header field name of an
entry in the dynamic table with an absolute index less than the Base.
Paragraph (version B):
This representation starts with the '01' two-bit pattern.  The
following bit, 'N', indicates whether an intermediary is permitted to
add this header to the dynamic header table on subsequent hops.  When
the 'N' bit is set, the encoded header MUST always be encoded with a
literal representation.  In particular, when a peer sends a header
field that it received represented as a literal header field with the
'N' bit set, it MUST use a literal representation to forward this
header field.  This bit is intended for protecting header field
values that are not to be put at risk by compressing them (see
security-considerations for more details).
Paragraph (version A):
A literal header field with post-base name reference represents a
header field where the name matches the header field name of a
dynamic table entry with an absolute index greater than or equal to
the Base.
Paragraph (version B):
A literal header field with post-base name reference representation
encodes a header field where the header field name matches the header
field name of a dynamic table entry with an absolute index greater
than or equal to the Base.
Paragraph (version A):
The literal header field without name reference representation
encodes a header field name and header field value as string
literals.
Paragraph (version B):
The literal header field without name reference representation
encodes a header field name and a header field value as string
literals.