demRepCnf(ASPid, valueSet) Abotrantount Abotractounta ENCmess Abstract cuntax Abstract syntax ASPid reference SDUs of ENCmessages Fig. 5.27 Abstract syntaxes guide the encoding process Abstract syntaxes must be defined and made available to the ENC for each ASP. The identity of an abstract syntax is called by OSI abstract syntax name. For operation-oriented applications, it is equivalent to an ASP identifier (ASPid, see the message specification in Fig. 5.26). The reason that abstract syntaxes must be defined is that the OSI-ENC (i.e. the presentation layer) knows nothing about operations and ASPs. It provides a general service that must also be usable for application units that do not define operations and ASPs. To create an abstract syn- tax therefore implies expanding the ANY DEFINED BY clause in the message specification for each ASPid of the abstract protocol. Figure 5.28 exemplifies this transformation for the abstract service primitive chAddrRequest (OPid=5, Prim- Type=0). ASPid is {5,0} SEQUENCE{ INTEGER (0..63), Globlnvld Abstract syntax name SEQUENCE(INTEGER (0..63), ENUMERATE (0..9)}, PrimType SEQUENCE{INTEGER (000101..991231), Person CHOICE{ [0] IA5String Size (6), PostCode [1] IA5String Size (20) StreetName [2] NumericString Size (10)}} StreetNumb Fig. 5.28 An abstract syntax 5 Protocol Network Modelling The FOH can request the creation of an ENC message that carries an instance of the chAddrRequest ASP only by referring the ASPid (i.e. the identity of the corre- sponding abstract syntax,) and delivering values in local representation. Figure 5.29 shows an example. ASPid ValueSet in local representation gemOrd({5, 0, 17, 5, 0, 400805, 0, "H2X3R4"}) PostCode CHOICE tag Person PrimType Globlnvld Fig. 5.29 An instance of an ASP The ENC must have access to an encoding algorithm for each data type that can occur in an abstract syntax. A set of such algorithms are normally defined for each set of data types. For example, OSI defines BER as such a set of encoding algo- rithms, suitable for encoding ASN.1 da