ASN.1 (Abstract Syntax Notation (version) 1) is more a notation than a
programming language, specifically for formally defining datatypes.
In common with XML it treats datatypes from a hierarchical
perspective.
A thorough treatment of ASN.1 terminology is found here:
[Abstract Syntax Notation One (ASN.1): Specification of basic notation]
http://www.itu.int/ITU-T/studygroups/com10/languages/X.680_1297.pdf
A number of the words used in the Question have technical meanings
within the ASN.1 language. For example, a "sequence" is a particular
way of defining a new datatype from others. In a "sequence" one has a
fixed number of components (some of which may be "optional") which
taken together in a defined order make up an instance of the new
datatype. To a VB programmer a close synonym might be "user-defined
datatype", and to a C programmer a "struct" would carry much the same
meaning.
Here I would hazard the guess that the assignment is to define a
datatype called DaysOfWeek which contains a VisibleString as one
component (e.g. the name of the weekday), with possibly other elements
(e.g. an integer to designate the ordinal values 0-6 or 1-7
corresponding to the named days of the week).
A module is an organizational unit within whose scope the definitions
(or "productions") given can freely reference one another (forwards
and backwards), thereby enabling truly recursive definitions of
datatypes.
It doesn't sound as if this assignment calls for anything very
elaborate. A "simple datatype" (or simple type) is one defined "by
directly specifying the set of its values". A sequence type, by
comparison, is defined by specifying the fixed order of appearance of
its component types. Confusingly, a sequence-of type exists which
embodies the notion of a "series" of zero or more items from a single
component type, a concept that might more readily be called a "list"
in conversation with non-ASN.1 devotees.
Unlike XML the ASN.1 approach embraces a "packed" binary format for
efficient transmission of data, in addition to human-readable text
formats.
regards, mathtalk-ga |