Introduction
�1��� �Scope
�2��� �Normative
references
������ �2.1��� �Identical
Recommendations | International Standards
������ �2.2��� �Additional
references
�3��� �Definitions
������ �3.1��� �ASN.1
definitions
������ �3.2��� �ECN‑specific
definitions
�4��� �Abbreviations
�5��� �Definition of
ECN syntax
�6��� �Encoding
conventions and notation
�7��� �The ECN
character set
�8��� �ECN lexical
items
������ �8.1��� �Encoding
object references
������ �8.2��� �Encoding
object set references
������ �8.3��� �Encoding
class references
������ �8.4��� �Reserved
word items
������ �8.5��� �Reserved
encoding class name items
������ �8.6��� �Non-ECN
item
�9��� �ECN Concepts
������ �9.1��� �Encoding
Control Notation (ECN) specifications
������ �9.2��� �Encoding
classes
������ �9.3��� �Encoding
structures
������ �9.4��� �Encoding
objects
������ �9.5��� �Encoding
object sets
������ �9.6��� �Defining
new encoding classes
������ �9.7��� �Defining
encoding objects
������ �9.8��� �Differential
encoding-decoding
������ �9.9��� �Encoders
options in encodings
����� �9.10��� �Properties
of encoding objects
����� �9.11��� �Parameterization
����� �9.12��� �Governors
����� �9.13��� �General
aspects of encodings
����� �9.14��� �Identification
of information elements
����� �9.15��� �Reference
fields and determinants
����� �9.16��� �Replacement
classes and structures
����� �9.17��� �Mapping
abstract values onto fields of encoding structures
����� �9.18��� �Transforms
and transform composites
����� �9.19��� �Contents
of Encoding Definition Modules
����� �9.20��� �Contents
of the Encoding Link Module
����� �9.21��� �Defining
encodings for primitive encoding classes
����� �9.22��� �Application
of encodings
����� �9.23��� �Combined
encoding object set
����� �9.24��� �Application
point
����� �9.25��� �Conditional
encodings
����� �9.26��� �Other
conditions for applying encodings
����� �9.27��� �Encoding
control for the open type
����� �9.28��� �Changes
to ASN.1 Recommendations | International Standards
10��� �Identifying
encoding classes, encoding objects, and encoding object sets
11��� �Encoding ASN.1
types
����� �11.1��� �General
����� �11.2��� �Built‑in
encoding classes used for implicitly generated encoding structures
����� �11.3��� �Simplification
and expansion of ASN.1 notation for encoding purposes
����� �11.4��� �The
implicitly generated encoding structure
12��� �The Encoding
Link Module (ELM)
����� �12.1��� �Structure
of the ELM
����� �12.2��� �Encoding
types
13��� �Application of
encodings
����� �13.1��� �General
����� �13.2��� �The
combined encoding object set and its application�
14��� �The Encoding
Definition Module (EDM)
15��� �The renames
clause
����� �15.1��� �Explicitly
generated and exported structures
����� �15.2��� �Name
changes
����� �15.3��� �Specifying
the region for name changes
16��� �Encoding class
assignments
����� �16.1��� �General
����� �16.2��� �Encoding
structure definition
����� �16.3��� �Alternative
encoding structure
����� �16.4��� �Repetition
encoding structure
����� �16.5��� �Concatenation
encoding structure
17��� �Encoding object
assignments
����� �17.1��� �General
����� �17.2��� �Encoding
with a defined syntax
����� �17.3��� �Encoding
with encoding object sets
����� �17.4��� �Encoding
using value mappings
����� �17.5��� �Encoding
an encoding structure
����� �17.6��� �Differential
encoding-decoding
����� �17.7��� �Encoding
options
����� �17.8��� �Non-ECN
definition of encoding objects
18��� �Encoding object
set assignments
����� �18.1��� �General
����� �18.2��� �Built‑in
encoding object sets
19��� �Mapping values
����� �19.1��� �General
����� �19.2��� �Mapping
by explicit values
����� �19.3��� �Mapping
by matching fields
����� �19.4��� �Mapping
by #TRANSFORM encoding objects
����� �19.5��� �Mapping
by abstract value ordering
����� �19.6��� �Mapping
by value distribution
����� �19.7��� �Mapping
integer values to bits
20��� �Defining
encoding objects using defined syntax
21��� �Types used in
defined syntax specification
����� �21.1��� �The Unit type
����� �21.2��� �The EncodingSpaceSize type
����� �21.3��� �The EncodingSpaceDetermination type
����� �21.4��� �The UnusedBitsDetermination type
����� �21.5��� �The OptionalityDetermination type
����� �21.6��� �The AlternativeDetermination type
����� �21.7��� �The RepetitionSpaceDetermination type
����� �21.8��� �The Justification type
����� �21.9��� �The Padding type
���� �21.10��� �The Pattern and Non-Null-Pattern
types
���� �21.11��� �The RangeCondition type
���� �21.12��� �The Comparison type
���� �21.13��� �The SizeRangeCondition type
���� �21.14��� �The ReversalSpecification type
���� �21.15��� �The ResultSize type
���� �21.16��� �The HandleValueSet type
���� �21.17��� �The IntegerMapping type
22��� �Commonly used
encoding property groups
����� �22.1��� �Replacement
specification
���������������� �22.1.1��� �Encoding properties, syntax and purpose
���������������� �22.1.2��� �Specification restrictions
���������������� �22.1.3��� �Encoder actions
���������������� �22.1.4��� �Decoder actions
����� �22.2��� �Pre-alignment
and padding specification
���������������� �22.2.1��� �Encoding properties, syntax and purpose
���������������� �22.2.2��� �Specification constraints
���������������� �22.2.3��� �Encoder actions
���������������� �22.2.4��� �Decoder actions
����� �22.3��� �Start
pointer specification
���������������� �22.3.1��� �Encoding properties, syntax and purpose
���������������� �22.3.2��� �Specification constraints
���������������� �22.3.3��� �Encoder actions
���������������� �22.3.4��� �Decoder actions
����� �22.4��� �Encoding
space specification
���������������� �22.4.1��� �Encoding properties, syntax and purpose
���������������� �22.4.2��� �Specification restrictions
���������������� �22.4.3��� �Encoder actions
���������������� �22.4.4��� �Decoder actions
����� �22.5��� �Optionality
determination
���������������� �22.5.1��� �Encoding properties, syntax and purpose
���������������� �22.5.2��� �Specification restrictions
���������������� �22.5.3��� �Encoder actions
���������������� �22.5.4��� �Decoder actions
����� �22.6��� �Alternative
determination
���������������� �22.6.1��� �Encoding properties, syntax and purpose
���������������� �22.6.2��� �Specification restrictions
���������������� �22.6.3��� �Encoder actions
���������������� �22.6.4��� �Decoder actions
����� �22.7��� �Repetition
space specification
���������������� �22.7.1��� �Encoding properties, syntax and purpose
���������������� �22.7.2��� �Specification constraints
���������������� �22.7.3��� �Encoder actions
���������������� �22.7.4��� �Decoder actions
����� �22.8��� �Value
padding and justification
���������������� �22.8.1��� �Encoding properties, syntax, and purpose
���������������� �22.8.2��� �Specification restrictions
���������������� �22.8.3��� �Encoder actions
���������������� �22.8.4��� �Decoder actions
����� �22.9��� �Identification
handle specification
���������������� �22.9.1��� �Encoding properties, syntax and purpose
���������������� �22.9.2��� �Specification constraints
���������������� �22.9.3��� �Encoders actions
���������������� �22.9.4��� �Decoders actions
���� �22.10��� �Concatenation
specification
���������������� �22.10.1��� �Encoding properties, syntax and purpose
���������������� �22.10.2��� �Specification constraints
���������������� �22.10.3��� �Encoder actions
���������������� �22.10.4��� �Decoder actions
���� �22.11��� �Contained
type encoding specification
���������������� �22.11.1��� �Encoding properties, syntax and purpose
���������������� �22.11.2��� �Encoder actions
���������������� �22.11.3��� �Decoder actions
���� �22.12��� �Bit
reversal specification
���������������� �22.12.1��� �Encoding properties, syntax, and purpose
���������������� �22.12.2��� �Specification constraints
���������������� �22.12.3��� �Encoder actions
���������������� �22.12.4��� �Decoder actions
23��� �Defined syntax
specification for bit-field and constructor classes
����� �23.1��� �Defining
encoding objects for classes in the alternatives category
���������������� �23.1.1��� �The defined syntax
���������������� �23.1.2��� �Purpose and restrictions
���������������� �23.1.3��� �Encoder actions
���������������� �23.1.4��� �Decoder actions
����� �23.2��� �Defining
encoding objects for classes in the bitstring category
���������������� �23.2.1��� �The defined syntax
���������������� �23.2.2��� �Model for the encoding of classes in the bitstring category
���������������� �23.2.3��� �Purpose and restrictions
���������������� �23.2.4��� �Encoder actions
���������������� �23.2.5��� �Decoder actions
����� �23.3��� �Defining
encoding objects for classes in the boolean category
���������������� �23.3.1��� �The defined syntax
���������������� �23.3.2��� �Purpose and restrictions
���������������� �23.3.3��� �Encoder actions
���������������� �23.3.4��� �Decoder actions
����� �23.4��� �Defining
encoding objects for classes in the characterstring category
���������������� �23.4.1��� �The defined syntax
���������������� �23.4.2��� �Model for the encoding of classes in the characterstring
category
���������������� �23.4.3��� �Purpose and restrictions
���������������� �23.4.4��� �Encoder actions
���������������� �23.4.5��� �Decoder actions
����� �23.5��� �Defining
encoding objects for classes in the concatenation category
���������������� �23.5.1��� �The defined syntax
���������������� �23.5.2��� �Purpose and restrictions
���������������� �23.5.3��� �Encoder actions
���������������� �23.5.4��� �Decoder actions
����� �23.6��� �Defining
encoding objects for classes in the integer category
���������������� �23.6.1��� �The defined syntax
���������������� �23.6.2��� �Purpose and restrictions
���������������� �23.6.3��� �Encoder actions
���������������� �23.6.4��� �Decoder actions
����� �23.7��� �Defining
encoding objects for the #CONDITIONAL-INT class
���������������� �23.7.1��� �The defined syntax
���������������� �23.7.2��� �Purpose and restrictions
���������������� �23.7.3��� �Encoder actions
���������������� �23.7.4��� �Decoder actions
����� �23.8��� �Defining
encoding objects for classes in the null category�
���������������� �23.8.1��� �The defined syntax
���������������� �23.8.2��� �Purpose and restrictions
���������������� �23.8.3��� �Encoder actions
���������������� �23.8.4��� �Decoder actions
����� �23.9��� �Defining
encoding objects for classes in the octetstring category
���������������� �23.9.1��� �The defined syntax
���������������� �23.9.2��� �Model for the encoding of classes in the octetstring
category
���������������� �23.9.3��� �Purpose and restrictions
���������������� �23.9.4��� �Encoder actions
���������������� �23.9.5��� �Decoder actions
���� �23.10��� �Defining
encoding objects for classes in the open type category
���������������� �23.10.1��� �The defined syntax
���������������� �23.10.2��� �Model for the encoding of classes in the open type category
���������������� �23.10.3��� �Purpose and restrictions
���������������� �23.10.4��� �Encoder actions
���������������� �23.10.5��� �Decoder actions
���� �23.11��� �Defining
encoding objects for classes in the optionality category
���������������� �23.11.1��� �The defined syntax
���������������� �23.11.2��� �Purpose and restrictions
���������������� �23.11.3��� �Encoder actions
���������������� �23.11.4��� �Decoder actions
���� �23.12��� �Defining
encoding objects for classes in the pad category�
���������������� �23.12.1��� �The defined syntax
���������������� �23.12.2��� �Purpose and restrictions
���������������� �23.12.3��� �Encoder actions
���������������� �23.12.4��� �Decoder actions
���� �23.13��� �Defining
encoding objects for classes in the repetition category
���������������� �23.13.1��� �The defined syntax
���������������� �23.13.2��� �Purpose and restrictions
���������������� �23.13.3��� �Encoder actions
���������������� �23.13.4��� �Decoder actions
���� �23.14��� �Defining
encoding objects for the #CONDITIONAL-REPETITION class
���������������� �23.14.1��� �The defined syntax
���������������� �23.14.2��� �Purpose and restrictions
���������������� �23.14.3��� �Encoder actions
���������������� �23.14.4��� �Decoder actions
���� �23.15��� �Defining
encoding objects for classes in the tag category�
���������������� �23.15.1��� �The defined syntax
���������������� �23.15.2��� �Purpose and restrictions
���������������� �23.15.3��� �Encoder actions
���������������� �23.15.4��� �Decoder actions
���� �23.16��� �Defining
encoding objects for classes in the other categories
24��� �Defined syntax
specification for the #TRANSFORM encoding class
����� �24.1��� �Summary
of encoding properties and defined syntax
����� �24.2��� �Source
and target of transforms
����� �24.3��� �The
int-to-int transform
����� �24.4��� �The
bool-to-bool transform
����� �24.5��� �The
bool-to-int transform
����� �24.6��� �The
int-to-bool transform
����� �24.7��� �The
int-to-chars transform
����� �24.8��� �The
int-to-bits transform
����� �24.9��� �The
bits-to-int transform
���� �24.10��� �The
char-to-bits transform
���� �24.11��� �The
bits-to-char transform
���� �24.12��� �The
bit-to-bits transform
���� �24.13��� �The
bits-to-bits transform
���� �24.14��� �The
chars-to-composite-char transform
���� �24.15��� �The
bits-to-composite-bits transform
���� �24.16��� �The
octets-to-composite-bits transform
���� �24.17��� �The
composite-char-to-chars transform
���� �24.18��� �The
composite-bits-to-bits transform
���� �24.19��� �The
composite-bits-to-octets transform
25��� �Complete
encodings and the #OUTER class
����� �25.1��� �Encoding
properties, syntax and purpose for the #OUTER class
����� �25.2��� �Encoder
actions for #OUTER
����� �25.3��� �Decoder
actions for #OUTER
Annex A� Addendum to ITU‑T Rec. X.680 | ISO/IEC
8824‑1
������ �A.1��� �Exports
and imports clauses
������ �A.2��� �Addition
of REFERENCE�
������ �A.3��� �Notation
for character string values
Annex B� Addendum to ITU‑T Rec. X.681 | ISO/IEC
8824‑2
������ �B.1��� �Definitions
������ �B.2��� �Additional
lexical items
���������������� �B.2.1��� �Ordered value list field references
���������������� �B.2.2��� �Ordered encoding object list field references
���������������� �B.2.3��� �Encoding class field references
������ �B.3��� �Addition
of "ENCODING‑CLASS"
������ �B.4��� �FieldSpec
additions
������ �B.5��� �Fixed-type
ordered value list field spec
������ �B.6��� �Fixed-class
encoding object field spec
������ �B.7��� �Variable-class
encoding object field spec
������ �B.8��� �Fixed-class
encoding object set field spec
������ �B.9��� �Fixed-class
ordered encoding object list field spec
����� �B.10��� �Encoding
class field spec
����� �B.11��� �Ordered
value list notation
����� �B.12��� �Ordered
encoding object list notation
����� �B.13��� �Primitive
field names
����� �B.14��� �Additional
reserved words
����� �B.15��� �Definition
of encoding objects
����� �B.16��� �Additions
to "Setting"
����� �B.17��� �Encoding
class field type
Annex C� Addendum to ITU‑T Rec. X.683 | ISO/IEC
8824‑4
Annex C� Addendum to ITU‑T Rec. X.683 | ISO/IEC
8824‑4
������ �C.1��� �Parameterized
assignments
������ �C.2��� �Parameterized
encoding assignments
������ �C.3��� �Referencing
parameterized definitions
������ �C.4��� �Actual
parameter list
Annex D� Examples
Annex E�� Support for Huffman encodings
Annex F� Additional information on the Encoding
Control Notation (ECN)
Annex G� Summary of the ECN notation