(* $Workfile:   p2.tpl  $ $Revision:   3.12  $ *)
(* P2.TPL *)
(*****************************************************************************)
(* ASN.1 P2 DATA-TYPE TEMPLATE                                               *)
(*                                                                           *)
(* - Defines:                                                                *)
(*    - IP Message User APDU                                                 *)
(*    - IP Status Report APDU                                                *)
(*                                                                           *)
(*****************************************************************************)


InformationObject          LABEL     = 2apdu
                           STRUCTURE = CHOICE
                           CHILDREN  = { <2ipdu, C  0 C,O,0>,
                                         <2srdu, C  1 C,O,0> }

InformationObjectP2        LABEL     = 2apd2
                           STRUCTURE = CHOICE
                           CHILDREN  = { <2ipd2, C  0 C,O,0>,
                                         <2srd2, C  1 C,O,0> }


(*****************************************************************************)
(* IP Message                                                                *)
(*****************************************************************************)

IPM                        LABEL     = 2ipdu
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2ihed, U 17 C,M,0>,
                                         <2ibdy, U 16 C,M,0> }

IPMP2                      LABEL     = 2ipd2
                           STRUCTURE = SEQUENCE
                           TAG       = (C  0 C)
                           CHILDREN  = { <2ihed, U 17 C,M,0>,
                                         <2ibd2, U 16 C,M,0> }

IPMP2                      LABEL     = 2rip2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2ihed, U 17 C,M,0>,
                                         <2ibd2, U 16 C,M,0> }

ForwardedIPM               LABEL     = 2fpdu
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2ihed, U 17 C,M,0>,
                                         <2ibdy, U 16 C,M,0> }

ForwardedIPMP2             LABEL     = 2fpd2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2ihed, U 17 C,M,0>,
                                         <2ibd2, U 16 C,M,0> }

(*****************************************************************************)
(* IP Message - HEADING                                                      *)
(*****************************************************************************)

IPMessageHeading           LABEL     = 2ihed
                           STRUCTURE = SET
                           CHILDREN  = { <2ipid, A 11 C,M,0>,
                                         <2ords, C  0 C,O,0>,
                                         <2auth, C  1 C,O,0>,
                                         <2prir, C  2 C,D,0>,
                                         <2cpyr, C  3 C,D,0>,
                                         <2bldr, C  4 C,O,0>,
                                         <2inrp, C  5 C,O,0>,
                                         <2obsl, C  6 C,D,0>,
                                         <2xref, C  7 C,D,0>,
                                         <2subj, C  8 C,O,0>,
                                         <2expd, C  9 P,O,0>,
                                         <2rpby, C 10 P,O,0>,
                                         <2rpto, C 11 C,O,0>,
                                         <2impt, C 12 P,D,0>,
                                         <2sens, C 13 P,O,0>,
                                         <2afwd, C 14 P,D,0>,
                                         <2extn, C 15 C,D,0> }

Extensions Field           LABEL     = 2extn
                           STRUCTURE = SET OF
                           CHILDREN  = { <2hext, U 16 C,O,0> }

(*****************************************************************************)
(* There are no extensions defined yet - so don't encode any !               *)
(*****************************************************************************)
Heading Extension          LABEL     = 2hext
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2deft, U 6 P,M,0>*,
                                         <2adby, U 0 P,D,0>  }

Defining type              LABEL     = 2deft
                           STRUCTURE = OBJECT IDENTIFIER

Extension Value            LABEL     = 2adby
                           STRUCTURE = ANY DEFINED BY
                           DEFGLABEL = 2deft
                           REGISTER  = { <{2 6 1 5 0},       2null, U  5 P,0> ,
                                         <{2 6 1 5 1},       2lngs, U 17 C,0> ,
                                         <{1 3 26 0 4406 0 2 0 },Zppre,U 2P,0>,
                                         <{1 3 26 0 4406 0 2 1 },Zcpre,U 2P,0>,
                                         <{1 3 26 0 4406 0 2 2 },Zmsty,U17C,0>,
                                         <{1 3 26 0 4406 0 2 3 },Zadli,U16C,0>,
                                         <{1 3 26 0 4406 0 2 4 },Zexea,U16C,0>,
                                         <{1 3 26 0 4406 0 2 5 },Zexai,U23P,0>,
                                         <{1 3 26 0 4406 0 2 6 },Zdisc,U17C,0>,
                                         <{1 3 26 0 4406 0 2 7 },Zhain,U16C,0>,
                                         <{1 3 26 0 4406 0 2 8 },Zmsgs,U16C,0>,
                                         <{1 3 26 0 4406 0 2 9 },Zcome,U 2P,0>,
                                         <{1 3 26 0 4406 0 2 10},Zoref,U19S,0>,
                                         <{1 3 26 0 4406 0 2 11},Zorin,U16C,0>,
                                         <{1 3 26 0 4406 0 2 12},Zpifi,U16C,0>,
                                         <{1 3 26 0 4406 0 2 13},Zamid,U19S,0>,
                                         <{1 3 26 0 4406 0 2 14},Zorpl,U19S,0>}

Null                       LABEL     = 2null
                           STRUCTURE = NULL

Languages                  LABEL     = 2lngs
                           STRUCTURE = SET OF
                           CHILDREN  = { <2lang, U 19 P,O,2> }

Language                   LABEL     = 2lang
                           STRUCTURE = PRINTABLE STRING

IPMIdentifier              LABEL     = 2ipid
                           STRUCTURE = SET
                           TAG       = (A 11 C)
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2urid, U 19 P,M,64> }

LocalIPMIdentifier         LABEL     = 2urid
                           STRUCTURE = PRINTABLE STRING

ORDescriptor               LABEL     = 2ords
                           STRUCTURE = SET
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2ffnm, C  0 P,O,64>,
                                         <2teln, C  1 P,O,32> }

FreeFormName               LABEL     = 2ffnm
                           STRUCTURE = TELETEX STRING

TelephoneNumber            LABEL     = 2teln
                           STRUCTURE = PRINTABLE STRING

AuthorisingUsers           LABEL     = 2auth
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2aord, U 17 C,O,0> }

AuthorisingUser            LABEL     = 2aord
                           STRUCTURE = SET
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2ffnm, C  0 P,O,64>,
                                         <2teln, C  1 P,O,32> }

Primary Recipient          LABEL     = 2rcip
                           STRUCTURE = SET
                           CHILDREN  = { <2ords, C  0 C,M,0>,
                                         <2repr, C  1 P,D,0>,
                                         <2rpyr, C  2 P,D,0>,
                                         <2reex, C  3 C,O,0> }

PrimaryRecipients          LABEL     = 2prir
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2rcip, U 17 C,O,0> }

CopyRecipients             LABEL     = 2cpyr
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2ccip, U 17 C,O,0> }

Copy Recipient             LABEL     = 2ccip
                           STRUCTURE = SET
                           CHILDREN  = { <2ords, C  0 C,M,0>,
                                         <2repr  C  1 P,D,0>,
                                         <2rpyr, C  2 P,D,0>,
                                         <2reex, C  3 C,O,0> }

BlindCopyRecipients        LABEL     = 2bldr
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2bcip, U 17 C,O,0> }

BlindCopy Recipient        LABEL     = 2bcip
                           STRUCTURE = SET
                           CHILDREN  = { <2ords, C  0 C,M,0>,
                                         <2repr  C  1 P,D,0>,
                                         <2rpyr, C  2 P,D,0>,
                                         <2reex, C  3 C,O,0> }

RecipientExtensionsField   LABEL     = 2reex
                           STRUCTURE = SET OF
                           CHILDREN  = { <2rext, U 16 C,O,0> }

Recipient Extensions       LABEL     = 2rext
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2reft, U 6 P,M,0>*,
                                         <2rdby, U 0 P,D,0>  }

Defining type              LABEL     = 2reft
                           STRUCTURE = OBJECT IDENTIFIER

Extension Value            LABEL     = 2rdby
                           STRUCTURE = ANY DEFINED BY
                           DEFGLABEL = 2reft
                           REGISTER  = { <{1 3 26 0 4406 0 2 15},Zanrq,U3S,0> }

InReplyTo                  LABEL     = 2inrp
                           STRUCTURE = SET
                           TAG       = (A 11 C)
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2urid, U 19 P,M,64> }

Obsoletes                  LABEL     = 2obsl
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2ipob, A 11 C,O,0> }

ObseletedIPMID             LABEL     = 2ipob
                           STRUCTURE = SET
                           TAG       = (A 11 C)
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2urid, U 19 P,M,64> }

CrossReferences            LABEL     = 2xref
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2ipxr, A 11 C,O,0> }

RelatedIPMID               LABEL     = 2ipxr
                           STRUCTURE = SET
                           TAG       = (A 11 C)
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2urid, U 19 P,M,64> }

Subject                    LABEL     = 2subj
                           STRUCTURE = TAG
                           TAG       = (C 8 C)
                           CHILDREN  = { <2texs, U 20 S,O,128> }

ExpiryDate                 LABEL     = 2expd
                           STRUCTURE = UTC TIME

ReplyBy                    LABEL     = 2rpby
                           STRUCTURE = UTC TIME

ReportRequest              LABEL     = 2repr
                           STRUCTURE = BITSTRING

ReplyRequest               LABEL     = 2rpyr
                           STRUCTURE = BOOLEAN

ReplyToUsers               LABEL     = 2rpto
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2rtus, U 17 C,O,0> }

ORDescriptor               LABEL     = 2rtus
                           STRUCTURE = SET
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2ffnm, C  0 P,O,64>,
                                         <2teln, C  1 P,O,32> }

Importance                 LABEL     = 2impt
                           STRUCTURE = ENUMERATED

Sensitivity                LABEL     = 2sens
                           STRUCTURE = ENUMERATED

Autoforwarded              LABEL     = 2afwd
                           STRUCTURE = BOOLEAN

(*****************************************************************************)
(* IP Message User APDU - BODY                                               *)
(*****************************************************************************)

IPMessageBody              LABEL     = 2ibdy
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2bdyp, U  0 P,O,0> }

IPMessageBodyP2            LABEL     = 2ibd2
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2bdy2, U  0 P,O,0> }

IPMessageBodySeqOfAny      LABEL     = 2ibds
                           STRUCTURE = SEQUENCE OF
                           LIMIT     = 32767
                           CHILDREN  = { <2ibda, U  0 P,O,0>  }

IPMBodyAny                 LABEL     = 2ibda
                           STRUCTURE = ANY
                           CHILDREN  = {}

(*****************************************************************************)
(* Body parts 1 & 10 are 84 P2 only !                                        *)
(*****************************************************************************)
BodyPart                   LABEL     = 2bdyp
                           STRUCTURE = CHOICE
                           CHILDREN  = { <2ia5t, C  0 C,O,0>,
                                         <2tlxb, C  1 C,O,0>,
                                         <2voic, C  2 C,O,0>,
                                         <2g3fx, C  3 C,O,0>,
                                         <2g4c1, C  4 C,O,0>,
                                         <2ttxb, C  5 C,O,0>,
                                         <2vidt, C  6 C,O,0>,
                                         <2natd, C  7 C,O,0>,
                                         <2encr, C  8 C,O,0>,
                                         <2msgb, C  9 C,O,0>,
                                         <2sfdb, C 10 C,O,0>,
                                         <2mixd, C 11 C,O,0>,
                                         <2bild, C 14 S,O,0>,
                                         <2edef, C 15 C,O,0> }

BodyPartP2                 LABEL     = 2bdy2
                           STRUCTURE = CHOICE
                           CHILDREN  = { <2ia52, C  0 C,O,0>,
                                         <2tlxb, C  1 C,O,0>,
                                         <2voi2, C  2 C,O,0>,
                                         <2g3f2, C  3 C,O,0>,
                                         <2g4c2, C  4 C,O,0>,
                                         <2ttx2, C  5 C,O,0>,
                                         <2vid2, C  6 C,O,0>,
                                         <2nat2, C  7 C,O,0>,
                                         <2enc2, C  8 C,O,0>,
                                         <2msg2, C  9 C,O,0>,
                                         <2sfdb, C 10 C,O,0>,
                                         <2mix2, C 11 C,O,0>,
                                         <2bild, C 14 S,O,0>,
                                         <2ede2, C 15 C,O,0> }

IA5Text                    LABEL     = 2ia5t
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2ia5p, U 17 C,M,0>,
                                         <Cia5s, U 22 S,M,0> }

IA5TextP2                  LABEL     = 2ia52
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2pny2, U 0 P,M,0>,
                                         <2dny2, U 0 P,M,0> }

Ia5TextParams              LABEL     = 2ia5p
                           STRUCTURE = SET
                           CHILDREN  = { <2rept, C  0 P,D,0> }

Repertoire                 LABEL     = 2rept
                           STRUCTURE = ENUMERATED

TLX                        LABEL     = 2tlxb
                           STRUCTURE = ANY
                           TAG       = (C 1 C)
                           CHILDREN  = {}

Voice                      LABEL     = 2voic
                           STRUCTURE = ANY
                           TAG       = (C 2 C)
                           CHILDREN  = {}

VoiceP2                    LABEL     = 2voi2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2pny2, U 0 P,M,0>,
                                         <2dny2, U 0 P,M,0> }

G3Fax                      LABEL     = 2g3fx
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2g3pm, U 17 C,M,0>,
                                         <2g3dt, U 16 C,M,0> }

G3FaxP2                    LABEL     = 2g3f2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2pny2, U 0 P,M,0>,
                                         <2dny2, U 0 P,M,0> }

G3FacsimileParmeters       LABEL     = 2g3pm
                           STRUCTURE = SET
                           CHILDREN  = { <Cintg, C 0 P,O,0>,
                                         <Mg3nb, C 1 P,O,0> }

G3FacsimileData            LABEL     = 2g3dt
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <Cbits, C 3 P,O,0> }

G4Class1                   LABEL     = 2g4c1
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <2pele, U 0 P,O,0> }

G4Class1P2                 LABEL     = 2g4c2
                           STRUCTURE = TAG
                           TAG       = (C 4 C)
                           CHILDREN  = { <2dny2, U  0 P,M,0> }

Teletex                    LABEL     = 2ttxb
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2txpm, U 17 C,M,0>,
                                         <2txdt, U 16 C,M,0> }

TeletexP2                  LABEL     = 2ttx2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2pny2, U 0 P,M,0>,
                                         <2dny2, U 0 P,M,0> }

TeletexParameters          LABEL     = 2txpm
                           STRUCTURE = SET
                           CHILDREN  = { <Cintg, C 0 P,O,0>,
                                         <2txcp, C 1 P,D,0>,
                                         <Mtetx, C 2 C,O,0> }

TeletexData                LABEL     = 2txdt
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <Ctexs, U 20 P,O,0> }

TeletexCompatable          LABEL     = 2txcp
                           STRUCTURE = BOOLEAN

Videotex                   LABEL     = 2vidt
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2vpar, U 17 C,M,0>,
                                         <2vdat, U 21 P,M,0> }

VideotexP2                 LABEL     = 2vid2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2pny2, U 0 P,M,0>,
                                         <2dny2, U 0 P,M,0> }

VideotexData               LABEL     = 2vdat
                           STRUCTURE = VIDEOTEX STRING

VideotexParameters         LABEL     = 2vpar
                           STRUCTURE = SET
                           CHILDREN  = { <2vprm, C 0 P,O,0> }

VideoSyntaxParameter       LABEL     = 2vprm
                           STRUCTURE = INTEGER

NationallyDefined          LABEL     = 2natd
                           STRUCTURE = ANY
                           TAG       = (C 7 C)
                           CHILDREN  = {}

NationallyDefinedP2        LABEL     = 2nat2
                           STRUCTURE = TAG
                           TAG       = (C 7 C)
                           CHILDREN  = { <2dny2, U 0 P,M,0> }

EncryptedBodyPart          LABEL     = 2encr
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2enpm, U 17 C,M,0>,
                                         <2endt, U  3 P,M,0> }

EncryptedBodyPartP2        LABEL     = 2enc2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2pny2, U 0 P,M,0>,
                                         <2dny2, U 0 P,M,0> }

EncryptedParameters        LABEL     = 2enpm
                           STRUCTURE = ANY
                           TAG       = (U 17 C)
                           CHILDREN  = {}

EncryptedData              LABEL     = 2endt
                           STRUCTURE = BITSTRING

MessageBodyPart            LABEL     = 2msgb
                           STRUCTURE = SEQUENCE
                           TAG       = (C 9 C)
                           CHILDREN  = { <2mpar, U 17 C,M,0>,
                                         <2fpdu, U 16 C,M,0> }

MessageBodyPartP2          LABEL     = 2msg2
                           STRUCTURE = SEQUENCE
                           TAG       = (C 9 C)
                           CHILDREN  = { <2pny2, U 0 P,M,0>,
                                         <2dny2, U 0 P,M,0> }

MessageParameters          LABEL     = 2mpar
                           STRUCTURE = SET
                           CHILDREN  = { <3mdtm, C 0 P,O,0>,
                                         <3omdf, C 1 C,O,0> }

SFD                        LABEL     = 2sfdb
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <2pele, U 0 P,M,0> }

MixedModeBodyPart          LABEL     = 2mixd
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <2pele, U 0 P,M,0> }

MixedModeBodyPartP2        LABEL     = 2mix2
                           STRUCTURE = TAG
                           TAG       = (C 11 C)
                           CHILDREN  = { <2dny2, U 0 P,M,0> }

Bilaterally defined        LABEL     = 2bild
                           STRUCTURE = OCTET STRING

ExternallyDefinedBodyPart  LABEL     = 2edef
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2epar, C 0 C,O,0>,
                                         <2edat, U 8 C,M,0> }

ExternallyDefBodyPartP2    LABEL     = 2ede2
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2epa2, C 0 C,O,0>,
                                         <2eda2, U 8 C,M,0> }

ExternallyDefinedParams    LABEL     = 2epar
                           STRUCTURE = SEQUENCE
                           TAG       = (C 0 C)
                           CHILDREN  = { <2dref, U 6 P,M,0>,
                                         <2asn1, C 0 C,M,0> }

ExternallyDefinedParamsP2  LABEL     = 2epa2
                           STRUCTURE = SEQUENCE
                           TAG       = (C 0 C)
                           CHILDREN  = { <2poi2, U 6 P,M,0>,
                                         <2ptg2, C 0 C,M,0> }

ExtDefParamsAnyTag         LABEL     = 2ptg2
                           STRUCTURE = TAG
                           TAG       = (C 0 C)
                           CHILDREN  = { <2pny2, U 0 P,M,0> }

ExternallyDefinedData      LABEL     = 2edat
                           STRUCTURE = SEQUENCE
                           TAG       = (U 8 C)
                           CHILDREN  = { <2dref, U 6 P,M,0>,
                                         <2asn1, C 0 C,M,0> }

ExternallyDefinedDataP2    LABEL     = 2eda2
                           STRUCTURE = SEQUENCE
                           TAG       = (U 8 C)
                           CHILDREN  = { <2doi2, U 6 P,M,0>,
                                         <2dtg2, C 0 C,M,0> }

ExtDefDataAnyTag           LABEL     = 2dtg2
                           STRUCTURE = TAG
                           TAG       = (C 0 C)
                           CHILDREN  = { <2dny2, U 0 P,M,0> }

Direct Reference           LABEL     = 2dref
                           STRUCTURE = OBJECT IDENTIFIER

Direct Reference           LABEL     = 2poi2
                           STRUCTURE = OBJECT IDENTIFIER

Direct Reference           LABEL     = 2doi2
                           STRUCTURE = OBJECT IDENTIFIER

Single ASN.1 Type          LABEL     = 2asn1
                           STRUCTURE = ANY
                           TAG       = (C 0 C)
                           CHILDREN  = {}

ProtocolElement            LABEL     = 2pele
                           STRUCTURE = CHOICE
                           CHILDREN  = { <2txtu, C 3 C,O,0>,
                                         <2logd, C 5 C,O,0> }

TextUnit                   LABEL     = 2txtu
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2cpat, U 16 C,M,0>,
                                         <2txti, U  0 P,M,0> }

ContentPortionAttr         LABEL     = 2cpat
                           STRUCTURE = SET
                           CHILDREN  = {}

TextInformation            LABEL     = 2txti
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Ctexs, U 20 P,O,0> }

LogicalDescriptor          LABEL     = 2logd
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2lobt, U  2 P,M,0>,
                                         <2lgdb, U 17 C,M,0> }

LogicalObjectType          LABEL     = 2lobt
                           STRUCTURE = INTEGER

LogicalDescriptorBody      LABEL     = 2lgdb
                           STRUCTURE = SET
                           CHILDREN  = { <2pghd, C 3 P,O,0>,
                                         <2lytd, C 4 C,O,0>,
                                         <2prsd, C 5 C,O,0>,
                                         <2dfvs, C 6 C,O,0> }

PageHeading                LABEL     = 2pghd
                           STRUCTURE = TELETEX STRING

LayoutDirectives           LABEL     = 2lytd
                           STRUCTURE = SET
                           CHILDREN  = { <2offt, C 0 C,O,0>,
                                         <2offt, C 3 C,O,0> }

Offset                     LABEL     = 2offt
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Cintg, U 2 P,O,0> }

PresentationDirectives     LABEL     = 2prsd
                           STRUCTURE = SET
                           CHILDREN  = { <2algn, C 0 P,O,0>,
                                         <2gphr, C 1 C,O,0> }

Alignment                  LABEL     = 2algn
                           STRUCTURE = INTEGER

GraphicRendition           LABEL     = 2gphr
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <2gpha, U 2 P,M,0> }

GraphicRenditionAspect     LABEL     = 2gpha
                           STRUCTURE = INTEGER

LogicalDescriptor          LABEL     = 2dfvs
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2dfvl, U 0 P,M,0> }

DefaultValueList           LABEL     = 2dfvl
                           STRUCTURE = CHOICE
                           CHILDREN  = { <2para, C 1 C,M,0> }

ParagraphAttributes        LABEL     = 2para
                           STRUCTURE = SET
                           CHILDREN  = { <2lytd, C 0 C,M,0> }

AnyBodyParametersP2        LABEL     = 2pny2
                           STRUCTURE = ANY
                           CHILDREN  = {}

AnyBodyDataP2              LABEL     = 2dny2
                           STRUCTURE = ANY
                           CHILDREN  = {}

(*****************************************************************************)
(* IP Notification                                                           *)
(*****************************************************************************)

IPN                        LABEL     = 2srdu
                           STRUCTURE = SET
                           CHILDREN  = { <2rcho, C  0 C,M,0>,
                                         <2ipsb, A 11 C,M,0>,
                                         <2actr, C  1 C,O,0>,
                                         <2ntdr, C  2 C,O,0>,
                                         <2eits, A  5 C,O,0>,
                                         <2noex, C  3 C,O,0> }

IPNP2                      LABEL     = 2srd2
                           STRUCTURE = SET
                           CHILDREN  = { <2rch2, C  0 C,M,0>,
                                         <2ipsb, A 11 C,M,0>,
                                         <2actr, C  1 C,O,0>,
                                         <2ntdr, C  2 C,O,0>,
                                         <2eits, A  5 C,O,0>,
                                         <2noex, C  3 C,O,0> }

EncodedInformationTypes    LABEL     = 2eits
                           STRUCTURE = SET
                           CHILDREN  = { <Mbeit, C  0 P,M,32> ,
                                         <Mg3nb, C  1 P,D,0> D,
                                         <Mtetx, C  2 C,D,0> D,
                                         <Mg4c1, C  3 C,O,0> D,
                                         <Meeit, C  4 C,O,0> D }

IPMessageID                LABEL     = 2ipsb
                           STRUCTURE = SET
                           TAG       = (A 11 C)
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2urid, U 19 P,M,64> }

NotificationExtensionsFld  LABEL     = 2noex
                           STRUCTURE = SET OF
                           CHILDREN  = { <2eext, U 16 C,O,0> }

RecipientChoice            LABEL     = 2rcho
                           STRUCTURE = CHOICE
                           TAG       = (C 0 C)
                           CHILDREN  = { <2nrif, C  0 C,O,0>,
                                         <2rcif, C  1 C,O,0> }

RecipientChoiceP2          LABEL     = 2rch2
                           STRUCTURE = CHOICE
                           TAG       = (C 0 C)
                           CHILDREN  = { <2nri2, C  0 C,O,0>,
                                         <2rcif, C  1 C,O,0>,
                                         <2ontf, C  2 C,O,0> }

OtherNotificationTypeFlds  LABEL     = 2ontf
                           STRUCTURE = SET OF
                           CHILDREN  = { <2oext, U 16 C,O,0> }

OtherNotifExtensions       LABEL     = 2oext
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2oeft, U 6 P,M,0>*,
                                         <2odby, U 0 P,D,0>  }

Defining type              LABEL     = 2oeft
                           STRUCTURE = OBJECT IDENTIFIER

Extension Value            LABEL     = 2odby
                           STRUCTURE = ANY DEFINED BY
                           DEFGLABEL = 2oeft
                           REGISTER  = { <{1 3 26 0 4406 0 9 0},Zanre,U17C,0>}

NonReceiptFields           LABEL     = 2nrif
                           STRUCTURE = SET
                           CHILDREN  = { <2reas, C  0 P,M,0>,
                                         <2nrql, C  1 P,O,0>,
                                         <2afcm, C  2 P,O,256>,
                                         <2rpdu, C  3 C,O,0> }

NonReceiptFieldsP2         LABEL     = 2nri2
                           STRUCTURE = SET
                           CHILDREN  = { <2reas, C  0 P,M,0>,
                                         <2nrql, C  1 P,O,0>,
                                         <2afcm, C  2 P,O,256>,
                                         <2nrne, C  4 C,O,0>,
                                         <2rpd2, U  0 P,O,0> }

Returned IPM               LABEL     = 2rpdu
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2ihed, U 17 C,M,0>,
                                         <2ibdy, U 16 C,M,0> }

ReturnedIPMP2 ANY          LABEL     = 2rpd2
                           STRUCTURE = ANY
                           CHILDREN  = {}

ReturnedIPMP2              LABEL     = 2rim2
                           STRUCTURE = SEQUENCE
                           TAG       = (C 3 C)
                           CHILDREN  = { <2ihed, U 17 C,M,0>,
                                         <2ibd2, U 16 C,M,0> }

ReceiptFields              LABEL     = 2rcif
                           STRUCTURE = SET
                           CHILDREN  = { <2rctm, C  0 P,M,0>,
                                         <2ackm, C  1 P,D,0>,
                                         <2rinf, C  2 P,D,256>,
                                         <2rnex, C  3 C,O,0> }

NRNExtensionsField         LABEL     = 2nrne
                           STRUCTURE = SET OF
                           CHILDREN  = { <2eext, U 16 C,O,0> }

RNExtensionsField          LABEL     = 2rnex
                           STRUCTURE = SET OF
                           CHILDREN  = { <2eext, U 16 C,O,0> }

Notification Extensions    LABEL     = 2eext
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <2eeft, U 6 P,M,0>*,
                                         <2edby, U 0 P,D,0>  }

Defining type              LABEL     = 2eeft
                           STRUCTURE = OBJECT IDENTIFIER

Extension Value            LABEL     = 2edby
                           STRUCTURE = ANY DEFINED BY
                           DEFGLABEL = 2eeft
                           REGISTER  = { }

ReceiptTimeField           LABEL     = 2rctm
                           STRUCTURE = UTC TIME

AcknowledegmentModeField   LABEL     = 2ackm
                           STRUCTURE = ENUMERATED

SupplReceiptInfoField      LABEL     = 2rinf
                           STRUCTURE = PRINTABLE STRING

IPN Originator             LABEL     = 2actr
                           STRUCTURE = SET
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2ffnm, C  0 P,O,64>,
                                         <2teln, C  1 P,O,32> }

IntendedRecipient          LABEL     = 2ntdr
                           STRUCTURE = SET
                           CHILDREN  = { <Dornm, A  0 C,O,0>,
                                         <2ffnm, C  0 P,O,64>,
                                         <2teln, C  1 P,O,32> }

Auto-forwardComment        LABEL     = 2afcm
                           STRUCTURE = PRINTABLE STRING

TeletexString              LABEL     = 2texs
                           STRUCTURE = TELETEX STRING

NonReceiptReason           LABEL     = 2reas
                           STRUCTURE = ENUMERATED

Discard Reason             LABEL     = 2nrql
                           STRUCTURE = ENUMERATED

(*****************************************************************************)
(* P2 auto-forward parameters                                                *)
(*****************************************************************************)
ForwardedInfo              LABEL     = 2fwdi
                           STRUCTURE = SET
                           CHILDREN  = { <2afcm, C  0 P,O,256>,
                                         <2ia5t, C  1 C,O,0>,
                                         <Cptbl, C  2 P,O,2> }

!
