Contents
1982 - The beginnings 1984 - The first ITU-T ASN.1 Standard 1984 onward - Use in OSI Standards and in telecommunications 1986 - The first ISO ASN.1 Standard 1988 - ASN.1 recognised as independent from X.400 1988 - Trouble looms for the Macro Notation 1988 - The emergence of tool-vendors 1990 - A new ISO version 1990 - The first ASN.1 book 1994 - ASN.1 structured as we now know it! 1984 - Controversy begins! 1998 - Another new version of ASN.1 1999 - Work on the Encoding Control Notation begins 1999/2000 The Dubuisson and Larmouth books 2000 Standards activity October - ECN submitted for FCD ballot December - New work on support for XML Work in progress at end of year 2000 2001 standards activity Activity during the year Work in progress at end 2001 2002 standards activity Completion of three major pieces of work The 2002 version Work done during the year Withdrawal of X.208 and X.209 Work added on Registration Authority standards and on UUIDs Work added on ISO 8601 time types Work in progress at end 2002 2003 standards activity Work during the year Fast Web Services work added UML profile work added Work in progress at end 2003 2003 tool announcements
This page records some of the events in the development of ASN.1.
Contributions are solicited to info@asn1.org to add important events that have been omitted, to notify new events related to ASN.1, and to correct any errors in this page. Contributions are also solicited on the finalization of any major standards that use ASN.1. (Such information is not currently present.)
The early part of the page is now history, and the events and their importance are recorded with the benefit of hindsight.
For those looking for more recent news, activity during 2003 is recorded at the end.
1982 - The beginnings
Initial work in CCITT, based on the Xerox Courier Protocol (introduced into CCITT by Jim White) was introduced into ISO, and collaborative work began.
The name ASN1 was proposed, but frequently mi-read or mi-typed as ANSI - the American National Standards Institute.
The name ASN.1 was agreed to avoid confusion.
1984 - The first ITU-T ASN.1 Standard
X.409, part of the X.400 series, and only a few tens of pages thick (current ASN.1 specs are a several hundred pages thick!) was approved by CCITT. Editor Doug Steedman. ITU-T Rapporteur Jim White.
The X.400 series was the first major user of ASN.1.
This contained the basic ASN.1 notation and what is now known as the Basic Encoding Rules intertwined paragraph by paragraph. Each piece of notation was immediately followed by its encoding in BER. Very readable!
It also contained the first text for the Macro Notation - added at the last minute to provide the ability to specify selective encryption of an ASN.1 field, but very general, and very obscure!
1984 onward - Use in OSI Standards and in telecommunications
ASN.1 becomes the notation-of-choice for the specification of OSI Application Layer Standards and of some parts of low-level telecommunications standards.
1986 - The first ISO ASN.1 Standard
ISO approved ISO/IEC 8824 and ISO/IEC 8825, based on X.409, but with a number of additional features, notably Object Identifiers. The text for the macro notation was completely re-written. Editor John Larmouth.
This was the first separation of the encoding rules from the notation. X.409 was torn apart, with 8824 defining only notation, and 8825 defining the encodings of the values that were defined by the notation.
1988 - ASN.1 recognised as independent from X.400
The ITU-T Recommendations X.208 and X.209 were approved (Editor John Larmouth). These were part of the general X.200 series that contained the Recommendations relevant to all aspects of OSI development.
Some additional functionality was added beyond the 1986 OSI version.
This version became widely adopted, and is still referenced today.
The first version of the Directory (X.500 series) was also approved in 1988, the second major user of ASN.1, and best known today for X.509, the standard for digital Certificates.
1988 - Trouble looms for the Macro Notation
ISO/IEC JTC1/SC16 noted that there were major ambiguities in the ASN.1 value notation (and obscurity) and resolved that no new macros were to be written, recommending that the ASN.1 group either clarify or replace the Macro Notation.
1988 - The emergence of tool-vendors
OSS (later to become OSS-Nokalva) was founded by Bancroft Scott with the sole product-line of ASN.1 tools.
Many other tool vendors developed over the next decade or so (see the list of Consortium members for a (not exhaustive) list of current ASN.1 tool vendors.
1990 - A new ISO version
A new version of 8824 and 8825 was produced, with the same functionality as the CCITT 1988 version, but mending some bugs in obscure areas of the notation. (Largely the same text, but terms such as "or derived by tagging" were generally replaced with "or derived by tagging or subtyping".) Editor John Larmouth. Rapporteur Grenville Taylor.
1990 - The first ASN.1 book
Doug Steedman's "ASN.1 The Tutorial and Reference", was published by Technology Appraisals Ltd.
1994 - ASN.1 structured as we now know it!
The 1994 version of ASN.1 was long in gestation. It was published (more or less) simultaneously by ITU-T and ISO as completely identical texts. (The first identical texts to be produced.) The Editor was Bancroft Scott. Rapporteur John Larmouth.
It introduced several new features:
- The macro notation was removed!, and replaced by the Information Object Class concepts and syntax.
- The Packed Encoding Rules were standardised, after several false starts.
- Additional constraint notations were added.
- Parameterisation of the notation was added.
- The ISO Standards became multi-part, and the old CCITT X.208 and X.209 mirrored the ISO multi-part standards as a new ITU-T X.680 and X.690 series.
The new document structure was as follows:
- ITU-T Rec. X.680 | ISO/IEC 8824-1 was the old ASN.1 notation from X.208 and ISO/IEC 8824 (revised by minor additions, but with removal of ANY and of the Macro Notation).
- ITU-T Rec. X.681 | ISO/IEC 8824-2 was the Macro Notation replacement (Information Object Classes).
- ITU-T Rec. X.680 | ISO/IEC 8824-1 was the additional constraint notations.
- ITU-T Rec. X.680 | ISO/IEC 8824-1 was the new notation for parameterisation of ASN.1 specifications.
- ITU-T Rec. X.690 | ISO/IEC 8825-1 was the (unchanged) old ASN.1 Basic Encoding Rules specifications, with the addition of specifications for the canonical CER and DER.
- ITU-T Rec. X.691 | ISO/IEC 8825-2 was the new Packed Encoding Rule specifications.
1984 - Controversy begins!
It is normal for a new version of an ISO Standard (or an ITU-T Recommendation) to completely replace the previous version (immediately) in the offerings for sale by ISO (and by ITU-T).
However, it was recognised that, whilst the Information Object Class replacement for the Macro Notation could be used to replace the old Macro Notation with no change to the bits-on-the-line, it might take time for standards using ASN.1 to be changed.
It was therefore agreed that ISO/IEC 8824 and 8825 (1990) and CCITT X.208 and X.209 would remain available for a limited period (probably about four years).
There were those that said the 1994 version should have been called ASN.2, because of the withdrawal of the Macro Notation, but that notation had so many flaws in it, that nobody that understood the issues wanted to give it any credence or a longer life.
But it was not until 2003 that the old X.208, X.209, and the 1990 ISO/IEC 8824 and 8825 were finally withdrawn (ceased to be International Standards or ITU-T Recommendations, and ceased to be available for purchase).
It is, however, still the case today that in the Internet community, there are groups that insist on use of the 1988 notation, even in new specifications.
1998 - Another new version of ASN.1
The 1998 version contained little of importance. It was largely a bug-fixing revision. The Editor was Bancroft Scott. The Rapporteur was John Larmouth.
1999 - Work on the Encoding Control Notation begins
The Encoding Control Notation was intended to allow the abstract syntax of a legacy protocol to be specified in normal ASN.1 notation, and for an additional specification of an Encoding Definition Module and an Encoding Link Module to be added to specify formally the original bits-on-the-line.
This was an ambitious project, first proposed by Frank Schramm (Siemens) and Colin Wilcock (Nokia). It involved developing a model of all possible (!) ways of encoding abstract values, and providing a notation to say which was being used.
The resulting text (ITU-T X.692 | ISO/IEC 8825-3) was more than half the size of all the other parts of 8824 and 8825 put together!
1999/2000 The Dubuisson and Larmouth books
href = "../books/index.htm">Tutorial texts giving full coverage of the 1988 version of ASN.1 were published within a few weeks of each other, the first in French (later translated into English) and the second in English.
2000 Standards activity
October - ECN submitted for FCD ballot
Ballot comments suggested an extension to the work to provide better support for bounds testing, and the open type.
December - New work on support for XML
A New Work Item proposal to ISO for work on XML support in ASN.1 (to become the XML Encoding Rules - XER) was approved.
Work in progress at end of year 2000
The following work was part of the ASN.1 program of work at the end of 2000:
- A new standard for Encoding Control Notation.
- A new standard for XML Encoding Rules.
2001 standards activity
Activity during the year
The January meeting in Geneva saw the beginnings of serious discussion of the XML Encoding Rules (XER), and was seminal in determining the form of these. Work was also beginning on the new version of the ASN.1 standards planned to be finished for approval during 2002.
This meeting also saw Paul Thorpe taking over as Editor and the establishment of an ITU-T "ASN.1 Project", with Olivier Dubuisson as the Project Leader.
An exhaustive series of meetings in 2001 was planned in order to finalise the ECN text for ITU-T approval, and to make further progress on XER. Most of this work matured by the end of April after meetings in Manchester and Los Angeles, with ISO ballots during the summer ready for ITU-T approval in the Autumn. Version brackets and version numbers were introduced into the ASN.1 notation as part of the ECN work.
The Los Angeles meeting in April saw a decision to provide a mapping from XSD into ASN.1, and the beginnings of a recognition that this would mean the introduction of the Encoding Instruction concept, and of what became known as EXTENDED-XER, with recognition that the original XER (ignoring encoding instructions) should be called BASIC-XER.
The Bangalore meeting in September did further work on ECN (the new X.692 | 8825-3), but it was still not ready for ITU-T approval, and a further meeting was planned for Paris in November to produce final text. A draft of the intended ECN amendment was produced.
Similarly, the text for XER (the new X.693 | 8825-4) was not quite ready.
After a meeting in Orlando in October (which concentrated mainly on XER) and the final meeting of the year in Paris in November (concentrating mainly on ECN), both documents went for final ITU-T approval. Work continued on the production of the 2002 version of ASN.1.
Work in progress at end 2001
The following work was part of the ASN.1 program of work at the end of 2001:
- The Encoding Control Notation base standard (under final ITU-T ballot).
- The XML Encoding Rules base standard (under final ITU-T ballot).
- Preparation of a 2002 version of all parts of the ASN.1 standards. (under ISO ballot).
- An amendment to the Encoding Control Notation to extend its functionality, particularly in relation to open types and the testing of bounds.
- Substantial amendments to the base notation to introduce the concept of Encoding Instructions.
- A substantial amendment to the XER standard to define XML Encoding Instructions and the EXTENDED-XER encoding rules.
- A new standard specifying the mapping from an XSD specification to an ASN.1 specification (with XML Encoding Instructions) such that the XML documents defined by the ASN.1 specification (with EXTENDED-XER) would be the same as those defined by the XSD specification.
2002 standards activity
Completion of three major pieces of work
This saw the final approval of the ECN text, the XER text, and the 2002 version of all other parts of the ASN.1 standards, all in the early part of the year.
The 2002 version made a lot of changes to all parts of ASN.1, but the majority were simply improvements in clarity, or minor items needed to support the ECN and XER work. Almost concurrent with publication of the ECN and XER standards, we saw the first ECN and XER tools emerge.
The resources section of these pages contain a number of presentations and papers on ECN and XER.
The 2002 version
The 2002 version consisted of:
- ITU-T Rec. X.680 | ISO/IEC 8824-1 was the old ASN.1 notation, but with XML Value Notation and version brackets and numbering added.
- ITU-T Rec. X.681 | ISO/IEC 8824-2 was Information Object Classes (minor changes only).
- ITU-T Rec. X.680 | ISO/IEC 8824-1 was the Constraint Specifications (minor changes only).
- ITU-T Rec. X.680 | ISO/IEC 8824-1 was Parameterisation (minor changes only).
- ITU-T Rec. X.690 | ISO/IEC 8825-1 was the ASN.1 Basic Encoding Rules (and CER and DER specifications (minor changes only).
- ITU-T Rec. X.691 | ISO/IEC 8825-2 was the Packed Encoding Rule specifications (minor changes only).
- ITU-T Rec. X.692 | ISO/IEC 8825-3 was the new Encoding Control Notation.
- ITU-T Rec. X.693 | ISO/IEC 8825-4 was the new XML Encoding Rules
Work done during the year
Intensive work continued during the year on the amendments to X.680 | 8824-1 and X.681 | 8824-1 to support Encoding Instructions for EXTENDED- XER, and on the (large) amendment to X.693 for EXTENDED-XER itself.
Work on X.694 | 8825-5 (the mapping from XSD to ASN.1) continued, but was largely on the back burner.
Withdrawal of X.208 and X.209
There was, finally, in the Spring of 2002, agreement by both ITU-T and ISO that X.208 and X.209 and the 1990 versions of 8824 and 8825 should be withdrawn, putting the old Macro Notation finally to rest.
Intensive discussions and liaisons began (again) to try to address any residual references to these old standards, and to specifications using the old notation. The ASN.1 Module database established by the ITU-T ASN.1 Project was extremely useful in identifying problem specifications.
Work added on Registration Authority standards and on UUIDs
Further new work was proposed for the ASN.1 group. This was to produce new versions of all the joint and ITU-T-only texts in the X.660 and X.670 series (some parts of ISO/IEC 9834 for joint texts). This was largely a tidying-up exercise, but involved a number of clarifications related to the OID tree and its use, and was essentially in response to the growing interest in ASN.1 Object Identifiers as shown by the number of entries in the OID Repository that had been established by Olivier Dubuisson under the ITU-T ASN.1 Project.
There was also a New Work Item proposal to add to the X.660 series (and to the ISO/IEC 9834 multi-part standard) a specification for the generation and registration of UUIDs (Universally Unique Identifiers), which were in heavy and increasing use, but were supported only by an Internet Draft.
Work added on ISO 8601 time types
It became clear in the progression of the mapping from XSD that the time types in ASN.1 (based on the very first version of ISO 8601) badly needed updating to support the various time types in XSD and the functionality of the latest ISO 8601 standard.
Work in progress at end 2002
The following work was part of the ASN.1 program of work at the end of 2002:
- An amendment to the Encoding Control Notation to extend its functionality, particularly in relation to open types and the testing of bounds.
- Substantial amendments to the base notation to introduce the concept of Encoding Instructions.
- A substantial amendment to the XER standard to define XML Encoding Instructions and the EXTENDED-XER encoding rules.
- A new standard specifying the mapping from an XSD specification to an ASN.1 specification (with XML Encoding Instructions) such that the XML documents defined by the ASN.1 specification (with EXTENDED-XER) would be the same as those defined by the XSD specification.
- Revision of the Registration Authority standards.
- A new Registration Authority standard for Universally Unique Identifiers.
- Work on time types.
2003 standards activity
Work during the year
This year saw a major concentration in the early part of the year on the completion of the amendments for EXTENDED-XER and on the new standard for the mapping from XSD, with ISO ballots during the summer.
This work received final ITU-T approval in December, and was under ISO FDAM ballot at the end of the year.
There was also work done to complete the revision of the X.660 series and initiate the necessary review in ISO. This was completed in time for ITU-T final ballot in December to produce the 2004 version of Registration Authority standards.
Work on the new UUID standard was completed, and issued for ISO CD ballot in December.
Work on a revised ECN amendment (considerably cut-down from the original amendment) was completed, and issued for ISO second FPDAM ballot in December.
The year ended with a lot of work in the final stages of balloting, with substantial (but immature) text for Fast Web Services (see below), and with work on time types and a UML ASN.1-profile still to be progressed.
Fast Web Services work added
In April 2003, a proposal was received from SUN Microsystems and OSS-Nokalva on work involving an ASN.1 specification of a SOAP wrapper and of an ASN.1 datatype for the XML Infoset. This was approved as a New Work Item in ISO and by ITU-T, and an extra meeting was called in June 2003 to discuss the precise direction of this work.
The work became known as "Fast Web Services", with the main aim of producing a new X.695 | 8825-6 which would specify the use of ASN.1 binary encodings to support Web Services with a higher transaction processing rate than was available with XML encodings of the SOAP wrapper and its contents.
There was also a proposal to provide a server-end Web Services interface for interrogation of the ASN.1 module database, established by the ITU-T ASN.1 Project, with commitment from a major tool vendor to provide client-end support for this Web Service. It was intended that, if established, this service would move to the use of the Fast Web Services protocols as they matured.
Work on X.695 | 8825-6 progressed throughout the year, with much text being produced and many problems resolved, but there was still much work to be done at year-end.
UML profile work added
ISO gave approval for preparatory work on a New Work Item for a "UML profile" for ASN.1, work which ITU-T had already decided to progress.
This would essentially provide a graphical syntax based on UML class diagrams for ASN.1 specifications.
However, no work was done on this during the year.
Work in progress at end 2003
The following work was part of the ASN.1 program of work at the end of 2003:
- An amendment to the Encoding Control Notation to extend its functionality, particularly in relation to open types and the testing of bounds. (Under ISO second FPDAM ballot).
- Substantial amendments to the base notation to introduce the concept of Encoding Instructions. (Approved and under final ISO FDAM ballots).
- A substantial amendment to the XER standard to define XML Encoding Instructions and the EXTENDED-XER encoding rules. (Approved and under final ISO FDAM ballot).
- A new standard specifying the mapping from an XSD specification to an ASN.1 specification (with XML Encoding Instructions) such that the XML documents defined by the ASN.1 specification (with EXTENDED-XER) would be the same as those defined by the XSD specification. (Under ITU-T final ballot).
- Revision of the Registration Authority standards. (Under ITU-T final ballot).
- A new Registration Authority standard for Universally Unique Identifiers. (Under ISO CD ballot).
- Work on time types.
- Work on Fast Web services.
- Work on a UML ASN.1 profile.
2003 tool announcements
2003 saw almost all vendors of ASN.1 tools announcing modification of their tools, or new tools, implementing some or all of the ASN.1 support for XML. A summary of these announcements is given in Integration of ASN.1 and XML Technologies.
|