onState ::= 4 NumbOfMess :: = INTEGER (0..100) BusyChannelState ::= SEQUENCE {{busy}, NumbOfMess} Here a value of the type BusyChannelState tells how many messages are still linger- ing in an active channel, waiting to be delivered. The type assignment is expressed as a sequence of a value, {busy}, and a type, NumbOfMess. The expression {busy} in the previous example is the way values are described in ASN.1. Values can also be represented as bitstrings, character strings, etc. For example, a value of XXX ::= BITSTRING SIZE (8) can be represented in a bitstring notation: {'11010001'B} The same value could also be given in hexadecimal notation as: {'D1'H} A value of YYY ::= INTEGER can be represented as: {232591} A value of lastName Name :: IA5String (IA5String is a defined type in ASN.1) can be represented as: {lastName "Muth"} A value of FullName ::= SEQUENCE {firstName Name, lastName Name} Name IA5String Appendix 2: Naming and Data Typing in AML can be represented as: {firstName "Thomas", lastName "Muth"}, and SO on. A structured type may include elements that are not always given a value. The interpretation of a missing value may either be that it just does not exist - it is OPTIONAL - or that, if it is missing, a DEFAULT value should be used instead. This implies that if a type is declared as DEFAULT, it cannot also be declared OPTIONAL, and vice versa. The following is an example (VisibleString is an ASN. defined type): EmplRecord1 ::= SEQUENCE {name VisibleString, title VisibleString OPTIONAL, EmplCat DEFAULT level4, dateOfHire Date} EmplCat ::= INTEGER (0..6) level4 EmplCat 4 Date ::= SEQUENCE {Day, {"-"}, Month, {"-"}, Year} Day ::= INTEGER (0..31) Month ::= INTEGER (1..12) Year ::= INTEGER (1900..<MAX) The implications of this assignment, when a value of this type is sent in a message, is that the message may not contain any value for title and EmplCat. The receiver shall interpret that as "the employee has no title", and that "the employee belongs to the employee category level4". The use of OPTIONAL and