Information technology — Abstract Syntax Notation One (ASN.1): Specification of basic notation — Part 1: — Technical Corrigendum 3

Technologies de l'information — Notation de syntaxe abstraite numéro un (ASN.1): Spécification de la notation de base — Partie 1: — Rectificatif technique 3

General Information

Status
Withdrawn
Publication Date
05-Jun-2002
Withdrawal Date
05-Jun-2002
Current Stage
9599 - Withdrawal of International Standard
Completion Date
11-Dec-2003
Ref Project

Relations

Buy Standard

Standard
ISO/IEC 8824-1:1998/Cor 3:2002
English language
7 pages
sale 15% off
Preview
sale 15% off
Preview
Standard
ISO/IEC 8824-1:1998/Cor 3:2002
French language
7 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)

INTERNATIONAL STANDARD ISO/IEC 8824-1:1998
TECHNICAL CORRIGENDUM 3
Published 2002-05-01

INTERNATIONAL ORGANIZATION FOR STANDARDIZATION  •  МЕЖДУНАРОДНАЯ ОРГАНИЗАЦИЯ ПО СТАНДАРТИЗАЦИИ  •  ORGANISATION INTERNATIONALE DE NORMALISATION
INTERNATIONAL ELECTROTECHNICAL COMMISSION • МЕЖДУНАРОДНАЯ ЭЛЕКТРОТЕХНИЧЕСКАЯ КОМИССИЯ • COMMISSION ÉLECTROTECHNIQUE INTERNATIONALE


Information technology — Abstract Syntax Notation One (ASN.1):
Specification of basic notation
TECHNICAL CORRIGENDUM 3
Technologies de l'information — Notation de syntaxe abstraite numéro un (ASN.1): Spécification de la notation de
base
RECTIFICATIF TECHNIQUE 3
Technical Corrigendum 3 to International Standard ISO/IEC 8824-1:1998 was prepared by Joint Technical
Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 6, Telecommunications and information
exchange between systems.


ICS 35.100.60 Ref. No. ISO/IEC 8824-1:1998/Cor.3:2002(E)
©  ISO/IEC 2002 – All rights reserved
Printed in Switzerland

---------------------- Page: 1 ----------------------
ISO/IEC 8824-1:1998/Cor.3:2002 (E)
INTERNATIONAL STANDARD
ITU-T RECOMMENDATION
Information technology – Abstract Syntax Notation One (ASN.1):
Specification of basic notation
TECHNICAL CORRIGENDUM 3
1) Introduction
In the Introduction (page vi), replace the second and third paragraphs (beginning with "Although this standard
notation" and "Outside the context of OSI", respectively) with the following text :
In some protocol architectures, each message is specified as the binary value of a sequence of octets. However,
standards-writers need to define quite complex data types to carry their messages, without concern for their binary
representation. In order to specify these data types, they require a notation that does not necessarily determine the
representation of each value. ASN.1 is such a notation. This notation is supplemented by the specification of one or
more algorithms called encoding rules that determine the value of the octets that carry the application semantics (called
the transfer syntax). ITU-T Rec.X.690 | ISO/IEC 8825-1 and ITU-T Rec. X.691 | ISO/IEC 8825-2 specify two
families of standardized encoding rules, called Basic Encoding Rules (BER) and Packed Encoding Rules (PER).
Some users wish to redefine their legacy protocols using ASN.1, but cannot use standardized encoding rules because
they need to retain their existing binary representations. Other users wish to have more complete control over the exact
layout of the bits on the wire (the transfer syntax). These requirements are addressed by ITU-T Rec.X.692 | ISO/IEC
8825-3 (expected to be approved late 2001) which specify an Encoding Control Notation (ECN) for ASN.1. ECN
enables designers to formally specify the abstract syntax of a protocol using ASN.1, but to then (if they so wish) take
complete or partial control of the bits on the wire by writing an accompanying ECN specification (which may reference
standardized Encoding Rules for some parts of the encoding).
There is increasing recognition of the notion of an abstract value of some class (type) divorced from the details of any
particular encoding. In order to correctly interpret the bit-pattern representation of the value, it is necessary to know
(usually from the context), the class (type) of the value being represented, as well as the encoding mechanism being
employed. Thus, the identification of a type is an important part of this Recommendation | International Standard.
2) Subclause 2.1
Add the following item at the end of subclause 2.1:
– ITU-T Recommendation X.692 (2001) | ISO/IEC 8825-3:2001, Information technology – ASN.1
encoding rules: Specification of Encoding Control Notation (ECN).
3) Subclause 3.8
Add a new subclause 3.8.15 bis as follows:
3.8.15 bis contents constraint: A constraint on a bit string or octet string type that specifies either that the contents
are to be an encoding of a specified ASN.1 type, or that specified procedures are to be used to produce the contents.
4) Clause 4
In clause 4 add the following line after the line that defines DNIC:
ECN Encoding Control Notation of ASN.1
 ITU-T X.680 (1997)/Cor.3 (02/2001 E) 1

---------------------- Page: 2 ----------------------
ISO/IEC 8824-1:1998/Cor.3:2002 (E)
5) New subclause 11.8 bis

Add a new subclause 11.8 bis as follows:
11.8 bis Real number item
Name of item – realnumber
A "realnumber" shall consist of an integer part that is a series of one or more digits, and optionally a decimal point (.).
The decimal point can optionally be followed by a fractional part which is one or more digits. The integer part, decimal
point or fractional part (which ever is last present) can optionally be followed by an e or E and an optionally signed
exponent which is one or more digits. The leading digit of the integer part shall not be zero unless immediately
followed by the decimal point. The leading digit of the exponent shall not be zero unless the exponent is a single digit.
NOTE – The "realnumber" item is always mapped to real value by interpreting it as decimal notation.
6) Subclause 11.18
Add the reserved words "CONTAINING" and "ENCODED" to both the list of reserved words and to Note 2, and
"PATTERN" to the list of reserved words.
7) Subclause 20.5 Note 1
Change Note 1 to read:
NOTE 1 – Non-zero values represented by "base" 2 and by "base" 10 are considered to be distinct abstract values even if they
evaluate to the same real number value, and may carry different application semantics.
8) Subclause 20.6
Change subclause 20.6 to read:
20.6 The value of a real type shall be defined by the notation "RealValue":

RealValue ::= NumericRealValue | SpecialRealValue

NumericRealValue ::=
  realnumber |
  "-" realnumber |
  SequenceValue -- Value of the associated sequence type

SpecialRealValue ::=
  PLUS-INFINITY | MINUS-INFINITY

The "SequenceValue" form for "NumericRealValue" shall not be used for zero values.
9) New subclause 20.7

Add a new subclause 20.7:

20.7 When the "realnumber" notation is used it identifies the corresponding "base" 10 abstract value. If the
RealType is constrained to "base" 2, the "realnumber" identifies the "base" 2 abstract value corresponding
either to the decimal value specified by the "realnumber" or to a locally-defined precision if an exact
representation is not possible.
10) Subclause 38.1

Add "UTF8String, " after "UniversalString,".
11) Subclause 38.4

Add " and UTF8String" after "UniversalString".
2 ITU-T X.680 (1997)/Cor.3 (02/2001 E)

---------------------- Page: 3 ----------------------
ISO/IEC 8824-1:1998/Cor.3:2002 (E)
12) Subclause 48.1
Add the following to the end of SubtypeElements:
PatternConstraint
and at the end of the line "InnerTypeConstraints", add "|".
a)
Add a new column to Table 6 with the heading "PatternConstraint", with an entry of "Yes " for "Restricted Character
String Types" and "No" for all other rows.

a)
Add "UTF8String, " after "VisibleString" to footnote of Table 6.
13) Subclause 48.9
Add a new subclause 48.9 as follows:
48.9 Pattern constraint
48.9.1 The "PatternConstraint" notation shall be:
PatternConstraint ::= PATTERN Value
48.9.2 "Value" shall be a "cstring" of type UniversalString (or a reference to such a character string) which contains
a regular expression as defined in Annex H. The "PatternConstraint" selects those values of the parent type that satisfy
the regular expression. The entire value shall satisfy the entire regular expression, i.e. the "PatternConstraint" does not
select values whose leading characters match the (entire) regular expression but which contain further trailing
characters.

NOTE – "Value" is formally defined as a value of type UniversalString, but the sets of values of type UniversalString and
UTF8String are the same (see 36.13). Thus a totally equivalent definition could have been to say that "Value" is a value of type
UTF8String.
14) Annex C, subclause C.2.8
Change the two C.2.8 example object identifiers to use values assigned under the "asn1(1) examples(123)" arc:
packedBCDStringAbstractSyntaxId OBJECT IDENTIFIER ::=
    { joint-iso-itu-t asn1(1) examples(123) packedBCD(2) charSet(0) }
packedBCDStringTransferSyntaxId OBJECT IDENTIFIER ::=
    { joint-iso-itu-t asn1(1) examples(123) packedBCD(2) characterTransferSyntax(1) }
15) Annex F, subclause F.3.2.2 to Amendment 2 (Semantic model)
Add the following after item c:
c bis) Any occurrence of "realnumber" shall be transformed to a "base" 10 associated "SequenceValue".
Any occurrence of the "RealValue" associated with "SequenceValue" shall be transformed to the
associated "SequenceValue" of the same "base", such that the last digit of the mantissa is not zero.
16) Annex G
Add the following to the end of SubtypeElements:
PatternConstraint
and at the end of the line "InnerTypeConstraints" add a "|".

Also, add the following to Annex G after the line which begins with "PresenceConstraint ::=".
PatternConstraint ::= PATTERN Value
17) New Annex H

Add the following as a new Annex H.
 ITU-T X.680 (1997)/Cor.3 (02/2001 E) 3

---------------------- Page: 4 ----------------------
ISO/IEC 8824-1:1998/Cor.3:2002 (E)
Annex H

ASN.1 regular expressions
(This annex forms an integral part of this Recommendation | International Standard)

NOTE – This annex will be assigned a new letter, so that it precedes all informative annexes when this Recommendation |
International Standard is re-published.
H.1 Definition

H.1.1 A regular expression is a pattern that describes a set of strings whose format conforms to this pattern. A
regular expression is itself a string; it is constructed analogously to arithmetic expressions, by using various operators to
combine smaller expressions. The smallest expressions, which are (usually) made of one or two characters, are
placeholders that stand for a set of characters. The regular expressions presented here are very similar to those of
scripting languages like Perl and to those of XML Schemas, where some other examples of use can be found.

H.1.2 Most characters, including all letters and digits, are regular expressions that match themselves.

EXAMPLE

The regular expression "fred" matches only the string "fred".

H.1.3 Two regular expressions may be concatenated; the resulting regular expression matches any string formed by
concatenating two substrings that respectively match the concatenated subexpressions.
H.2 Metacharacters

H.2.1 A metacharacter sequence (or metacharacter) is a set of one or more contiguous characters that have a special
meaning in the context of a regular expression. The following list contains all o
...

NORME INTERNATIONALE ISO/CEI 8824-1:1998
RECTIFICATIF TECHNIQUE 3
Publié 2002-05-01

INTERNATIONAL ORGANIZATION FOR STANDARDIZATION • МЕЖДУНАРОДНАЯОРГАНИЗАЦИЯПОСТАНДАРТИЗАЦИИ • ORGANISATION INTERNATIONALE DE NORMALISATION
INTERNATIONAL ELECTROTECHNICAL COMMISSION • МЕЖДУНАРОДНАЯЭЛЕКТРОТЕХНИЧЕСКАЯКОМИССИЯ • COMMISSION ÉLECTROTECHNIQUE INTERNATIONALE

Technologies de l'information — Notation de syntaxe abstraite
numéro un (ASN.1): Spécification de la notation de base
RECTIFICATIF TECHNIQUE 3
Information technology — Abstract Syntax Notation One (ASN.1): Specification of basic notation
TECHNICAL CORRIGENDUM 3
Le Rectificatif technique 3 à la Norme internationale ISO/CEI 8824-1:1998 a été élaboré par le comité technique
mixte ISO/CEI JTC 1, Technologies de l'information, sous-comité SC 6, Téléinformatique.
o
ICS 35.100.60 Réf. n ISO/CEI 8824-1:1998/Cor.3:2002(F)
© ISO/CEI 2002 – Tous droits réservés
ImpriméenSuisse

---------------------- Page: 1 ----------------------
ISO/CEI 8824-1:1998/Cor.3:2002 (F)
NORME INTERNATIONALE
RECOMMANDATION UIT-T
Technologies de l'information – Notation de syntaxe abstraite numéro un:
spécification de la notation de base
CORRIGENDUM TECHNIQUE 3
1) Introduction
e e
Dans l'Introduction (page vi), remplacer les 2 et 3 alinéas (commençant respectivement par les mots "Bien que cette
notation normalisée" et "Hors du contexte de l'OSI") par le texte ci-après:
Dans certaines architectures de protocole, chaque message est spécifié comme la valeur binaire d'une séquence d'octets.
Les rédacteurs de normes ont cependant besoin de définir des types de données vraiment complexes afin d'exprimer leurs
messages, quelle que soit leur représentation binaire. Afin de spécifier ces types de données, ils ont besoin d'une notation
qui ne détermine pas nécessairement la représentation de chaque valeur, comme la notation de syntaxe abstraite numéro
un (ASN.1). Celle-ci est complétée par la spécification d'un ou de plusieurs algorithmes appelés règles de codage, qui
déterminent la valeur des octets exprimant la sémantique applicative (appelée syntaxe de transfert). La Rec. UIT-T
X.690 | ISO/CEI 8825-1 et la Rec. UIT-T X.691 | ISO/CEI 8825-2 spécifient deux familles de règles de codage
normalisées, appelées règles de codage de base (BER, basic encoding rules) et règles de codage compact (PER,
packed encoding rules). Certains utilisateurs souhaitent redéfinir leur protocoles existants au moyen de la notation
ASN.1 mais ne peuvent pas utiliser les règles de codage normalisées parce qu'ils ont besoin de conserver leurs
représentations binaires existantes. D'autres utilisateurs souhaitent avoir une maîtrise plus complète de la représentation
exacte des éléments binaires en ligne directe (la syntaxe de transfert). Ces exigences sont prises en compte par la Rec.
UIT-T X.692 | ISO/CEI 8825-3 (en attente d'être approuvée fin 2001), qui spécifie une notation à maîtrise de codage
(ECN, encoding control notation) pour la notation ASN.1. La notation ECN permet aux concepteurs de spécifier
formellement la syntaxe abstraite d'un protocole au moyen de la notation ASN.1 mais de prendre ensuite (s'ils le
souhaitent) la maîtrise complète ou partielle des éléments binaires en ligne directe en rédigeant une spécification ECN
auxiliaire (qui peut faire référence à des règles de codage normalisées pour certaines parties du codage).
La notion d'une distinction entre une valeur abstraite d'une certaine classe (ou type) et les détails d'un codage particulier
fait l'objet d'une reconnaissance croissante. Afin d'interpréter correctement la représentation de la configuration binaire
d'une valeur, il faut connaître (habituellement d'après le contexte) la classe (le type) de la valeur à représenter ainsi que le
mécanisme de codage employé. L'identification d'un type est donc une partie importante de la présente Recommandation
| Norme internationale.
2) Paragraphe 2.1
Ajouter ce qui suit à la fin du § 2.1:
– Recommandation UIT-T X.692 (2001) | ISO/CEI 8825-3:2001, Technologies de l'information – Règles de
codage ASN.1: spécification de la notation à maîtrise de codage.
3) Paragraphe 3.8
Ajouter un nouveau paragraphe 3.8.15 bis comme suit:
3.8.15 bis contrainte de contenu: contrainte associée à un type chaîne binaire ou à un type chaîne d'octets, indiquant que
le contenu doit correspondre à un codage d'un type ASN.1 spécifié ou que des procédures spécifiées doivent être utilisées
pour produire le contenu.
  UIT-T X.680 (1997)/Cor.3 (02/2001 F) 1

---------------------- Page: 2 ----------------------
ISO/CEI 8824-1:1998/Cor.3:2002 (F)
4) Article 4
Dans l'article 4, ajouter la ligne suivante après celle qui définit le code DNIC:
ECN Notation à maîtrise de codage de l'ASN.1 (encoding control notation of ASN.1)
5) Nouveau paragraphe 11.8 bis
Ajouter un nouveau paragraphe 11.8 bis comme suit:
11.8 bis Unité lexicale: nombre réel
Nom de l'unité lexicale – realnumber
Un nombre réel (realnumber) doit se composer d'un élément entier constitué d'un ou de plusieurs chiffres avec,
facultativement, une virgule décimale (,). La virgule décimale peut éventuellement être suivie d'une fraction d'élément
constituée d'un ou de plusieurs chiffres. L'élément entier, la virgule décimale ou la fraction d'élément (c'est-à-dire celui
de ces trois éléments qui est présent en dernier) peut éventuellement être suivi d'un e ou d'un E ainsi que d'un exposant,
le cas échéant signé, constitué d'un ou de plusieurs chiffres. Le premier chiffre de l'élément entier doit être différent de
zéro sauf s'il est immédiatement suivi de la virgule décimale. Le premier chiffre de l'exposant doit être différent de zéro
sauf s'il est composé d'un seul chiffre.
NOTE – On fait toujours correspondre l'unité lexicale "realnumber" à la valeur du nombre réel en l'interprétant comme étant une
notation décimale.
6) Paragraphe 11.18
Ajouter les mots réservés "CONTAINING" et "ENCODED" aussi bien à la liste des mots réservés qu'à la Note 2.
Ajouter "PATTERN" à la liste des mots réservés.
7) Paragraphe 20.5 – Note 1
Modifier comme suit la Note 1:
NOTE 1 – Les valeurs différentes de zéro qui sont représentées en "base" 2 ou en "base" 10 sont considérées comme des valeurs
abstraites distinctes même si elles correspondent à la même valeur de nombre réel. Elles peuvent exprimer des sémantiques
d'application différentes.
8) Paragraphe 20.6
Modifier ce paragraphe comme suit:
20.6 La valeur d'un type réel doit être définie par la notation "RealValue":

RealValue ::= NumericRealValue | SpecialRealValue

NumericRealValue ::=
  realnumber |
  "-" realnumber |
  SequenceValue -- Valeur du type séquence associé

SpecialRealValue ::=
  PLUS-INFINITY | MINUS-INFINITY

La forme "SequenceValue" de la notation "NumericRealValue" ne doit pas être utilisée pour les valeurs zéro.
2 UIT-T X.680 (1997)/Cor.3 (02/2001 F)

---------------------- Page: 3 ----------------------
ISO/CEI 8824-1:1998/Cor.3:2002 (F)
9) Nouveau paragraphe 20.7
Ajouter un nouveau paragraphe 20.7 comme suit:
20.7 Lorsque la notation "realnumber" est utilisée, elle désigne la valeur abstraite correspondante en "base" 10. Si le
type réel est contraint à la "base" 2, la notation "realnumber" désigne la valeur abstraite en "base" 2 qui
correspond soit à la valeur décimale spécifiée par "realnumber" soit à une précision définie localement si une
représentation exacte n'est pas possible.
10) Paragraphe 38.1
Ajouter "UTF8String" après "UniversalString".
11) Paragraphe 38.4
Ajouter "et UTF8String" après "UniversalString".
12) Paragraphe 48.1
Ajouter ce qui suit à la fin du module "SubtypeElements":
PatternConstraint
A la fin de la ligne "InnerTypeConstraints", ajouter "|".
a)
Ajouter une nouvelle colonne au Tableau 6, intitulée "PatternConstraint", avec une entrée "Oui " pour la rangée "Types
de chaînes de caractères à alphabet restreint" et "Non" pour toutes les autres rangées.
a)
Ajouter "UTF8String" après "VisibleString" dans la note de bas de page du Tableau 6.
13) Paragraphe 48.9
Ajouter un nouveau paragraphe 48.9 comme suit:
48.9 Contrainte de structure
48.9.1 La notation "PatternConstraint" doit être la suivante:
PatternConstraint ::= PATTERN Value
48.9.2 L'élément "Value" doit être une chaîne "cstring" de type "UniversalString" (ou une référence à une telle chaîne
de caractères) contenant une expression régulière comme défini dans l'Annexe H. La notation "PatternConstraint"
sélectionne les valeurs du type parent qui satisfont à l'expression régulière. La valeur entière doit satisfaire à l'expression
régulière entière, c'est-à-dire que "PatternConstraint" ne sélectionne pas les valeurs dont les caractères de début
répondent à l'expression régulière (entière) mais qui contient d'autres caractères en fin de séquence.
NOTE – L'élément "Value" est défini formellement comme étant une valeur de type UniversalString; mais les ensembles de
valeurs de type UniversalString et UTF8String sont les mêmes (voir § 36.13). Une définition totalement équivalente aurait donc pu
consister à énoncer que "Value" est une valeur de type UTF8String.
14) Annexe C, paragraphe C.2.8
Modifier les deux identificateurs d'objet dans l'exemple du C.2.8 afin d'utiliser des valeurs assignées sous l'arc "asn1(1)
examples(123)":
packedBCDStringAbstractSyntaxId OBJECT IDENTIFIER ::=
    { joint-iso-itu-t asn1(1) examples(123) packedBCD(2) charSet(0) }
packedBCDStringTransferSyntaxId OBJECT IDENTIFIER ::=
    { joint-iso-itu-t asn1(1) examples(123) packedBCD(2) characterTransferSyntax(1) }
  UIT-T X.680 (1997)/Cor.3 (02/2001 F) 3

---------------------- Page: 4 ----------------------
ISO/CEI 8824-1:1998/Cor.3:2002 (F)
15) Annexe F, paragraphe F.3.2.2 de l'Amendement 2 (Modèle sémantique)
Ajouter ce qui suit après l'alinéa c):
c bis) Chaque occurrence de la notation "realnumber" doit être transformée en une valeur de séquence
(SequenceValue) associée à la "base" 10. Chaque occurrence de la notation "RealValue" associée à la
notation "SequenceValue" doit être transformée en la "SequenceValue" de la même "base", de façon
que le dernier chiffre de la mantisse soit différent de zéro.
16) Annexe G
Ajouter ce qui suit à la fin du module "SubtypeElements":
PatternConstraint
A la fin de la ligne "InnerTypeConstraints", ajouter "|".
De même, ajouter ce qui suit à l'Annexe G, après la ligne commençant par "PresenceConstraint ::=":
PatternConstraint ::= PATTERN Value
17) Nouvelle Annexe H
Ajouter ce qui suit en tant que nouvelle Annexe H.





















4 UIT-T X.680 (1997)/Cor.3 (02/2001 F)

---------------------- Page: 5 ----------------------
ISO/CEI 8824-1:1998/Cor.3:2002 (F)
Annexe H

Expressions régulières en notation ASN.1
(Cette annexe fait partie intégrante de la présente Recommandation | Norme internationale)

NOTE – Cette annexe recevra une nouvelle lettre, de façon qu'elle précède toutes les annexes informatives lorsque la présente
Recommandation | Norme internationale sera rééditée.
H.1 Définition
H.1.1 Une expression régulière est une structure qui décrit un ensemble de chaînes dont le format est conforme à
cette structure. Une expression régulière est elle-même une chaîne; elle est construite de façon analogue aux expressions
arithmétiques, au moyen de divers opérateurs combinant des expressions plus petites. Les plus petites expressions,
constituées (habituellement) de 1 ou 2 caractères, sont des structures génériques qui représentent un jeu de caractères.
Les expressions régulières présentées ici sont très semblables à celles des langages d'information en code machine
comme PERL et à celles des schémas XML, où l'on peut trouver quelques autres exemples d'utilisation.
H.1.2 La plupart des caractères, y compris toutes les lettres et tous les chiffres, sont des expressions régulières qui
correspondent à elles-mêmes.
EXEMPLE
L'expression régulière "fred" ne correspond qu'à la chaîne "fred".
H.1.3 Deux expressions régulières peuvent être concaténées: l'expression régulière résultante correspond à toute
chaîne formée par concaténation de deux sous-chaînes qui correspondent respectivement aux sous-expressions
concaténées.
H.2 Métacaractères
H.2.
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.