{"id":425392,"date":"2024-10-20T06:56:37","date_gmt":"2024-10-20T06:56:37","guid":{"rendered":"https:\/\/pdfstandards.shop\/product\/uncategorized\/bs-iso-iec-8824-12021-2\/"},"modified":"2024-10-26T13:05:28","modified_gmt":"2024-10-26T13:05:28","slug":"bs-iso-iec-8824-12021-2","status":"publish","type":"product","link":"https:\/\/pdfstandards.shop\/product\/publishers\/bsi\/bs-iso-iec-8824-12021-2\/","title":{"rendered":"BS ISO\/IEC 8824-1:2021"},"content":{"rendered":"
This Recommendation | International Standard provides a standard notation called Abstract Syntax Notation One (ASN.1) that is used for the definition of data types, values, and constraints on data types.<\/p>\n
This Recommendation | International Standard:<\/p>\n
defines a number of simple types, with their tags, and specifies a notation for referencing these types and for specifying values of these types;<\/p>\n<\/li>\n
defines mechanisms for constructing new types from more basic types, and specifies a notation for defining such types and assigning them tags, and for specifying values of these types;<\/p>\n<\/li>\n
defines character sets (by reference to other Recommendations and\/or International Standards) for use within ASN.1.<\/p>\n<\/li>\n<\/ul>\n
The ASN.1 notation can be applied whenever it is necessary to define the abstract syntax of information.<\/p>\n
The ASN.1 notation is referenced by other standards which define encoding rules for the ASN.1 types.<\/p>\n
PDF Pages<\/th>\n | PDF Title<\/th>\n<\/tr>\n | ||||||
---|---|---|---|---|---|---|---|
2<\/td>\n | undefined <\/td>\n<\/tr>\n | ||||||
6<\/td>\n | Blank Page <\/td>\n<\/tr>\n | ||||||
7<\/td>\n | CONTENTS <\/td>\n<\/tr>\n | ||||||
12<\/td>\n | Introduction <\/td>\n<\/tr>\n | ||||||
15<\/td>\n | 1 Scope 2 Normative references 2.1 Identical Recommendations | International Standards <\/td>\n<\/tr>\n | ||||||
16<\/td>\n | 2.2 Additional references 3 Definitions 3.1 International Object Identifier tree specification 3.2 Information object specification <\/td>\n<\/tr>\n | ||||||
17<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
18<\/td>\n | 3.8 Additional definitions <\/td>\n<\/tr>\n | ||||||
23<\/td>\n | 4 Abbreviations 5 Notation 5.1 General <\/td>\n<\/tr>\n | ||||||
24<\/td>\n | 5.2 Productions 5.3 The alternative collections 5.4 Non-spacing indicator 5.5 Example of a production 5.6 Layout <\/td>\n<\/tr>\n | ||||||
25<\/td>\n | 5.7 Recursion 5.8 References to permitted sequences of lexical items 5.9 References to a lexical item 5.10 Short-hand notations <\/td>\n<\/tr>\n | ||||||
26<\/td>\n | 5.11 Value references and the typing of values 6 The ASN.1 model of type extension 7 Extensibility requirements on encoding rules <\/td>\n<\/tr>\n | ||||||
27<\/td>\n | 8 Tags <\/td>\n<\/tr>\n | ||||||
28<\/td>\n | 9 Encoding instructions <\/td>\n<\/tr>\n | ||||||
29<\/td>\n | 10 Use of the ASN.1 notation 11 The ASN.1 character set <\/td>\n<\/tr>\n | ||||||
30<\/td>\n | 12 ASN.1 lexical items 12.1 General rules <\/td>\n<\/tr>\n | ||||||
31<\/td>\n | 12.2 Type references 12.3 Identifiers 12.4 Value references 12.5 Module references 12.6 Comments <\/td>\n<\/tr>\n | ||||||
32<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
33<\/td>\n | 12.13 XML hexadecimal string item 12.14 Character strings <\/td>\n<\/tr>\n | ||||||
34<\/td>\n | 12.15 XML character string item <\/td>\n<\/tr>\n | ||||||
36<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
37<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
38<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
39<\/td>\n | 12.36 XML tag names for ASN.1 types <\/td>\n<\/tr>\n | ||||||
40<\/td>\n | 12.37 Single character lexical items 12.38 Reserved words <\/td>\n<\/tr>\n | ||||||
41<\/td>\n | 13 Module definition <\/td>\n<\/tr>\n | ||||||
45<\/td>\n | 14 Referencing type and value definitions <\/td>\n<\/tr>\n | ||||||
46<\/td>\n | 15 Notation to support references to ASN.1 components <\/td>\n<\/tr>\n | ||||||
47<\/td>\n | 16 Assigning types and values <\/td>\n<\/tr>\n | ||||||
49<\/td>\n | 17 Definition of types and values <\/td>\n<\/tr>\n | ||||||
52<\/td>\n | 18 Notation for the boolean type 19 Notation for the integer type <\/td>\n<\/tr>\n | ||||||
53<\/td>\n | 20 Notation for the enumerated type <\/td>\n<\/tr>\n | ||||||
55<\/td>\n | 21 Notation for the real type <\/td>\n<\/tr>\n | ||||||
56<\/td>\n | 22 Notation for the bitstring type <\/td>\n<\/tr>\n | ||||||
58<\/td>\n | 23 Notation for the octetstring type 24 Notation for the null type <\/td>\n<\/tr>\n | ||||||
59<\/td>\n | 25 Notation for sequence types <\/td>\n<\/tr>\n | ||||||
62<\/td>\n | 26 Notation for sequence-of types <\/td>\n<\/tr>\n | ||||||
64<\/td>\n | 27 Notation for set types <\/td>\n<\/tr>\n | ||||||
65<\/td>\n | 28 Notation for set-of types <\/td>\n<\/tr>\n | ||||||
66<\/td>\n | 29 Notation for choice types <\/td>\n<\/tr>\n | ||||||
68<\/td>\n | 30 Notation for selection types 31 Notation for prefixed types 31.1 General <\/td>\n<\/tr>\n | ||||||
69<\/td>\n | 31.2 The tagged type 31.3 The encoding prefixed type <\/td>\n<\/tr>\n | ||||||
70<\/td>\n | 32 Notation for the object identifier type <\/td>\n<\/tr>\n | ||||||
72<\/td>\n | 33 Notation for the relative object identifier type <\/td>\n<\/tr>\n | ||||||
73<\/td>\n | 34 Notation for the OID internationalized resource identifier type <\/td>\n<\/tr>\n | ||||||
74<\/td>\n | 35 Notation for the relative OID internationalized resource identifier type 36 Notation for the embedded-pdv type <\/td>\n<\/tr>\n | ||||||
76<\/td>\n | 37 Notation for the external type <\/td>\n<\/tr>\n | ||||||
77<\/td>\n | 38 The time type 38.1 General 38.2 Time properties and settings of time abstract values <\/td>\n<\/tr>\n | ||||||
81<\/td>\n | 38.3 Basic value notation and XML value notation for time abstract values with specified property settings <\/td>\n<\/tr>\n | ||||||
85<\/td>\n | 38.4 Useful time types <\/td>\n<\/tr>\n | ||||||
86<\/td>\n | 39 The character string types <\/td>\n<\/tr>\n | ||||||
87<\/td>\n | 40 Notation for character string types 41 Definition of restricted character string types <\/td>\n<\/tr>\n | ||||||
91<\/td>\n | 42 Naming characters, collections and property category sets <\/td>\n<\/tr>\n | ||||||
95<\/td>\n | 43 Canonical order of characters <\/td>\n<\/tr>\n | ||||||
96<\/td>\n | 44 Definition of unrestricted character string types <\/td>\n<\/tr>\n | ||||||
97<\/td>\n | 45 Notation for types defined in clauses 46 to 48 46 Generalized time <\/td>\n<\/tr>\n | ||||||
99<\/td>\n | 47 Universal time 48 The object descriptor type <\/td>\n<\/tr>\n | ||||||
100<\/td>\n | 49 Constrained types <\/td>\n<\/tr>\n | ||||||
101<\/td>\n | 50 Element set specification <\/td>\n<\/tr>\n | ||||||
103<\/td>\n | 51 Subtype elements 51.1 General <\/td>\n<\/tr>\n | ||||||
105<\/td>\n | 51.2 Single value 51.3 Contained subtype 51.4 Value range 51.5 Size constraint <\/td>\n<\/tr>\n | ||||||
106<\/td>\n | 51.6 Type constraint 51.7 Permitted alphabet 51.8 Inner subtyping <\/td>\n<\/tr>\n | ||||||
108<\/td>\n | 51.9 Pattern constraint 51.10 Property settings <\/td>\n<\/tr>\n | ||||||
109<\/td>\n | 51.11 Duration range 51.12 Time point range 51.13 Recurrence range <\/td>\n<\/tr>\n | ||||||
110<\/td>\n | 52 The extension marker <\/td>\n<\/tr>\n | ||||||
112<\/td>\n | 53 The exception identifier 54 Encoding control sections <\/td>\n<\/tr>\n | ||||||
114<\/td>\n | Annex A ASN.1 regular expressions A.1 Definition A.2 Metacharacters <\/td>\n<\/tr>\n | ||||||
118<\/td>\n | Annex B The defined time types B.1 General B.2 The ASN.1 defined time types module <\/td>\n<\/tr>\n | ||||||
123<\/td>\n | Annex C Rules for type and value Compatibility C.1 The need for the value mapping concept (tutorial introduction) <\/td>\n<\/tr>\n | ||||||
125<\/td>\n | C.2 Value mappings <\/td>\n<\/tr>\n | ||||||
126<\/td>\n | C.3 Identical type definitions <\/td>\n<\/tr>\n | ||||||
128<\/td>\n | C.4 Specification of value mappings C.5 Additional value mappings defined for the character string types <\/td>\n<\/tr>\n | ||||||
129<\/td>\n | C.6 Specific type and value compatibility requirements <\/td>\n<\/tr>\n | ||||||
130<\/td>\n | C.7 Examples C.7.2 Example 1 C.7.3 Example 2 C.7.4 Example 3 C.7.5 Example 4 C.7.6 Example 5 <\/td>\n<\/tr>\n | ||||||
131<\/td>\n | C.7.7 Example 6 <\/td>\n<\/tr>\n | ||||||
132<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
134<\/td>\n | Annex E Encoding references <\/td>\n<\/tr>\n | ||||||
135<\/td>\n | 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 (OBJECT IDENTIFIER) type F.3 Use of the International Object Identifier tree by the OID internationalized resource identifier (OID-IRI) type <\/td>\n<\/tr>\n | ||||||
136<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
137<\/td>\n | G.1.3 ASN.1 description of a record value G.2 Guidelines for use of the notation <\/td>\n<\/tr>\n | ||||||
138<\/td>\n | G.2.1 Boolean G.2.2 Integer G.2.3 Enumerated <\/td>\n<\/tr>\n | ||||||
139<\/td>\n | G.2.4 Real G.2.5 Bit string <\/td>\n<\/tr>\n | ||||||
141<\/td>\n | G.2.6 Octet string G.2.7 UniversalString, BMPString and UTF8String <\/td>\n<\/tr>\n | ||||||
142<\/td>\n | G.2.8 CHARACTER STRING <\/td>\n<\/tr>\n | ||||||
143<\/td>\n | G.2.9 Null G.2.10 Sequence and sequence-of <\/td>\n<\/tr>\n | ||||||
145<\/td>\n | G.2.11 Set and set-of <\/td>\n<\/tr>\n | ||||||
147<\/td>\n | G.2.12 Tagged <\/td>\n<\/tr>\n | ||||||
148<\/td>\n | G.2.13 Choice <\/td>\n<\/tr>\n | ||||||
150<\/td>\n | G.2.14 Selection type <\/td>\n<\/tr>\n | ||||||
151<\/td>\n | G.2.16 Embedded-pdv G.2.17 External G.2.18 Instance-of <\/td>\n<\/tr>\n | ||||||
152<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
153<\/td>\n | G.3.2 Time of day G.3.3 Date and time of day <\/td>\n<\/tr>\n | ||||||
154<\/td>\n | G.3.4 Time interval <\/td>\n<\/tr>\n | ||||||
155<\/td>\n | G.3.5 Recurring interval G.4 Identifying abstract syntaxes <\/td>\n<\/tr>\n | ||||||
156<\/td>\n | G.5 Subtypes <\/td>\n<\/tr>\n | ||||||
160<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
161<\/td>\n | H.3 On ISO\/IEC 10646 conformance requirements H.4 Recommendations for ASN.1 users on ISO\/IEC 10646 conformance <\/td>\n<\/tr>\n | ||||||
162<\/td>\n | H.5 Adopted subsets as parameters of the abstract syntax H.6 The CHARACTER STRING type <\/td>\n<\/tr>\n | ||||||
163<\/td>\n | Annex I Tutorial annex on the ASN.1 model of type extension I.1 Overview <\/td>\n<\/tr>\n | ||||||
164<\/td>\n | I.2 Meaning of version numbers <\/td>\n<\/tr>\n | ||||||
165<\/td>\n | I.3 Requirements on encoding rules I.4 Combination of (possibly extensible) constraints I.4.1 Model I.4.2 Serial application of constraints <\/td>\n<\/tr>\n | ||||||
166<\/td>\n | I.4.3 Use of set arithmetic <\/td>\n<\/tr>\n | ||||||
167<\/td>\n | I.4.4 Use of the Contained Subtype notation <\/td>\n<\/tr>\n | ||||||
168<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
169<\/td>\n | J.3 Abstract values of the TIME type <\/td>\n<\/tr>\n | ||||||
170<\/td>\n | J.4 Time properties of the time abstract values J.5 Value notation <\/td>\n<\/tr>\n | ||||||
171<\/td>\n | J.6 Use of the ASN.1 subtype notation J.7 The property settings subtype notation <\/td>\n<\/tr>\n | ||||||
173<\/td>\n | Annex K Analyzing TIME type value notation K.1 General K.2 Analyzing the full string <\/td>\n<\/tr>\n | ||||||
174<\/td>\n | K.3 Analysis of a string containing an interval K.4 Analysis of a string containing a date <\/td>\n<\/tr>\n | ||||||
175<\/td>\n | 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 <\/td>\n<\/tr>\n | ||||||
176<\/td>\n | K.8 Analysis of a string containing a simple time <\/td>\n<\/tr>\n | ||||||
177<\/td>\n | Annex L Summary of the ASN.1 notation <\/td>\n<\/tr>\n<\/table>\n","protected":false},"excerpt":{"rendered":" Information technology. Abstract Syntax Notation One (ASN.1) – Specification of basic notation<\/b><\/p>\n |