Introduction viii
Information technology Abstract Syntax Notation One (ASN.1): Specification of basic notation
1 Scope
2 Normative references
2.1 Identical Recommendations | International Standards
2.2 Additional references
3 Definitions
3.1 International Object Identifier tree specification
3.2 Information object specification
3.3 Constraint specification
3.4 Parameterization of ASN.1 specification
3.5 Structure for identification of organizations
3.6 Universal Multiple-Octet Coded Character Set (UCS)
3.7 Representation of dates and times
3.8 Additional definitions
4 Abbreviations
5 Notation
5.1 General
5.2 Productions
5.3 The alternative collections
5.4 Non-spacing indicator
5.5 Example of a production
5.6 Layout
5.7 Recursion
5.8 References to permitted sequences of lexical items
5.9 References to a lexical item
5.10 Short-hand notations
5.11 Value references and the typing of values
6 The ASN.1 model of type extension
7 Extensibility requirements on encoding rules
8 Tags
9 Encoding instructions
10 Use of the ASN.1 notation
11 The ASN.1 character set
12 ASN.1 lexical items
12.1 General rules
12.2 Type references
12.3 Identifiers
12.4 Value references
12.5 Module references
12.7 Empty lexical item
12.8 Numbers
12.9 Real numbers
12.10 Binary strings
12.11 XML binary string item
12.12 Hexadecimal strings
12.13 XML hexadecimal string item
12.14 Character strings
12.15 XML character string item
12.16 The simple character string lexical item
12.17 Time value character strings
12.18 XML time value character string item
12.19 The property and setting names lexical item
12.20 Assignment lexical item
12.21 Range separator
12.22 Ellipsis
12.23 Left version brackets
12.24 Right version brackets
12.25 Encoding references
12.26 Integer-valued Unicode labels
12.27 Non-integer Unicode labels
12.28 XML end tag start item
12.29 XML single tag end item
12.30 XML boolean true item
12.31 XML boolean extended-true item
12.32 XML boolean false item
12.33 XML boolean extended-false item
12.34 XML real not-a-number item
12.35 XML real infinity item
12.36 XML tag names for ASN.1 types
12.37 Single character lexical items
12.38 Reserved words
13 Module definition
14 Referencing type and value definitions
15 Notation to support references to ASN.1 components
16 Assigning types and values
17 Definition of types and values
18 Notation for the boolean type
19 Notation for the integer type
20 Notation for the enumerated type
21 Notation for the real type
22 Notation for the bitstring type
23 Notation for the octetstring type
24 Notation for the null type
25 Notation for sequence types
26 Notation for sequence-of types
27 Notation for set types
28 Notation for set-of types
29 Notation for choice types
30 Notation for selection types
31 Notation for prefixed types
31.1 General
31.2 The tagged type
31.3 The encoding prefixed type
32 Notation for the object identifier type
33 Notation for the relative object identifier type
34 Notation for the OID internationalized resource identifier type
35 Notation for the relative OID internationalized resource identifier type
36 Notation for the embedded-pdv type
37 Notation for the external type
38 The time type
38.1 General
38.2 Time properties and settings of time abstract values
38.3 Basic value notation and XML value notation for time abstract values with specified property settings
38.4 Useful time types
39 The character string types
40 Notation for character string types
41 Definition of restricted character string types
42 Naming characters, collections and property category sets
43 Canonical order of characters
44 Definition of unrestricted character string types
45 Notation for types defined in clauses 46 to 48
46 Generalized time
47 Universal time
48 The object descriptor type
49 Constrained types
50 Element set specification
51 Subtype elements
51.1 General
51.2 Single value
51.3 Contained subtype
51.4 Value range
51.5 Size constraint
51.6 Type constraint
51.7 Permitted alphabet
51.8 Inner subtyping
51.9 Pattern constraint
51.10 Property settings
51.11 Duration range
51.12 Time point range
51.13 Recurrence range
52 The extension marker
53 The exception identifier
54 Encoding control sections
Annex A ASN.1 regular expressions
A.1 Definition
A.2 Metacharacters
Annex B The defined time types
B.1  General
B.2 The ASN.1 defined time types module
Annex C Rules for type and value Compatibility
C.1 The need for the value mapping concept (tutorial introduction)
C.2 Value mappings
C.3 Identical type definitions
C.4 Specification of value mappings
C.5 Additional value mappings defined for the character string types
C.6 Specific type and value compatibility requirements
C.7 Examples
Annex D Assigned object identifier and OID internationalized resource identifier values
D.1 Values assigned in this Recommendation | International Standard
D.2 Object identifiers in the ASN.1 and encoding rules standards
Annex E Encoding references
Annex F Assignment and use of arcs in the International Object Identifier tree
F.1 General
F.2 Use of the International Object Identifier tree by the object identifier (
F.3 Use of the International Object Identifier tree by the OID internationalized resource identifier (
OID-IRI) type
Annex G Examples and hints
G.1 Example of a personnel record
G.1.1 Informal description of Personnel Record
G.1.2 ASN.1 description of the record structure
G.1.3 ASN.1 description of a record value
G.2 Guidelines for use of the notation
G.2.1 Boolean
G.2.2 Integer
G.2.3 Enumerated
G.2.4 Real
G.2.5 Bit string
G.2.6 Octet string
G.2.7 UniversalString, BMPString and UTF8String
G.2.9 Null
G.2.10 Sequence and sequence-of
G.2.11 Set and set-of
G.2.12 Tagged
G.2.13 Choice
G.2.14 Selection type
G.2.16 Embedded-pdv
G.2.17 External
G.2.18 Instance-of
G.2.19 Object identifier
G.2.20 OID internationalized resource identifier
G.2.21 Relative object identifier
G.3 Value notation and property settings (TIME type and useful time types)
G.3.1 Date
G.3.2 Time of day
G.3.3 Date and time of day
G.3.4 Time interval
G.3.5 Recurring interval
G.4 Identifying abstract syntaxes
G.5 Subtypes
Annex H Tutorial annex on ASN.1 character strings
H.1 Character string support in ASN.1
H.2 The UniversalString, UTF8String and BMPString types
H.3 On ISO/IEC 10646 conformance requirements
H.4 Recommendations for ASN.1 users on ISO/IEC 10646 conformance
H.5 Adopted subsets as parameters of the abstract syntax
Annex I Tutorial annex on the ASN.1 model of type extension
I.1 Overview
I.2 Meaning of version numbers
I.3 Requirements on encoding rules
I.4 Combination of (possibly extensible) constraints
I.4.1 Model
I.4.2 Serial application of constraints
I.4.3 Use of set arithmetic
I.4.4 Use of the Contained Subtype notation
Annex J Tutorial annex on the TIME type
J.1 The collections of ASN.1 types for times and dates
J.2 ISO 8601 key concepts
J.3 Abstract values of the TIME type
J.4 Time properties of the time abstract values
J.5 Value notation
J.6 Use of the ASN.1 subtype notation
J.7 The property settings subtype notation
Annex K Analyzing TIME type value notation
K.1 General
K.2 Analyzing the full string
K.3 Analysis of a string containing an interval
K.4 Analysis of a string containing a date
K.5 Analysis of a string containing a year
K.6 Analysis of a string containing a century
K.7 Analysis of a string containing a time
K.8 Analysis of a string containing a simple time
Annex L Summary of the ASN.1 notation