ISO/IEC 24824-1:2007
(Main)Information technology — Generic applications of ASN.1: Fast infoset — Part 1:
Information technology — Generic applications of ASN.1: Fast infoset — Part 1:
ISO/IEC 24824-1:2007 specifies a representation of an instance of the W3C XML Information Set using binary encodings. These binary encodings are specified using the ASN.1 notation and the ASN.1 Encoding Control Notation (ECN). The technology specified in ISO/IEC 24824-1:2007 is called Fast Infoset. This technology provides an alternative to W3C XML syntax as a means of representing instances of the W3C XML Information Set. This representation generally provides smaller encoding sizes and faster processing than a W3C XML representation. ISO/IEC 24824-1:2007 specifies the use of several techniques that minimize the size of the encodings and that maximize the speed of creating and processing Fast Infoset documents. These techniques include the use of dynamic tables (for both character strings and qualified names), initial vocabularies and external vocabularies. ISO/IEC 24824-1:2007 also specifies a Multipurpose Internet Mail Extensions (MIME) media type that identifies a Fast Infoset document.
Technologies de l'information — Applications génériques de l'ASN.1: Infoset rapide — Partie 1:
L'ISO/CEI 24824-1:2007 spécifie une représentation d'une instance de l'ensemble d'informations XML W3C qui utilise des codages binaires. Ces codages binaires sont spécifiés à l'aide de la notation ASN.1 et de la notation de contrôle de codage ASN.1. La technologie spécifiée dans l'ISO/CEI 24824-1:2007 se nomme Fast Infoset. Elle fournit une alternative à la syntaxe XML W3C comme moyen de représenter les instances d'ensemble d'informations XML du W3C. Cette représentation donne habituellement des tailles de codage plus petites et un traitement plus rapide que la représentation XML du W3C. L'ISO/CEI 24824-1:2007 spécifie aussi des techniques qui minimisent la taille des documents Fast Infoset et maximisent la vitesse de création et de traitement des documents Fast Infoset. Ces techniques impliquent l'utilisation de tableaux de vocabulaire conceptuel avec un indice de tableau de vocabulaire transposant un ensemble de trois indices de tableaux de vocabulaire, identifiant un préfixe, un nom d'espace de nom, et un nom local. L'ISO/CEI 24824-1:2007 spécifie également un type de support d'extensions de messagerie Internet multiobjets (MIME) qui identifie un document Fast Infoset.
General Information
Buy Standard
Standards Content (Sample)
INTERNATIONAL ISO/IEC
STANDARD 24824-1
First edition
2007-05-01
Information technology — Generic
applications of ASN.1: Fast Infoset
Technologies de l'information — Applications génériques de ASN.1:
Infoset rapide
Reference number
ISO/IEC 24824-1:2007(E)
©
ISO/IEC 2007
---------------------- Page: 1 ----------------------
ISO/IEC 24824-1:2007(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 2007
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 in Switzerland
ii © ISO/IEC 2007 – All rights reserved
---------------------- Page: 2 ----------------------
ISO/IEC 24824-1:2007(E)
CONTENTS
Page
1 Scope. 1
2 Normative references . 1
2.1 Identical Recommendations | International Standards. 2
2.2 Additional references. 2
3 Definitions . 3
3.1 ASN.1 terms . 3
3.2 ECN terms. 3
3.3 ISO/IEC 10646 terms. 3
3.4 Additional definitions . 3
4 Abbreviations . 4
5 Notation . 4
6 Principles of vocabulary table construction and use. 5
7 ASN.1 type definitions . 6
7.1 General . 6
7.2 The Document type . 6
7.3 The Element type . 11
7.4 The Attribute type . 12
7.5 The ProcessingInstruction type. 12
7.6 The UnexpandedEntityReference type. 13
7.7 The CharacterChunk type. 13
7.8 The Comment type . 14
7.9 The DocumentTypeDeclaration type. 14
7.10 The UnparsedEntity type. 15
7.11 The Notation type . 15
7.12 The NamespaceAttribute type. 16
7.13 The IdentifyingStringOrIndex type. 16
7.14 The NonIdentifyingStringOrIndex type . 17
7.15 The NameSurrogate type. 18
7.16 The QualifiedNameOrIndex type. 19
7.17 The EncodedCharacterString type. 20
8 Construction and processing of a fast infoset document. 21
8.1 Conceptual ordering of components of an abstract value of the Document type . 22
8.2 The restricted alphabet table. 22
8.3 The encoding algorithm table . 22
8.4 The dynamic string tables . 23
8.5 The dynamic name tables and name surrogates . 23
9 Built-in restricted alphabets . 24
9.1 The "numeric" restricted alphabet. 24
9.2 The "date and time" restricted alphabet. 24
10 Built-in encoding algorithms. 24
10.1 General . 24
10.2 The "hexadecimal" encoding algorithm . 25
10.3 The "base64" encoding algorithm. 25
10.4 The "short" encoding algorithm . 25
10.5 The "int" encoding algorithm. 26
10.6 The "long" encoding algorithm . 26
10.7 The "boolean" encoding algorithm. 26
10.8 The "float" encoding algorithm. 27
10.9 The "double" encoding algorithm . 27
10.10 The "uuid" encoding algorithm . 27
© ISO/IEC 2007 – All rights reserved iii
---------------------- Page: 3 ----------------------
ISO/IEC 24824-1:2007(E)
Page
10.11 The "cdata" encoding algorithm . 28
11 Restrictions on the supported XML infosets and other simplifications. 28
12 Bit-level encoding of the Document type. 29
Annex A – ASN.1 module and ECN modules for fast infoset documents . 31
A.1 ASN.1 module definition. 31
A.2 ECN module definitions . 33
Annex B – The MIME media type for fast infoset documents . 53
Annex C – Description of the encoding of a fast infoset document. 55
C.1 Fast infoset document . 55
C.2 Encoding of the Document type . 55
C.3 Encoding of the Element type . 57
C.4 Encoding of the Attribute type . 58
C.5 Encoding of the ProcessingInstruction type. 58
C.6 Encoding of the UnexpandedEntityReference type. 59
C.7 Encoding of the CharacterChunk type . 59
C.8 Encoding of the Comment type . 59
C.9 Encoding of the DocumentTypeDeclaration type. 59
C.10 Encoding of the UnparsedEntity type . 60
C.11 Encoding of the Notation type . 60
C.12 Encoding of the NamespaceAttribute type. 61
C.13 Encoding of the IdentifyingStringOrIndex type. 61
C.14 Encoding of the NonIdentifyingStringOrIndex type starting on the first bit of an
octet . 61
C.15 Encoding of the NonIdentifyingStringOrIndex type starting on the third bit of an
octet . 62
C.16 Encoding of the NameSurrogate type . 62
C.17 Encoding of the QualifiedNameOrIndex type starting on the second bit of an octet . 62
C.18 Encoding of the QualifiedNameOrIndex type starting on the third bit of an octet . 63
C.19 Encoding of the EncodedCharacterString type starting on the third bit of an octet . 63
C.20 Encoding of the EncodedCharacterString type starting on the fifth bit of an octet. 64
C.21 Encoding of the length of a sequence-of type. 64
C.22 Encoding of the NonEmptyOctetString type starting on the second bit of an octet . 64
C.23 Encoding of the NonEmptyOctetString starting on the fifth bit of an octet . 65
C.24 Encoding of the NonEmptyOctetString type starting on the seventh bit of an octet . 65
20
C.25 Encoding of integers in the range 1 to 2 starting on the second bit of an octet. 65
20
C.26 Encoding of integers in the range 0 to 2 starting on the second bit of an octet. 66
20
C.27 Encoding of integers in the range 1 to 2 starting on the third bit of an octet . 66
20
C.28 Encoding of integers in the range 1 to 2 starting on the fourth bit of an octet. 66
C.29 Encoding of integers in the range 1 to 256. 67
Annex D – Examples of encoding XML infosets as fast infoset documents . 68
D.1 Introduction of examples . 68
D.2 Size of example documents (including redundancy-based compression). 68
D.3 UBL order example . 69
D.4 UBL Order fast infoset document with an external vocabulary. 71
D.5 UBL order fast infoset document without an initial vocabulary . 79
Annex E – Assignment of object identifier values. 90
BIBLIOGRAPHY. 91
iv © ISO/IEC 2007 – All rights reserved
---------------------- Page: 4 ----------------------
ISO/IEC 24824-1:2007(E)
Foreword
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical
Commission) form the specialized system for worldwide standardization. National bodies that are members of
ISO or IEC participate in the development of International Standards through technical committees
established by the respective organization to deal with particular fields of technical activity. ISO and IEC
technical committees collaborate in fields of mutual interest. Other international organizations, governmental
and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information
technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.
International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.
The main task of the joint technical committee is to prepare International Standards. Draft International
Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as
an International Standard requires approval by at least 75 % of the national bodies casting a vote.
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent
rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.
ISO/IEC 24824-1 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology,
Subcommittee SC 6, Telecommunications and information exchange between systems, in collaboration with
ITU-T. The identical text is published as ITU-T Rec. X.891.
ISO/IEC 24824 consists of the following parts, under the general title Information technology — Generic
applications of ASN.1:
— Part 1: Fast infoset
— Part 2: Fast Web Services
The following part is under preparation:
— Part 3: Fast infoset security
© ISO/IEC 2007 – All rights reserved v
---------------------- Page: 5 ----------------------
ISO/IEC 24824-1:2007(E)
Introduction
This Recommendation | International Standard specifies a representation of an instance of the W3C XML Information
Set using binary encodings (specified using the ASN.1 notation and the ASN.1 Encoding Control Notation). The
encoding specified in this edition of this Recommendation | International Standard is identified by the version number 1
(see 12.9).
The technology specified in this Recommendation | International Standard is named Fast Infoset. It provides an
alternative to W3C XML syntax as a means of representing instances of the W3C XML Information Set. This
representation generally provides smaller encoding sizes and faster processing than a W3C XML representation.
The representation of an instance of the W3C XML Information Set specified in this Recommendation | International
Standard is called a fast infoset document. Each fast infoset document is an encoding of an abstract value of an ASN.1
data type (the Document type – see 7.2) representing an instance of the W3C XML Information Set.
This Recommendation | International Standard specifies the use of several techniques that minimize the size of a fast
infoset document and that maximize the speed of creating and processing such documents.
These techniques are based on the use of vocabulary tables, which allow typically-small integer values (vocabulary
table indexes) to be used instead of character strings that form (for example) the names of elements or attributes in an
XML 1.0 serialization of an instance of the W3C XML Information Set.
There are a number of vocabulary tables (see clause 8), of which the most basic (the eight character string tables) map
typically-small integers to strings of characters. There are, however, also vocabulary tables (the element name table and
the attribute name table) that provide a further level of indirection, with a vocabulary table index mapping to a set of
three vocabulary table indexes, identifying a prefix, a namespace name, and a local name.
Another important technique is the use of a restricted alphabet vocabulary table. This contains entries that list a subset
of ISO/IEC 10646 characters. If a character string needs to be encoded for which there is an entry in this table, then it
can be encoded by identifying that this vocabulary table is being used, giving the vocabulary table index, and then
encoding each character in the minimum number of bits needed for that particular subset of ISO/IEC 10646 characters.
There are a number of built-in restricted alphabets that always form the first few entries of this table, covering such
commonly occurring strings as dates and times, and numeric values.
A further important optimization uses the encoding algorithm vocabulary table. This table identifies specialized
encodings that can be employed for commonly occurring strings, again with a number of built-in algorithms. For
example, if there is a string which looks like the decimal representation of an integer in the range –32768 to 32767, then
that string can be encoded by identifying that this vocabulary table is being used, giving the vocabulary table index, and
then encoding the integer as a two-octet signed integer. Floating-point numbers and arrays of such numbers are
supported in the same way.
In order to ensure fast processing without sacrificing compactness, many components of a fast infoset document (such
as character strings and components representing information items of the XML infoset) are octet-aligned, while other
components (such as lengths and vocabulary table indexes) are not necessarily octet-aligned but always end on the last
bit of an octet. To provide a formal specification of these optimized encodings, the ASN.1 Encoding Control Notation
(defined in ITU-T Rec. X.692 | ISO/IEC 8825-3) is used (see A.2), but use of ECN tools for implementation is not
necessary and a complete description of the encoding is provided (see Annex C).
The vocabulary tables for a particular fast infoset document can be initialized by information at the head of the
document, and are normally added to dynamically, providing flexibility for an encoder. The initial vocabulary tables
can be provided by a reference to the set of final vocabulary tables of some other identified fast infoset document (or by
other means). This vocabulary reference can then be supplemented by further table additions to provide the initial
vocabulary tables for this document. Further dynamic additions are normally made to the tables during the creation or
the processing of the document.
Finally, a mechanism is provided for the generator of a fast infoset document to include data (called additional
processing data) related to optional additional processing of the fast infoset document, together with a URI that
identifies a complete specification of the form and semantics of that additional processing data. The optional additional
processing data is ignored by any subsequent processor of the fast infoset document if the URI is not known, or the
processing that it specifies is not supported or not required.
NOTE – An example of such additional processing data would be data that provides indexes that enable immediate access to
parts of the fast infoset document, so that the whole document need not be processed if the only interest is in those parts of the
fast infoset document that correspond to a specific XML tag.
Annex A forms an integral part of this Recommendation | International Standard, and contains an ASN.1 module (see
ITU-T Rec. X.680 | ISO/IEC 8824-1) and two ECN modules (EDM and ELM – see ITU-T Rec. X.692 |
ISO/IEC 8825-3) which together specify the abstract content and the bit-level encoding of a value of the Document
type, which conveys the value of an instance of the W3C XML Information Set.
vi © ISO/IEC 2007 – All rights reserved
---------------------- Page: 6 ----------------------
ISO/IEC 24824-1:2007(E)
Annex B forms an integral part of this Recommendation | International Standard, and contains the specification of a
MIME media type identifying a fast infoset document.
Annex C does not form an integral part of this Recommendation | International Standard, and provides a complete
description of the encodings formally specified in clause 12 and A.2.
Annex D does not form an integral part of this Recommendation | International Standard, and provides examples of fast
infoset documents generated from some XML documents. Annex D also gives the size of the XML representation and
the Fast Infoset representation of these examples.
© ISO/IEC 2007 – All rights reserved vii
---------------------- Page: 7 ----------------------
ISO/IEC 24824-1:2007 (E)
INTERNATIONAL STANDARD
ITU-T RECOMMENDATION
Information technology – Generic applications of ASN.1: Fast infoset
1 Scope
This Recommendation | International Standard specifies an ASN.1 type (see ITU-T Rec. X.680 | ISO/IEC 8824-1)
whose abstract values represent instances of the W3C XML Information Set. It also specifies binary encodings for those
values, using ASN.1 Encoding Control Notation (see ITU-T Rec. X.692 | ISO/IEC 8825-3).
NOTE – These encodings are called fast infoset documents.
This Recommendation | International Standard also specifies techniques that:
– minimize the size of fast infoset documents;
– maximize the speed of creating and processing fast infoset documents;
– allow the specification (by the generator of a fast infoset document) of additional processing data.
The first two techniques involve the use of conceptual vocabulary tables. The set of vocabulary tables and the nature of
their entries is fully defined in this Recommendation | International Standard, but their representation in computer
memory is outside the scope of this Recommendation | International Standard. Provision for transfer or storage of, or a
formal notation for displaying or specifying, vocabulary tables to be used as an external vocabulary is also outside the
scope of this Recommendation | International Standard.
The third technique involves the provision of additional processing data and a URI that identifies the form and
semantics of that data. The specification of specific forms of additional processing data and their use is outside the
scope of this Recommendation | International Standard.
URIs can be used to identify final vocabularies that can be used as either part or all of some new initial vocabulary, but
the assignment of specific URIs to specific final vocabularies is outside the scope of this Recommendation |
International Standard.
This Recommendation | International Standard specifies built-in restricted alphabets, the addition to vocabulary tables
of further restricted alphabets by enumeration, and the use of these vocabulary tables for efficient encoding of character
strings.
This Recommendation | International Standard further specifies built-in encoding algorithms for the optimum encoding
of certain character strings, and the addition to vocabulary tables of further encoding algorithms identified by URIs, but
the definition of these further encoding algorithms and their associated URIs is outside the scope of this
Recommendation | International Standard.
In addition, this Recommendation | International Standard specifies a Multipurpose Internet Mail Extensions (MIME)
media type that identifies a fast infoset document.
2 Normative references
The following Recommendations, International Standards and other references contain provisions which, through
reference in this text, constitute provisions of this Recommendation | International Standard. At the time of publication,
the editions indicated were valid. All Recommendations, International Standards and other references are subject to
revision, and parties to agreements based on this Recommendation | International Standard are encouraged to
investigate the possibility of applying the most recent edition of the Recommendations, International Standards and
other references listed below. The Telecommunication Standardization Bureau of the ITU maintains a list of currently
valid ITU-T Recommendations. Members of IEC and ISO maintain registers of currently valid International Standards.
The IETF maintains a list of RFCs, together with those that have been obsoleted by later RFCs. The W3C maintains a
list of currently valid W3C Recommendations. The reference to a document within this Recommendation | International
Standard does not give it, as a stand-alone document, the status of a Recommendation or International Standard.
ITU-T Rec. X.891 (05/2005) 1
---------------------- Page: 8 ----------------------
ISO/IEC 24824-1:2007 (E)
2.1 Identical Recommendations | International Standards
– ITU-T Recommendation X.667 (2004) | ISO/IEC 9834-8:2005, Information technology – Open Systems
Interconnection – Procedures for the operation of OSI Registration Authorities: Generation and
registration of Universally Unique Identifiers (UUIDs) and their use as ASN.1 Object Identifier
components.
– ITU-T Recommendation X.680 (2002) | ISO/IEC 8824-1:2002, Information technology – Abstract
Syntax Notation One (ASN.1): Specification of basic notation.
– ITU-T Recommendation X.681 (2002) | ISO/IEC 8824-2:2002, Information technology – Abstract
Syntax Notation One (ASN.1): Information object specification. †
– ITU-T Recommendation X.682 (2002) | ISO/IEC 8824-3:2002, Information technology – Abstract
Syntax Notation One (ASN.1): Constraint specification. †
– ITU-T Recommendation X.683 (2002) | ISO/IEC 8824-4:2002, Information technology – Abstract
Syntax Notation One (ASN.1): Parameterization of ASN.1 specifications. †
– ITU-T Recommendation X.690 (2002) | ISO/IEC 8825-1:2002, Information technology – ASN.1
encoding rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and
Distinguished Encoding Rules (DER). †
– ITU-T Recommendation X.691 (2002) | ISO/IEC 8825-2:2002, Information technology – ASN.1
encoding rules: Specification of Packed Encoding Rules (PER). †
– ITU-T Recommendation X.692 (2002) | ISO/IEC 8825-3:2002, Information technology – ASN.1
encoding rules: Specification of Encoding Control Notation (ECN).
– ITU-T Recommendation X.693 (2001) | ISO/IEC 8825-4:2002, Information technology – ASN.1
encoding rules: XML Encoding Rules (XER). †
NOTE – The complete set of ASN.1 Recommendations | International Standards are listed above, as they can all be
applicable in particular uses of this Recommendation | International Standard. Where these are not directly referenced
in the body of this Recommendation | International Standard, a † symbol is added to the reference.
2.2 Additional references
– ISO 8601:2004, Data elements and interchange formats – Information interchange – Representation of
dates and times.
– ISO/IEC 10646:2003, Information technology – Universal Multiple-Octet Coded Character Set (UCS).
– The Unicode Standard, Version 4.0, The Unicode Consortium (Reading, MA, Addison-Wesley).
NOTE 1 – The graphics characters (and their encodings) defined by Unicode are identical to those defined by
ISO/IEC 10646-1, but Unicode is included as a reference because it also specifies the names of control
characters and defines the abbreviation UTF-16BE.
– W3C XML 1.0:2004, Extensible Markup Language (XML) 1.0 (Third Edition), W3C Recommendation,
Copyright © [4 February 2004] World Wide Web Consortium (Massachusetts Institute of Technology,
Institut National de Recherche en Informatique et en Automatiqu
...
NORME ISO/CEI
INTERNATIONALE 24824-1
Première édition
2007-05-01
Technologies de l'information —
Applications génériques de l'ASN.1:
Infoset rapide
Information technology — Generic applications of ASN.1: Fast infoset
Numéro de référence
ISO/CEI 24824-1:2007(F)
©
ISO/CEI 2007
---------------------- Page: 1 ----------------------
ISO/CEI 24824-1:2007(F)
PDF – Exonération de responsabilité
Le présent fichier PDF peut contenir des polices de caractères intégrées. Conformément aux conditions de licence d'Adobe, ce fichier
peut être imprimé ou visualisé, mais ne doit pas être modifié à moins que l'ordinateur employé à cet effet ne bénéficie d'une licence
autorisant l'utilisation de ces polices et que celles-ci y soient installées. Lors du téléchargement de ce fichier, les parties concernées
acceptent de fait la responsabilité de ne pas enfreindre les conditions de licence d'Adobe. Le Secrétariat central de l'ISO décline toute
responsabilité en la matière.
Adobe est une marque déposée d'Adobe Systems Incorporated.
Les détails relatifs aux produits logiciels utilisés pour la création du présent fichier PDF sont disponibles dans la rubrique General Info
du fichier; les paramètres de création PDF ont été optimisés pour l'impression. Toutes les mesures ont été prises pour garantir
l'exploitation de ce fichier par les comités membres de l'ISO. Dans le cas peu probable où surviendrait un problème d'utilisation,
veuillez en informer le Secrétariat central à l'adresse donnée ci-dessous.
DOCUMENT PROTÉGÉ PAR COPYRIGHT
© ISO/CEI 2007
Droits de reproduction réservés. Sauf prescription différente, aucune partie de cette publication ne peut être reproduite ni utilisée sous
quelque forme que ce soit et par aucun procédé, électronique ou mécanique, y compris la photocopie et les microfilms, sans l'accord écrit
de l'ISO à l'adresse ci-après ou du comité membre de l'ISO dans le pays du demandeur.
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
Publié en Suisse
ii © ISO/CEI 2007 – Tous droits réservés
---------------------- Page: 2 ----------------------
ISO/CEI 24824-1:2007(F)
TABLE DES MATIÈRES
Page
1 Domaine d'application . 1
2 Références normatives. 1
2.1 Recommandations | Normes internationales identiques. 2
2.2 Références supplémentaires . 2
3 Définitions . 3
3.1 Termes ASN.1. 3
3.2 Termes ECN . 3
3.3 Termes de l'ISO/CEI 10646. 3
3.4 Définitions supplémentaires . 3
4 Abréviations. 4
5 Notation . 5
6 Principes de construction et d'utilisation des tableaux de vocabulaire. 5
7 Définitions de type ASN.1. 6
7.1 Généralités. 6
7.2 Le type Document . 6
7.3 Le type Element . 11
7.4 Le type Attribute . 12
7.5 Le type ProcessingInstruction . 13
7.6 Le type UnexpandedEntityReference . 13
7.7 Le type CharacterChunk . 14
7.8 Le type Comment . 14
7.9 Le type DocumentTypeDeclaration. 15
7.10 Le type UnparsedEntity . 15
7.11 Le type Notation . 16
7.12 Le type NamespaceAttribute. 16
7.13 Le type IdentifyingStringOrIndex. 17
7.14 Le type NonIdentifyingStringOrIndex . 18
7.15 Le type NameSurrogate . 19
7.16 Le type QualifiedNameOrIndex . 19
7.17 Le type EncodedCharacterString. 21
8 Construction et traitement d'un document Fast Infoset . 22
8.1 Rangement conceptuel des composants d'une valeur abstraite du type Document . 22
8.2 Tableau d'alphabet restreint. 23
8.3 Tableau d'algorithme de codage . 23
8.4 Tableaux de chaîne dynamiques. 24
8.5 Les tableaux de nom dynamiques et les substituts de nom . 24
9 Alphabets restreints prédéfinis . 25
9.1 L'alphabet restreint "numérique" . 25
9.2 L'alphabet restreint "date et heure" . 25
10 Algorithmes de codage prédéfinis . 26
10.1 Généralités. 26
10.2 L'algorithme de codage "hexadécimal". 26
10.3 L'algorithme de codage "base64". 26
10.4 L'algorithme de codage "court". 26
10.5 L'algorithme de codage "int" . 27
10.6 L'algorithme de codage "long". 27
10.7 L'algorithme de codage "booléen" . 28
10.8 L'algorithme de codage "float". 28
10.9 L'algorithme de codage "double". 28
10.10 L'algorithme de codage "uuid". 29
© ISO/CEI 2007 – Tous droits réservés iii
---------------------- Page: 3 ----------------------
ISO/CEI 24824-1:2007(F)
Page
10.11 L'algorithme de codage "cdata". 29
11 Restrictions sur les infosets XML pris en charge et autres simplifications . 29
12 Codage de niveau binaire du type Document. 30
Annexe A – Module ASN.1 et modules ECN pour documents Fast Infoset. 32
A.1 Définition du module ASN.1. 32
A.2 Définitions de modules ECN . 34
Annexe B – Type de support MIME pour documents Fast Infoset. 54
Annexe C – Description du codage d'un document Fast Infoset . 56
C.1 Document Fast Infoset . 56
C.2 Codage du type Document. 56
C.3 Codage du type Element . 58
C.4 Codage du type Attribute. 59
C.5 Codage du type ProcessingInstruction. 59
C.6 Codage du type UnexpandedEntityReference . 60
C.7 Codage du type CharacterChunk. 60
C.8 Codage du type Comment . 60
C.9 Codage du type DocumentTypeDeclaration . 60
C.10 Codage du type UnparsedEntity. 61
C.11 Codage du type Notation. 61
C.12 Codage du type NamespaceAttribute . 62
C.13 Codage du type IdentifyingStringOrIndex . 62
C.14 Codage du type NonIdentifyingStringOrIndex commençant sur le premier bit d'un
octet . 62
C.15 Codage du type NonIdentifyingStringOrIndex commençant au troisième bit
d'un octet. 63
C.16 Codage du type NameSurrogate . 63
C.17 Codage du type QualifiedNameOrIndex commençant sur le second bit d'un octet . 63
C.18 Codage du type QualifiedNameOrIndex commençant sur le troisième bit d'un octet . 64
C.19 Codage du type EncodedCharacterString commençant sur le troisième bit d'un octet . 64
C.20 Codage du type EncodedCharacterString commençant sur le cinquième bit d'un octet. 65
C.21 Codage de la longueur d'un type sequence-of. 65
C.22 Codage du type NonEmptyOctetString commençant sur le second bit d'un octet . 65
C.23 Codage de la chaîne NonEmptyOctetString commençant sur le cinquième bit d'un octet. 66
C.24 Codage du type NonEmptyOctetString commençant sur le septième bit d'un octet. 66
20
C.25 Codage des entiers dans la gamme 1 à 2 commençant sur le second bit d'un octet . 66
20
C.26 Codage des entiers dans la gamme 0 à 2 commençant sur le second bit d'un octet . 67
20
C.27 Codage des entiers dans la gamme 1 à 2 commençant sur le troisième bit d'un octet. 67
20
C.28 Codage des entiers dans la gamme 1 à 2 commençant sur le quatrième bit d'un octet. 67
C.29 Codage des entiers dans la gamme 1 à 256 . 68
Annexe D – Exemples de codage d'infosets XML comme documents Fast Infoset . 69
D.1 Introduction des exemples. 69
D.2 Taille des documents exemples (y compris la compression fondée sur la redondance). 69
D.3 Exemple d'ordre UBL . 70
D.4 Document Fast Infoset en ordre UBL avec vocabulaire externe . 72
D.5 Document Fast Infoset en ordre UBL sans vocabulaire initial . 79
Annexe E – Allocation des valeurs d'identifiant d'objet. 90
BIBLIOGRAPHIE . 91
iv © ISO/CEI 2007 – Tous droits réservés
---------------------- Page: 4 ----------------------
ISO/CEI 24824-1:2007(F)
Avant-propos
L'ISO (Organisation internationale de normalisation) et la CEI (Commission électrotechnique internationale)
forment le système spécialisé de la normalisation mondiale. Les organismes nationaux membres de l'ISO ou
de la CEI participent au développement de Normes internationales par l'intermédiaire des comités techniques
créés par l'organisation concernée afin de s'occuper des domaines particuliers de l'activité technique. Les
comités techniques de l'ISO et de la CEI collaborent dans des domaines d'intérêt commun. D'autres
organisations internationales, gouvernementales et non gouvernementales, en liaison avec l'ISO et la CEI
participent également aux travaux. Dans le domaine des technologies de l'information, l'ISO et la CEI ont créé
un comité technique mixte, l'ISO/CEI JTC 1.
Les Normes internationales sont rédigées conformément aux règles données dans les Directives ISO/CEI,
Partie 2.
La tâche principale du comité technique mixte est d'élaborer les Normes internationales. Les projets de
Normes internationales adoptés par le comité technique mixte sont soumis aux organismes nationaux pour
vote. Leur publication comme Normes internationales requiert l'approbation de 75 % au moins des
organismes nationaux votants.
L'attention est appelée sur le fait que certains des éléments du présent document peuvent faire l'objet de
droits de propriété intellectuelle ou de droits analogues. L'ISO et la CEI ne sauraient être tenues pour
responsables de ne pas avoir identifié de tels droits de propriété et averti de leur existence.
L'ISO/CEI 24824-1 a été élaboré par le comité technique mixte ISO/CEI JTC 1, Technologies de l'information,
sous-comité SC 6, Téléinformatique, en collaboration avec l'UIT-T. Le texte identique est publié en tant que
Rec. UIT-T X.891.
L'ISO/CEI 24824-1 comprend les parties suivantes, présentées sous le titre général Technologies de
l'information — Applications génériques de l'ASN.1:
⎯ Partie 1: Infoset rapide
⎯ Partie 2: Services web rapides
La partie suivante est en cours d’élaboration:
⎯ Partie 3: Sécurité d'Infoset rapide
© ISO/CEI 2007 – Tous droits réservés v
---------------------- Page: 5 ----------------------
ISO/CEI 24824-1:2007(F)
Introduction
La présente Recommandation | Norme internationale spécifie une représentation d'une instance de l'ensemble
d'informations XML W3C qui utilise des codages binaires (spécifiés à l'aide de la notation ASN.1 et de la notation de
contrôle de codage ASN.1). Le codage spécifié dans l'édition de la présente Recommandation | Norme internationale est
identifié par le numéro de version 1 (voir le § 12.9).
La technologie spécifiée dans la présente Recommandation | Norme internationale se nomme Fast Infoset. Elle fournit
une alternative à la syntaxe XML W3C comme moyen de représenter les instances d'ensemble d'informations XML du
W3C. Cette représentation donne habituellement des tailles de codage plus petites et un traitement plus rapide que la
représentation XML du W3C.
La représentation d'une instance de l'ensemble d'informations XML W3C spécifiée dans la présente Recommandation |
Norme internationale s'appelle un document Fast Infoset. Chaque document Fast Infoset est un codage d'une valeur
abstraite d'un type de données ASN.1 (le type Document – voir le § 7.2) représentant une instance de l'ensemble
d'informations XML W3C.
La présente Recommandation | Norme internationale spécifie l'utilisation de plusieurs techniques qui minimisent la
taille d'un document Fast Infoset et qui maximisent la vitesse de création et de traitement de tels documents.
Ces techniques sont fondées sur l'emploi de tableaux de vocabulaire, qui permettent d'utiliser des valeurs entières
normalement faibles (les indices de tableaux de vocabulaire) à la place des chaînes de caractères qui forment (par
exemple) les noms des éléments ou attributs dans une mise en série XML 1.0 d'une instance de l'ensemble
d'informations XML W3C.
Il y a de nombreux tableaux de vocabulaire (voir le paragraphe 8), dont les plus fondamentaux (les tableaux de chaînes
de huit caractères) transposent des entiers normalement petits en chaînes de caractères. Il y a cependant aussi des
tableaux de vocabulaire (le tableau des noms d'éléments et le tableau des noms d'attributs) qui donnent un niveau
d'indication supplémentaire, avec un indice de tableau de vocabulaire transposant un ensemble de trois indices de
tableaux de vocabulaire, identifiant un préfixe, un nom d'espace de nom, et un nom local.
Une autre technique importante est l'utilisation d'un tableau de vocabulaire à alphabet restreint. Il contient des entrées
qui font la liste d'un sous-ensemble de caractères ISO/CEI 10646. Si une chaîne de caractères qui doit être codée
possède une entrée dans ce tableau, elle peut alors être codée en notant qu'on utilise ce tableau de vocabulaire, en
donnant l'indice du tableau de vocabulaire, et en codant alors chaque caractère avec le nombre minimal de bits
nécessaires pour ce sous-ensemble particulier de caractères ISO/CEI 10646. Il y a un certain nombre d'alphabets
restreints préconstruits qui forment toujours les premières entrées de ce tableau, couvrant les chaînes qu'on rencontre de
façon usuelle comme les dates, les heures et les valeurs numériques.
Une importante technique d'optimisation utilise le tableau de vocabulaire d'algorithme de codage. Ce tableau identifie
les codages spécialisés qui peuvent être employés pour les chaînes d'utilisation courante, toujours avec un certain
nombre d'algorithmes incorporés. Par exemple, s'il y a une chaîne qui ressemble à la représentation décimale d'un entier
dans la gamme de –32 768 à 32 767, cette chaîne peut alors être codée en précisant qu'on utilise ce tableau de
vocabulaire, en donnant l'indice du tableau de vocabulaire, puis en codant l'entier comme entier algébrique de deux
octets. Les nombres et matrices à virgule flottante, de tels nombres sont pris en charge de la même façon.
Pour assurer un traitement rapide sans sacrifier la concision, de nombreux composants d'un document Fast Infoset
(comme les chaînes de caractères et les composants représentant des éléments d'information de l'infoset XML) sont
calés à l'octet, alors que d'autres composants (comme les longueurs et les indices de tableaux de vocabulaire) ne sont
pas nécessairement calés à l'octet mais se terminent toujours sur le dernier bit d'un octet. La notation de contrôle de
codage ASN.1 (définie dans la Rec. UIT-T X.692 | ISO/CEI 8825-3) est utilisée pour fournir une spécification formelle
de ces codages optimisés (voir le § A.2), mais l'utilisation d'outils ECN pour les implémentations n'est pas nécessaire et
une description complète du codage est donnée à l'Annexe C.
Les tableaux de vocabulaire pour un document Fast Infoset particulier peuvent être initialisés par des informations en
tête du document, et y sont habituellement ajoutés de façon dynamique, pour donner de la souplesse au codage. Les
tableaux de vocabulaire initiaux peuvent être fournis par une référence à l'ensemble de tableaux de vocabulaire finaux
d'autres documents Fast Infoset identifiés (ou par d'autres moyens). Cette référence de vocabulaire peut alors être
complétée par d'autres ajouts de tableaux pour fournir les tableaux de vocabulaire initiaux pour ce document. D'autres
ajouts dynamiques ultérieurs sont normalement faits aux tableaux durant la création ou le traitement du document.
Finalement, il est fourni un mécanisme de génération d'un document Fast Infoset qui inclut des données (appelées
données de traitement supplémentaire) qui se rapportent au traitement supplémentaire facultatif du document Fast
Infoset, lié à un URI qui identifie une spécification complète de la forme et de la sémantique des données de traitement
supplémentaire. Les données de traitement supplémentaire facultatif sont ignorées par les traitements ultérieurs du
document Fast Infoset si l'URI n'est pas connu, ou si le traitement qu'elles spécifient n'est pas accepté ou pas utile.
vi © ISO/CEI 2007 – Tous droits réservés
---------------------- Page: 6 ----------------------
ISO/CEI 24824-1:2007(F)
NOTE – Un exemple de telles données de traitement supplémentaire serait celui de données fournissant des indices permettant un
accès immédiat à des parties du document Fast Infoset, de sorte que le document tout entier n'ait pas besoin d'être traité si son
seul intérêt réside dans les parties du document Fast Infoset qui correspondent à une étiquette XML spécifique.
L'Annexe A fait partie intégrante de la présente Recommandation | Norme internationale, et contient un module ASN.1
(voir la Rec. UIT-T X.680 | ISO/CEI 8824-1) et deux modules ECN (EDM et ELM – voir la Rec. UIT-T X.692 |
ISO/CEI 8825-3) qui spécifient conjointement le contenu abstrait et le codage de niveau binaire d'une valeur du type
Document, qui porte la valeur d'une instance de l'ensemble d'informations XML du W3C.
L'Annexe B fait partie intégrante de la présente Recommandation | Norme internationale, et contient la spécification
d'un type de support MIME qui identifie un document Fast Infoset.
L'Annexe C ne fait pas partie intégrante de la présente Recommandation | Norme internationale, et donne une
description complète des codages spécifiés formellement au § 12 et au § A.2.
L'Annexe D ne fait pas partie intégrante de la présente Recommandation | Norme internationale, et donne des exemples
de documents Fast Infoset générés à partir de documents XML. L'annexe D donne aussi la taille de la représentation
XML et de la représentation Fast Infoset de ces exemples.
© ISO/CEI 2007 – Tous droits réservés vii
---------------------- Page: 7 ----------------------
ISO/CEI 24824-1:2007 (F)
NORME INTERNATIONALE
RECOMMANDATION UIT-T
Technologies de l'information – Applications génériques de l'ASN.1: Fast Infoset
1 Domaine d'application
La présente Recommandation | Norme internationale spécifie un type d'ASN.1 (voir la Rec. UIT-T X.680 | ISO/CEI
8824-1) dont les valeurs abstraites représentent des instances de l'ensemble d'informations XML du W3C. Elle spécifie
aussi les codages binaires pour ces valeurs, en utilisant la notation de contrôle de codage ASN.1 (voir la
Rec. UIT-T X.692 | ISO/CEI 8825-3).
NOTE – Ces codages sont appelés documents Fast Infoset.
La présente Recommandation | Norme internationale spécifie aussi des techniques qui:
– minimisent la taille des documents Fast Infoset;
– maximisent la vitesse de création et de traitement des documents Fast Infoset;
– permettent la spécification (grâce au générateur d'un document Fast Infoset) de données de traitement
supplémentaire.
Les deux premières techniques impliquent l'utilisation de tableaux de vocabulaire conceptuel. L'ensemble des tableaux
de vocabulaire et la nature de leurs entrées est défini de façon complète dans la présente Recommandation | Norme
internationale, mais leur représentation dans les mémoires d'ordinateurs est en dehors du domaine d'application de la
présente Recommandation | Norme internationale. Les dispositions pour le transfert ou le stockage, ou la notation
formelle de l'affichage ou la spécification des tableaux de vocabulaire à utiliser comme vocabulaire externe sont
également en dehors du domaine d'application de la présente Recommandation | Norme internationale.
La troisième technique implique la fourniture de données de traitement supplémentaire et d'un URI qui identifie la
forme et la sémantique de ces données. La spécification de formes particulières de données de traitement
supplémentaire et leur utilisation sont en dehors du domaine d'application de la présente Recommandation | Norme
internationale.
Les URI peuvent être utilisés pour identifier les vocabulaires finaux qui peuvent être utilisés comme tout ou partie d'un
nouveau vocabulaire initial, mais l'affectation d'URI spécifiques à des vocabulaires finaux particuliers est en dehors du
domaine d'application de la présente Recommandation | Norme internationale.
La présente Recommandation | Norme internationale spécifie des alphabets restreints prédéfinis, l'ajout par énumération
à des tableaux de vocabulaire d'autres alphabets restreints, et l'utilisation de ces tableaux de vocabulaire pour un codage
efficace des chaînes de caractères.
La présente Recommandation | Norme internationale spécifie aussi des algorithmes de codage prédéfinis pour le codage
optimal de certaines chaînes de caractères et l'ajout à des tableaux de vocabulaire d'autres algorithmes de codage
identifiés par des URI, mais la définition de ces autres algorithmes de codage et de leurs URI associés est en dehors du
domaine d'application de la présente Recommandation | Norme internationale.
De plus, la présente Recommandation | Norme internationale spécifie un type de support d'extensions de messagerie
Internet multiobjets (MIME, multipurpose Internet mail extensions) qui identifie un document Fast Infoset.
2 Références normatives
Les Recommandations | Normes internationales et autres références suivantes contiennent des dispositions qui, par suite
de la référence qui y est faite, constituent des dispositions valables pour la présente Recommandation | Norme
internationale. Au moment de la publication, les éditions indiquées étaient en vigueur. Toutes Recommandations,
Normes internationales et autres références sont sujettes à révision et les parties prenantes aux accords fondés sur la
présente Recommandation | Norme internationale sont invitées à rechercher la possibilité d'appliquer les éditions les
plus récentes des Recommandations | Normes internationales et autres références indiquées ci-après. Le Bureau de la
normalisation des télécommunications de l'UIT tient à jour une liste des Recommandations de l'UIT-T en vigueur. Les
membres de la CEI et de l'ISO possèdent le registre des Normes internationales en vigueur. L'IETF tient à jour une liste
des RFC, ainsi que de celles qui ont été rendues obsolètes par des RFC plus récents. Le W3C tient à jour la liste des
Rec. UIT-T X.891 (05/2005) 1
---------------------- Page: 8 ----------------------
ISO/CEI 24824-1:2007 (F)
spécifications du W3C en vigueur. La référence à un document figurant dans la présente Recommandation | Norme
internationale ne donne pas à ce document, en tant que tel, le statut d'une Recommandation ou Norme internationale.
2.1 Recommandations | Normes internationales identiques
– Recommandation UIT-T X.667 (2004) | ISO/CEI 9834-8:2005, Technologies de l'information –
Interconnexion des systèmes ouverts – Procédures opérationnelles des organismes d'enregistrement de
l'OSI: génération et enregistrement des identificateurs uniques universels (UUID) et utilisation de ces
identificateurs comme composants d'identificateurs d'objet ASN.1.
– Recommandation UIT-T X.680 (2002) | ISO/CEI 8824-1:2002, Technologies de l'information – Notation
de syntaxe abstraite numéro un: spécification de la notation de base.
– Recommandation UIT-T X.681 (2002) | ISO/CEI 8824-2:2002, Technologies de l'information – Notation
de syntaxe abstraite numéro un: spécification des objets informationnels. †
– Recommandation UIT-T X.682 (2002) | ISO/CEI 8824-3:2002, Technologies de l'information – Notation
de syntaxe abstraite numéro un: spécification des contraintes. †
– Recommandation UIT-T X.683 (2002) | ISO/CEI 8824-4:2002, Technologies de l'information – Notation
de syntaxe abstraite numéro un: paramétrage des spécifications de la notation de syntaxe abstraite
numéro un. †
– Recommandation UIT-T X.690 (2002) | ISO/CEI 8825-1:2002, Technologies de l'information – Règles
de codage ASN.1: spécification des règles de codage de base, des règles de codage canoniques et des
règles de codage distinctives. †
– Recommandation UIT-T X.691 (2002) | ISO/CEI 8825-2:2002, Technologies de l'information – Règles
de codage ASN.1: spécification des règles de codage compact (PER). †
– Recommandation UIT-T X.692 (2002) | ISO/CEI 8825-3:2002, Technologies de l'information – Règles
de codage ASN.1: notation de contrôle de codage (ECN).
– Recommandation UIT-T X.693 (2001) | ISO/CEI 8825-4:2002, Technologies de l'information – Règles
de codage ASN.1: règles de codage XML (XER). †
NOTE – L'ensemble complet des Recommandations | Normes internationales sur l'ASN.1 est énuméré ci-dessus, car
toutes peuvent être applicables dans des utilisations particulières de la présente Recommandation | Norme
internationale. Lorsqu'elles ne sont pas directement référencées dans le corps de la présente Recommandation | Norme
internationale, un symbole † est ajouté à la référence.
2.2 Références supplémentaires
– ISO 8601:2004, Eléments de données et formats d'échange – Echange d'informations – Représentation
de la date et de l'heure.
– ISO/CEI 10646:2003, Technologies de
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.