ISO/IEC 8825-3:2008
(Main)Information technology — ASN.1 encoding rules: Specification of Encoding Control Notation (ECN) — Part 3:
Information technology — ASN.1 encoding rules: Specification of Encoding Control Notation (ECN) — Part 3:
ISO/IEC 8825-3:2008 defines Encoding Control Notation (ECN): a notation for specifying encodings of ASN.1 types or of parts of types. It provides several mechanisms for such specification, including: direct specification of the encoding using standardized notation; specification of the encoding by reference to standardized encoding rules; specification of the encoding of an ASN.1 type by reference to an encoding structure; specification of the encoding using non-ECN notation. It also provides the means to link the specification of encodings to the type definitions to which they are to be applied. ECN does not currently provide any support for specifications using the object identifier (OID) internationalized resource identifier type or the relative OID internationalized resource identifier type (see ISO/IEC 8824-1).
Technologies de l'information — Règles de codage ASN.1: Spécification de la notation de contrôle de codage (ECN) — Partie 3:
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 8825-3
Second edition
2008-12-15
Information technology — ASN.1
encoding rules: Specification of
Encoding Control Notation (ECN)
Technologies de l'information — Règles de codage ASN.1:
Spécification de la notation de contrôle de codage (ECN)
Reference number
ISO/IEC 8825-3:2008(E)
©
ISO/IEC 2008
---------------------- Page: 1 ----------------------
ISO/IEC 8825-3:2008(E)
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but
shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In
downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat
accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation
parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In
the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.
COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2008
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published by ISO in 2009
Published in Switzerland
ii © ISO/IEC 2008 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 8825-3:2008(E)
CONTENTS
Page
Foreword .ix
Introduction . x
1 Scope. 1
2 Normative references . 1
2.1 Identical Recommendations | International Standards . 1
2.2 Additional references . 2
3 Definitions. 2
3.1 ASN.1 definitions. 2
3.2 ECN-specific definitions. 2
4 Abbreviations . 5
5 Definition of ECN syntax. 5
6 Encoding conventions and notation . 5
7 The ECN character set. 6
8 ECN lexical items. 6
8.1 Encoding object references . 6
8.2 Encoding object set references. 7
8.3 Encoding class references . 7
8.4 Reserved word items. 7
8.5 Reserved encoding class name items . 7
8.6 Non-ECN item . 8
9 ECN Concepts. 8
9.1 Encoding Control Notation (ECN) specifications. 8
9.2 Encoding classes . 8
9.3 Encoding structures. 9
9.4 Encoding objects. 9
9.5 Encoding object sets. 10
9.6 Defining new encoding classes . 10
9.7 Defining encoding objects . 11
9.8 Differential encoding-decoding . 12
9.9 Encoders options in encodings. 12
9.10 Properties of encoding objects . 12
9.11 Parameterization. 13
9.12 Governors. 13
9.13 General aspects of encodings. 13
9.14 Identification of information elements. 14
9.15 Reference fields and determinants . 14
9.16 Replacement classes and structures. 14
9.17 Mapping abstract values onto fields of encoding structures . 15
9.18 Transforms and transform composites . 16
9.19 Contents of Encoding Definition Modules . 17
9.20 Contents of the Encoding Link Module. 17
9.21 Defining encodings for primitive encoding classes . 17
9.22 Application of encodings . 19
9.23 Combined encoding object set . 20
9.24 Application point. 20
9.25 Conditional encodings. 20
9.26 Other conditions for applying encodings . 21
9.27 Encoding control for the open type. 21
9.28 Changes to ASN.1 Recommendations | International Standards . 22
© ISO/IEC 2008 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 8825-3:2008(E)
10 Identifying encoding classes, encoding objects, and encoding object sets . 22
11 Encoding ASN.1 types . 25
11.1 General. 25
11.2 Built-in encoding classes used for implicitly generated encoding structures. 25
11.3 Simplification and expansion of ASN.1 notation for encoding purposes . 26
11.4 The implicitly generated encoding structure. 28
12 The Encoding Link Module (ELM) . 28
12.1 Structure of the ELM . 28
12.2 Encoding types. 29
13 Application of encodings . 30
13.1 General. 30
13.2 The combined encoding object set and its application. 30
14 The Encoding Definition Module (EDM) . 32
15 The renames clause . 34
15.1 Explicitly generated and exported structures . 34
15.2 Name changes . 35
15.3 Specifying the region for name changes .36
16 Encoding class assignments . 37
16.1 General. 37
16.2 Encoding structure definition. 39
16.3 Alternative encoding structure . 42
16.4 Repetition encoding structure . 42
16.5 Concatenation encoding structure. 42
17 Encoding object assignments . 43
17.1 General. 43
17.2 Encoding with a defined syntax . 44
17.3 Encoding with encoding object sets. 45
17.4 Encoding using value mappings. 45
17.5 Encoding an encoding structure. 46
17.6 Differential encoding-decoding . 48
17.7 Encoding options . 48
17.8 Non-ECN definition of encoding objects. 49
18 Encoding object set assignments. 50
18.1 General. 50
18.2 Built-in encoding object sets. 50
19 Mapping values . 51
19.1 General. 51
19.2 Mapping by explicit values . 52
19.3 Mapping by matching fields. 53
19.4 Mapping by #TRANSFORM encoding objects. 54
19.5 Mapping by abstract value ordering. 55
19.6 Mapping by value distribution . 56
19.7 Mapping integer values to bits . 57
20 Defining encoding objects using defined syntax. 59
21 Types used in defined syntax specification. 59
21.1 The Unit type . 59
21.2 The EncodingSpaceSize type. 60
21.3 The EncodingSpaceDetermination type. 60
21.4 The UnusedBitsDetermination type. 61
21.5 The OptionalityDetermination type . 61
21.6 The AlternativeDetermination type . 62
21.7 The RepetitionSpaceDetermination type . 63
iv © ISO/IEC 2008 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/IEC 8825-3:2008(E)
21.8 The Justification type . 64
21.9 The Padding type . 64
21.10 The Pattern and Non-Null-Pattern types. 65
21.11 The RangeCondition type. 65
21.12 The Comparison type. 66
21.13 The SizeRangeCondition type . 66
21.14 The ReversalSpecification type . 67
21.15 The ResultSize type . 67
21.16 The HandleValueSet type. 68
21.17 The IntegerMapping type . 68
22 Commonly used encoding property groups. 69
22.1 Replacement specification. 69
22.1.1 Encoding properties, syntax and purpose. 69
22.1.2 Specification restrictions. 70
22.1.3 Encoder actions. 71
22.1.4 Decoder actions. 71
22.2 Pre-alignment and padding specification . 72
22.2.1 Encoding properties, syntax and purpose. 72
22.2.2 Specification constraints . 72
22.2.3 Encoder actions. 72
22.2.4 Decoder actions. 72
22.3 Start pointer specification . 73
22.3.1 Encoding properties, syntax and purpose. 73
22.3.2 Specification constraints . 73
22.3.3 Encoder actions. 73
22.3.4 Decoder actions. 73
22.4 Encoding space specification . 74
22.4.1 Encoding properties, syntax and purpose. 74
22.4.2 Specification restrictions. 74
22.4.3 Encoder actions. 75
22.4.4 Decoder actions. 75
22.5 Optionality determination . 76
22.5.1 Encoding properties, syntax and purpose. 76
22.5.2 Specification restrictions. 76
22.5.3 Encoder actions. 77
22.5.4 Decoder actions. 77
22.6 Alternative determination. 78
22.6.1 Encoding properties, syntax and purpose. 78
22.6.2 Specification restrictions. 78
22.6.3 Encoder actions. 79
22.6.4 Decoder actions. 79
22.7 Repetition space specification. 79
22.7.1 Encoding properties, syntax and purpose. 79
22.7.2 Specification constraints . 80
22.7.3 Encoder actions. 81
22.7.4 Decoder actions. 82
22.8 Value padding and justification . 82
22.8.1 Encoding properties, syntax, and purpose. 82
22.8.2 Specification restrictions. 83
22.8.3 Encoder actions. 83
22.8.4 Decoder actions. 84
22.9 Identification handle specification . 84
22.9.1 Encoding properties, syntax and purpose. 84
22.9.2 Specification constraints . 85
22.9.3 Encoders actions . 85
22.9.4 Decoders actions . 85
22.10 Concatenation specification . 85
22.10.1 Encoding properties, syntax and purpose. 85
22.10.2 Specification constraints . 86
© ISO/IEC 2008 – All rights reserved v
---------------------- Page: 5 ----------------------
I SO/IEC 8825-3:2008(E)
22.10.3 Encoder actions. 86
22.10.4 Decoder actions. 86
22.11 Contained type encoding specification .87
22.11.1 Encoding properties, syntax and purpose. 87
22.11.2 Encoder actions. 87
22.11.3 Decoder actions. 87
22.12 Bit reversal specification. 87
22.12.1 Encoding properties, syntax, and purpose. 87
22.12.2 Specification constraints . 88
22.12.3 Encoder actions. 88
22.12.4 Decoder actions. 88
23 Defined syntax specification for bit-field and constructor classes .88
23.1 Defining encoding objects for classes in the alternatives category. 88
23.1.1 The defined syntax. 88
23.1.2 Purpose and restrictions . 89
23.1.3 Encoder actions. 89
23.1.4 Decoder actions. 90
23.2 Defining encoding objects for classes in the bitstring category. 90
23.2.1 The defined syntax. 90
23.2.2 Model for the encoding of classes in the bitstring category. 90
23.2.3 Purpose and restrictions . 91
23.2.4 Encoder actions. 91
23.2.5 Decoder actions. 92
23.3 Defining encoding objects for classes in the boolean category . 92
23.3.1 The defined syntax. 92
23.3.2 Purpose and restrictions . 93
23.3.3 Encoder actions. 94
23.3.4 Decoder actions. 94
23.4 Defining encoding objects for classes in the characterstring category . 95
23.4.1 The defined syntax. 95
23.4.2 Model for the encoding of classes in the characterstring category . 95
23.4.3 Purpose and restrictions . 96
23.4.4 Encoder actions. 96
23.4.5 Decoder actions. 96
23.5 Defining encoding objects for classes in the concatenation category. 97
23.5.1 The defined syntax. 97
23.5.2 Purpose and restrictions . 98
23.5.3 Encoder actions.
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.