(* $Workfile:   edi.xv2  $ $Revision:   1.9  $ *)
(* EDI.TPL *)

(*****************************************************************************)
(* ASN.1 Pedi DATA-TYPE TEMPLATE                                             *)
(*****************************************************************************)

(* Overview *)

InformationObject          LABEL     = Eapdu               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Eedim, C  0 C,O,0>,
                                         <Eednt, C  1 C,O,0> }

EDIN TAG                   LABEL     = Eednt
                           STRUCTURE = TAG
                           CHILDREN  = { <Eedin, U 00 P,M,0> }

(* Common Data Types *)

user                       LABEL     = Euser               T=USER
                           STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
                           CHILDREN  = { <dsatt, U 16 C,M,0>,
                                         <dddal, U 16 C,O,0>,
                                         <dxatl, U 17 C,O,0>,
                                         <5nam3, C  0 C,O,0> }

LocalReference             LABEL     = Elref               T=USER_RELATIVE_ID..
                           STRUCTURE = PRINTABLE STRING

Extension Type             LABEL     = Extyp               T=EXTENSION_TYPE
                           STRUCTURE = OBJECT IDENTIFIER

Criticality                LABEL     = Ecrtc               T=CRITICALITY
                           STRUCTURE = BOOLEAN

Extension Value            LABEL     = Eadby               T=special case
                           STRUCTURE = ANY DEFINED BY
                           DEFGLABEL = Extyp
                           REGISTER  = { }

EDIM                       LABEL     = Eedim               T=0
                           STRUCTURE = SEQUENCE            C=EDIM
                           CHILDREN  = { <Ehead, U 16 C,M,0>,
                                         <Ebody, U 16 C,M,0> }

IdentificationCode         LABEL     = Eicod               T=IDENTIF.._CODE
                           STRUCTURE = TELETEX STRING

IdentificationCodeQual     LABEL     = Eicoq               T=IDENTIF.._CODE_Q
                           STRUCTURE = TELETEX STRING

RoutingAddress             LABEL     = Erout               T=ROUTING_ADDRESS
                           STRUCTURE = TELETEX STRING

(* Heading Fields *)

Heading                    LABEL     = Ehead               T=HEADING
                           STRUCTURE = SEQUENCE            C=EDI_HEADING
                           CHILDREN  = { <Ethis, C  1 C,M,0>,
                                         <Eorig, C  2 C,O,0>,
                                         <Ercps, C  3 C,O,0>,
                                         <Enrcv, C  4 C,O,0>,
                                         <Erfor, C  5 P,D,0>,
                                         <Ebdyt, C  6 P,D,0>,
                                         <Eincc, C  7 P,D,0>,
                                         <Eexpt, C  8 P,O,0>,
                                         <Erelm, C  9 C,O,0>,
                                         <Eobss, C 10 C,O,0>,
                                         <Eases, C 11 C,O,0>,
                                         <Exrfs, C 12 C,O,0>,
                                         <Emsgs, C 13 C,O,0>,
                                         <Essad, C 14 C,O,0>,
                                         <Esyni, C 15 C,O,0>,
                                         <Eints, C 16 C,O,0>,
                                         <Eprep, C 17 P,O,0>,
                                         <Earef, C 18 P,O,14>,
                                         <Ehexs, C 19 C,O,0> }

ThisEDIMField              LABEL     = Ethis               T=THIS_EDIM
                           STRUCTURE = SET                 C=EDIM_ID
                           CHILDREN  = { <Euser, C  0 C,M,0>,
                                         <Elref, C  1 P,M,64> }

OriginatorField            LABEL     = Eorig               T=ORIGINATOR
                           STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
                           CHILDREN  = { <dsatt, U 16 C,M,0>,
                                         <dddal, U 16 C,O,0>,
                                         <dxatl, U 17 C,O,0>,
                                         <5nam3, C  0 C,O,0> }

RecipientsField            LABEL     = Ercps
                           STRUCTURE = SET OF
                           CHILDREN  = { <Ercp2, U 16 C,O,0> }

RecipientsSubField         LABEL     = Ercp2               T=RECIPS
                           STRUCTURE = SEQUENCE            C=RECIPS
                           CHILDREN  = { <Ercpt, C  1 C,M,0>,
                                         <Eareq, C  2 P,D,0>,
                                         <Enreq, C  3 C,O,0>,
                                         <Erspp, C  4 P,D,0>,
                                         <Eircp, C  5 C,O,0>,
                                         <Errfs, C  6 C,O,0>,
                                         <Eiref, C  7 P,O,14>,
                                         <Epric, C  8 P,O,1>,
                                         <Eakrq, C  9 P,D,0>,
                                         <Ecaid, C 10 P,O,35>,
                                         <Etest, C 11 P,D,0>,
                                         <Eauth, C 12 C,O,0>,
                                         <Erexs, C 13 C,O,0> }

RecipientField             LABEL     = Ercpt               T=RECIP
                           STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
                           CHILDREN  = { <dsatt, U 16 C,M,0>,
                                         <dddal, U 16 C,O,0>,
                                         <dxatl, U 17 C,O,0>,
                                         <5nam3, C  0 C,O,0> }

ActionRequestField         LABEL     = Eareq               T=ACT_REQUEST
                           STRUCTURE = OBJECT IDENTIFIER

EDINotifRequestsField      LABEL     = Enreq               T=EDI_NOTIF_REQUESTS
                           STRUCTURE = SEQUENCE            C=EDI_NOTIF_REQUESTS
                           CHILDREN  = { <Enrqs, C  0 P,D,16>,
                                         <Ensec, C  1 P,D,16>,
                                         <Ersec, C  2 P,D,16> }

EDINotificationRequests    LABEL     = Enrqs               T=special case
                           STRUCTURE = BIT STRING

EDINotificationSecurity    LABEL     = Ensec               T=special case
                           STRUCTURE = BIT STRING

EDIReceptionSecurity       LABEL     = Ersec               T=special case
                           STRUCTURE = BIT STRING

InterchangeRecipientField  LABEL     = Eircp               T=INTER_RECIP
                           STRUCTURE = SEQUENCE            C=INTER_SENDER_RECIP
                           CHILDREN  = { <Eicod, C  0 P,M,35>,
                                         <Eicoq, C  1 P,O,4>,
                                         <Erout, C  2 P,O,14> }

RecipientReferenceField    LABEL     = Errfs               T=RECIP_REFERENCE
                           STRUCTURE = SEQUENCE            C=RECIP_REFERENCE
                           CHILDREN  = { <Erref, C  0 P,M,14>,
                                         <Errfq, C  1 P,O,2> }

RecipientReference         LABEL     = Erref               T=RECIP_REFERENCE
                           STRUCTURE = TELETEX STRING

RecipientReferenceQual     LABEL     = Errfq               T=RECIP_REFERENCE_Q
                           STRUCTURE = TELETEX STRING

RecipientExtensionsField   LABEL     = Erexs
                           STRUCTURE = SET OF
                           CHILDREN  = { <Erext, U 16 C,O,0> }

RecipExtensionsSubField    LABEL     = Erext               T=RECIPIENT_EXTENS..
                           STRUCTURE = SEQUENCE            C=EDI_EXTENSION
                           CHILDREN  = { <Extyp, C  0 P,M,0>*,
                                         <Ecrtc, C  1 P,D,0>,
                                         <Eadby, C  2 C,D,0> }

EDINReceiverField          LABEL     = Enrcv               T=EDIN_RECEIVER
                           STRUCTURE = SEQUENCE            C=EDIN_RECEIVER
                           CHILDREN  = { <Ernam, C  0 C,M,0>,
                                         <Eomid, C  1 C,O,0>,
                                         <Erec1, C  2 C,O,0> }

edin-receiver-name         LABEL     = Ernam               T=EDIN_RECEIVER_NAME
                           STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
                           CHILDREN  = { <dsatt, U 16 C,M,0>,
                                         <dddal, U 16 C,O,0>,
                                         <dxatl, U 17 C,O,0>,
                                         <5nam3, C  0 C,O,0> }

original-edim-identifier   LABEL     = Eomid               T=ORIGINAL_EDIM_ID
                           STRUCTURE = SET                 C=EDIM_ID
                           CHILDREN  = { <Euser, C  0 C,M,0>,
                                         <Elref, C  1 P,M,64> }

ResponsibilityForwarded    LABEL     = Erfor               T=RESPONS_FORWARD
                           STRUCTURE = BOOLEAN

EDIBodyPartType            LABEL     = Ebdyt               T=EDI_BODYPART_TYPE
                           STRUCTURE = OBJECT IDENTIFIER

EDIMessageTypeField        LABEL     = Emsgs
                           STRUCTURE = SET OF
                           CHILDREN  = { <Emsgt, U 20 P,O,6> }

EDIMessageTypeSubField     LABEL     = Emsgt               T=EDI_MSG_TYPE
                           STRUCTURE = TELETEX STRING

ResponsPassingAllowedField LABEL     = Erspp               T=RESPONSE_PASSING..
                           STRUCTURE = BOOLEAN

IncompleteCopyField        LABEL     = Eincc               T=INC_COPY
                           STRUCTURE = BOOLEAN

ExpiryTimeField            LABEL     = Eexpt               T=EXPIRY_TIME
                           STRUCTURE = UTC TIME

RelatedMessagesField       LABEL     = Erelm
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <Eremr, U 00 P,O,0> }

RelatedMessageReference    LABEL     = Eremr               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Ereem, C  0 C,O,0>,
                                         <Erexm, C  1 C,O,0> }

edi-message-reference      LABEL     = Ereem               T=RELATED_EDI_MSGS
                           STRUCTURE = SET                 C=EDIM_ID
                           TAG       = (C 0 C)
                           CHILDREN  = { <Euser, C  0 C,M,0>,
                                         <Elref, C  1 P,M,64> }

external-message-reference LABEL     = Erexm               T=RELATED_NON_EDI_..
                           STRUCTURE = SEQUENCE            C=OM_C_EXTERNAL
                           TAG       = (C 1 C)
                           CHILDREN  = { <Cdref, U 6 P,O,0>,
                                         <Ciref, U 2 P,O,0>,
                                         <Cdvds, U 7 P,O,0>,
                                         <Cencd, U 0 P,O,0> }

ObsoletedEDIMsField        LABEL     = Eobss
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <Eobsm, U 17 C,O,0> }

ObsoletedEDIMsSubfield     LABEL     = Eobsm               T=OBSOLETED_EDIMS
                           STRUCTURE = SET                 C=EDIM_ID
                           CHILDREN  = { <Euser, C  0 C,M,0>,
                                         <Elref, C  1 P,M,64> }

EDIApplSecurityElemsField  LABEL     = Eases               T=EDI_APP_SECUR_EL..
                           STRUCTURE = SEQUENCE            C=EDI_APP_SECUR_ELTS
                           CHILDREN  = { <Easel, C  0 P,O,8191>,
                                         <Eepbp, C  1 P,O,0>,
                                         <Easxs, C  2 C,O,0> }

edi-appl-security-element  LABEL     = Easel               T=APP_SECUR_ELEMENT
                           STRUCTURE = BIT STRING

edi-encrypted-primary-bp   LABEL     = Eepbp               T=ENCRYPTED_PRIMAR..
                           STRUCTURE = BOOLEAN

edi-appl-security-exts     LABEL     = Easxs
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <Easxt, U 16 C,O,0> }

edi-appl-security-ext      LABEL     = Easxt               T=APP_SECUR_EXTENS..
                           STRUCTURE = SEQUENCE            C=EDI_EXTENSION
                           CHILDREN  = { <Extyp, C  0 P,M,0>*,
                                         <Ecrtc, C  1 P,D,0>,
                                         <Eadby, C  2 C,D,0> }

CrossReferenceInfoField    LABEL     = Exrfs
                           STRUCTURE = SET OF
                           CHILDREN  = { <Exref, U 16 C,O,0> }

CrossReferenceInfoSubField LABEL     = Exref               T=CROSS_REFERENCIN..
                           STRUCTURE = SEQUENCE            C=CROSS_REF_INFO
                           CHILDREN  = { <Eaxrf, C  0 P,M,0>,
                                         <Emsrf, C  1 C,O,0>,
                                         <Ebprf, C  2 P,M,0> }

appl-cross-reference       LABEL     = Eaxrf               T=APP_CROSS_REFERE..
                           STRUCTURE = OCTET STRING

message-reference          LABEL     = Emsrf               T=MSG_REFERENCE
                           STRUCTURE = SET                 C=EDIM_ID
                           CHILDREN  = { <Euser, C  0 C,M,0>,
                                         <Elref, C  1 P,M,64> }

ServiceStringAdviceField   LABEL     = Essad               T=SERVICE_STRING_A..
                           STRUCTURE = SEQUENCE            C=SERV_STRING_ADVICE
                           CHILDREN  = { <Ecdes, C  0 P,M,1>,
                                         <Edels, C  1 P,M,1>,
                                         <Ednot, C  2 P,M,1>,
                                         <Erind, C  3 P,O,1>,
                                         <Ersvd, C  4 P,O,1>,
                                         <Ester, C  5 P,M,1> }

ComponentDataElementSep    LABEL     = Ecdes               T=COMPONENT_DATA_E..
                           STRUCTURE = OCTET STRING

DataElementSeparator       LABEL     = Edels               T=DATA_ELEMENT_SEP..
                           STRUCTURE = OCTET STRING

DecimalNotation            LABEL     = Ednot               T=DECIMAL_NOTATION
                           STRUCTURE = OCTET STRING

ReleaseIndicator           LABEL     = Erind               T=RELEASE_INDICATOR
                           STRUCTURE = OCTET STRING

Reserved                   LABEL     = Ersvd               T=RESERVED
                           STRUCTURE = OCTET STRING

SegmentTerminator          LABEL     = Ester               T=SEGMENT_TERMINATOR
                           STRUCTURE = OCTET STRING

SyntaxIdentifierField      LABEL     = Esyni               T=SYNTAX_ID
                           STRUCTURE = SEQUENCE            C=SYNTAX_ID
                           CHILDREN  = { <Esyns, U 20 P,M,4>,
                                         <Esynv, U 19 P,M,5> }

SyntaxIdentifier           LABEL     = Esyns               T=SYNTAX_ID_STRING
                           STRUCTURE = TELETEX STRING

SyntaxVersion              LABEL     = Esynv               T=SYNTAX_VERSION
                           STRUCTURE = PRINTABLE STRING

InterchangeSenderField     LABEL     = Eints               T=INTER_SENDER
                           STRUCTURE = SEQUENCE            C=INTER_SENDER_RECIP
                           CHILDREN  = { <Eicod, C  0 P,M,35>,
                                         <Eicoq, C  1 P,O,4>,
                                         <Erout, C  2 P,O,14> }

DateAndTimeOfPrepField     LABEL     = Eprep               T=DATE_AND_TIME_OF..
                           STRUCTURE = UTC TIME

InterchangeControlRefField LABEL     = Eiref               T=INTER_CONTROL_RE..
                           STRUCTURE = TELETEX STRING

ApplicationReferenceField  LABEL     = Earef               T=APP_REFERENCE
                           STRUCTURE = TELETEX STRING

ProcessPriorityCodeField   LABEL     = Epric               T=PROCESSING_PRIOR..
                           STRUCTURE = TELETEX STRING

AcknowledgeRequestField    LABEL     = Eakrq               T=ACKNOWLEDGEMENT_..
                           STRUCTURE = BOOLEAN

CommsAgreementIdField      LABEL     = Ecaid               T=COMMS_AGREEMENT_ID
                           STRUCTURE = TELETEX STRING

TestIndicatorField         LABEL     = Etest               T=TEST_INDICATOR
                           STRUCTURE = BOOLEAN

AuthorizationInfoField     LABEL     = Eauth               T=AUTHORIZATION_INFO
                           STRUCTURE = SEQUENCE            C=AUTHORIZATION_INFO
                           CHILDREN  = { <Eauts, C  0 P,M,10>,
                                         <Eautq, C  1 P,O,2} }

AuthorizationInfo          LABEL     = Eauts               T=AUTHORIZATION_INFO
                           STRUCTURE = TELETEX STRING

AuthorizationInfoQualifier LABEL     = Eautq               T=AUTHORIZATION_I..Q
                           STRUCTURE = TELETEX STRING

HeadingExtensionsField     LABEL     = Ehexs
                           STRUCTURE = SET OF
                           CHILDREN  = { <Ehext, U 16 C,O,0> }

HeadingExtensionsSubField  LABEL     = Ehext               T=HEADING_EXTENSIO..
                           STRUCTURE = SEQUENCE            C=EDI_EXTENSION
                           CHILDREN  = { <Extyp, C  0 P,M,0>*,
                                         <Ecrtc, C  1 P,D,0>,
                                         <Eadby, C  2 C,D,0> }

(* EDIM Body *)

Body                       LABEL     = Ebody
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <Eprbp, U 00 P,M,0>,
                                         <Eotbp, U 16 C,O,0> }

PrimaryBodyPart            LABEL     = Eprbp               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Eedib, C  0 S,O,0>,
                                         <Eedmb, C  1 C,O,0> }

OtherBodyParts             LABEL     = Eotbp
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <Eextb, U 16 C,O,0> }

EDIBodyPart                LABEL     = Eedib               T=special case
                           STRUCTURE = OCTET STRING

EDIMBodyPart               LABEL     = Eedmb               T=EDI_PRIMARY_BODY..
                           STRUCTURE = SEQUENCE            C=EDIM_BODYPART
                           CHILDREN  = { <Empar, C  0 C,O,0>,
                                         <Emdat, C  1 C,M,0> }

MessageParameters          LABEL     = Empar
                           STRUCTURE = SET
                           CHILDREN  = { <Emdtm, C  0 P,O,0>,
                                         <Eomdf, C  1 C,O,0>,
                                         <Eesin, C  2 P,O,256> }

MessageDeliveryTime        LABEL     = Emdtm               T=special case
                           STRUCTURE = UTC TIME

OtherMessageDeliveryFields LABEL     = Eomdf               T=special case
                           STRUCTURE = SET
                           CHILDREN  = { <Mdcnt, U  0 P,M,0>,
                                         <Morig, A  0 C,M,0>,
                                         <Meits, C  1 C,O,0>,
                                         <Mprio, A  7 P,D,0>,
                                         <3dflg, C  2 P,O,16>,
                                         <3orcp, C  3 C,O,0>,
                                         <3trcp, C  4 C,M,0>,
                                         <Mircp, C  5 C,O,0>,
                                         <Mceit, C  6 C,O,0>,
                                         <3mstm, C  7 P,M,0>,
                                         <Mcnti, C  8 P,O,16>,
                                         <3dxtf, C  9 C,D,0> }

EDISupplementaryInfo       LABEL     = Eesin               T=EDI_SUPPLEMENTAR..
                           STRUCTURE = TELETEX STRING

MessageData                LABEL     = Emdat
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <Ehead, U 16 C,M,0>,
                                         <Eborr, U 16 C,M,0> }

BodyOrRemoved              LABEL     = Eborr
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <Eporr, U 00 P,M,0>,
                                         <Eadbs, U 16 C,O,0> }

PrimaryOrRemoved           LABEL     = Eporr               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Cnull, C  0 P,O,0>,
                                         <Eprbt, C  1 C,O,0> }

PrimaryBodyPart TAG        LABEL     = Eprbt
                           STRUCTURE = TAG
                           CHILDREN  = { <Eprbp, U 00 P,M,0> }

AdditionalBodyParts        LABEL     = Eadbs               T=special case
                           STRUCTURE = SEQUENCE OF
                           CHILDREN  = { <Eadbp, U 00 P,O,0> }

AdditionalBodyPart         LABEL     = Eadbp               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Eextb, C  0 C,O,0>,
                                         <Ebpph, C  1 C,O,0> }

BodyPartPlaceHolder        LABEL     = Ebpph               T=ADD_BODYPARTS
                           STRUCTURE = SEQUENCE            C=EDIM_EX_DF_BODYP..
                           CHILDREN  = { <Ebprf, C  0 P,O,0>,
                                         <Eede2, C  1 C,O,0> }

ExternallyDefinedBodyPart2 LABEL     = Eede2               T=EX_BODYPART
                           STRUCTURE = SEQUENCE            C=IM_C_EXTERN_DEF_..
                           CHILDREN  = { <Eepar, C  0 C,O,0>,
                                         <Eedat, U  8 C,M,0> }

EDIM-ExternallyDefinedBP   LABEL     = Eextb               T=ADD_BODYPARTS
                           STRUCTURE = SEQUENCE            C=EDIM_EX_DF_BODYP..
                           CHILDREN  = { <Ebprf, C  0 P,O,0>,
                                         <Eedef, C  1 C,M,0> }

BodyPartReference          LABEL     = Ebprf               T=BODYPART_REFERENCE
                           STRUCTURE = INTEGER

ExternallyDefinedBodyPart  LABEL     = Eedef               T=EX_BODYPART
                           STRUCTURE = SEQUENCE            C=IM_C_EXTERN_DEF_..
                           CHILDREN  = { <Eepar, C  0 C,O,0>,
                                         <Eedat, U  8 C,M,0> }

(* From P2 *)

ExternallyDefinedParams    LABEL     = Eepar               T=EXTERNAL_PARAMET..
                           STRUCTURE = SEQUENCE            C=OM_C_EXTERNAL
                           CHILDREN  = { <Cdref, U 6 P,M,0>,
                                         <Casn1, C 0 C,O,0> }

ExternallyDefinedData      LABEL     = Eedat               T=EXTERNAL_DATA
                           STRUCTURE = SEQUENCE            C=OM_C_EXTERNAL
                           TAG       = (U 8 C)
                           CHILDREN  = { <Cdref, U 6 P,M,0>,
                                         <Casn1, C 0 C,O,0> }
(* End of from P2 *)

EDISupplementaryInfo       LABEL     = Esinf               T=SUPPLEMENTARY_INFO
                           STRUCTURE = TELETEX STRING


(* EDI Notifications (EDINs) *)

EDIN                       LABEL     = Eedin               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Epnot, C  0 C,O,0>,
                                         <Ennot, C  1 C,O,0>,
                                         <Efnot, C  2 C,O,0> }

CommonFields               LABEL     = Ecomm
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <Esubj, C  1 C,M,0>,
                                         <Enori, C  2 C,M,0>,
                                         <Erec1, C  3 C,O,0>,
                                         <Entim, C  4 P,M,0>,
                                         <Esels, C  5 C,O,0>,
                                         <Einit, C  6 P,M,0>,
                                         <Enexs, C  7 C,O,0> }

SubjectEDIMField           LABEL     = Esubj               T=SUBJECT_EDIM
                           STRUCTURE = SET                 C=EDIM_ID
                           CHILDREN  = { <Euser, C  0 C,M,0>,
                                         <Elref, C  1 P,M,64> }

EDINOriginatorField        LABEL     = Enori               T=EDIN_ORIG
                           STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
                           CHILDREN  = { <dsatt, U 16 C,M,0>,
                                         <dddal, U 16 C,O,0>,
                                         <dxatl, U 17 C,O,0>,
                                         <5nam3, C  0 C,O,0> }

FirstRecipientField        LABEL     = Erec1               T=FIRST_RECIP
                           STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
                           CHILDREN  = { <dsatt, U 16 C,M,0>,
                                         <dddal, U 16 C,O,0>,
                                         <dxatl, U 17 C,O,0>,
                                         <5nam3, C  0 C,O,0> }

NotificationTimeField      LABEL     = Entim               T=NOTIF_TIME
                           STRUCTURE = UTC TIME

SecurityElementsField      LABEL     = Esels               T=SECUR_ELEMENTS
                           STRUCTURE = SEQUENCE            C=SECUR_ELEMENTS
                           CHILDREN  = { <Econt, C  0 P,O,0>,
                                         <Ecick, C  1 C,O,0>,
                                         <Eases, C  2 C,O,0>,
                                         <Esexs, C  3 C,O,0> }

Content                    LABEL     = Econt               T=special case
                           STRUCTURE = OCTET STRING

ContentIntegrityCheck      LABEL     = Ecick               T=ORIGINAL_CONTENT..
                           STRUCTURE = SEQUENCE            C=MH_C_INTEGRITY_C..
                           CHILDREN  = { <5algi, U 16 C,M,0>   ,
                                         <5encr, U  3 P,M,0>    }

SecurityExtensionsField    LABEL     = Esexs
                           STRUCTURE = SET OF
                           CHILDREN  = { <Esext, U 16 C,O,0>DE }

SecurityExtensionsSubField LABEL     = Esext
                           STRUCTURE = SEQUENCE
                           CHILDREN  = { <Extyp, C  0 P,M,0>*D,
                                         <Ecrtc, C  1 P,D,0>D,
                                         <Eadby, C  2 C,D,0>D }

EDINInitiatorField         LABEL     = Einit               T=special_case
                           STRUCTURE = ENUMERATED

NotifExtensionsField       LABEL     = Enexs
                           STRUCTURE = SET OF
                           CHILDREN  = { <Enext, U 16 C,O,0> }

NotifExtensionsSubField    LABEL     = Enext               T=NOTIFICATION_EXT..
                           STRUCTURE = SEQUENCE            C=EDI_EXTENSION
                           CHILDREN  = { <Extyp, C  0 P,M,0>*,
                                         <Ecrtc, C  1 P,D,0>,
                                         <Eadby, C  2 C,D,0> }

PositiveNotificationField  LABEL     = Epnot               T=0
                           STRUCTURE = SEQUENCE            C=POSITIVE_NOTIF
                           CHILDREN  = { <Ecomm, C  0 C,M,0>,
                                         <Esinf, C  1 P,O,256>,
                                         <Enexs, C  2 C,O,0> }

NegativeNotificationField  LABEL     = Ennot               T=0
                           STRUCTURE = SEQUENCE            C=NEGATIVE_NOTIF
                           CHILDREN  = { <Ecomm, C  0 C,M,0>,
                                         <Ennrt, C  1 C,M,0>,
                                         <Esinf, C  2 P,O,256>,
                                         <Enexs, C  3 C,O,0> }

NNReasonCodeTag            LABEL     = Ennrt               T=NN_REASON_CODE
                           STRUCTURE = TAG
                           CHILDREN  = { <Ennre, U  0 P,M,0> }

NNReasonCodeField          LABEL     = Ennre               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Enuar, C  0 C,O,0>,
                                         <Enusr, C  1 C,O,0>,
                                         <Enpdr, C  2 C,O,0> }

NNUAMSReasonCodeField      LABEL     = Enuar               T=NN_REASON_CODE
                           STRUCTURE = SEQUENCE            C=NN_UAMS_REASON_C..
                           CHILDREN  = { <Ebcod, C  0 P,M,0>,
                                         <Ediag, C  1 P,O,0> }

BasicCodeField             LABEL     = Ebcod               T=BASIC_CODE
                           STRUCTURE = INTEGER

DiagnosticField            LABEL     = Ediag               T=DIAGNOSTIC
                           STRUCTURE = INTEGER

NNUserReasonCodeField      LABEL     = Enusr               T=NN_REASON_CODE
                           STRUCTURE = SEQUENCE            C=NN_USER_REASON_C..
                           CHILDREN  = { <Ebcod, C  0 P,M,0>,
                                         <Ediag, C  1 P,O,0> }

NNPDAUReasonCodeField      LABEL     = Enpdr               T=NN_REASON_CODE
                           STRUCTURE = SEQUENCE            C=NN_PDAU_REASON_C..
                           CHILDREN  = { <Ebcod, C  0 P,M,0>,
                                         <Ediag, C  1 P,O,0> }

ForwardNotificationField   LABEL     = Efnot               T=0
                           STRUCTURE = SEQUENCE            C=FORWARD_NOTIF
                           CHILDREN  = { <Ecomm, C  0 C,M,0>,
                                         <Efwto, C  1 C,M,0>,
                                         <Efnrt, C  2 C,M,0>,
                                         <Esinf, C  3 P,O,256>,
                                         <Enexs, C  4 C,O,0> }

FNReasonCodeTag            LABEL     = Efnrt               T=FN_REASON_CODE
                           STRUCTURE = TAG
                           CHILDREN  = { <Efnre, U  0 P,M,0> }

FNReasonCodeField          LABEL     = Efnre               T=special case
                           STRUCTURE = CHOICE
                           CHILDREN  = { <Efuar, C  0 C,O,0>,
                                         <Efusr, C  1 C,O,0>,
                                         <Efpdr, C  2 C,O,0> }

ForwardedTo                LABEL     = Efwto               T=FORWARD_TO
                           STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
                           CHILDREN  = { <dsatt, U 16 C,M,0>,
                                         <dddal, U 16 C,O,0>,
                                         <dxatl, U 17 C,O,0>,
                                         <5nam3, C  0 C,O,0> }

FNUAMSReasonCodeField      LABEL     = Efuar               T=FN_REASON_CODE
                           STRUCTURE = SEQUENCE            C=FN_UAMS_REASON_C..
                           CHILDREN  = { <Ebcod, C  0 P,M,0>,
                                         <Ediag, C  1 P,O,0>,
                                         <Eschk, C  2 P,D,0> }

FNUAMSSecurityCheckField   LABEL     = Eschk               T=FN_SECUR_CHECK
                           STRUCTURE = BOOLEAN

FNUserReasonCodeField      LABEL     = Efusr               T=FN_REASON_CODE
                           STRUCTURE = SEQUENCE            C=FN_USER_REASON_C..
                           CHILDREN  = { <Ebcod, C  0 P,M,0>,
                                         <Ediag, C  1 P,O,0> }

FNPDAUReasonCodeField      LABEL     = Efpdr               T=FN_REASON_CODE
                           STRUCTURE = SEQUENCE            C=FN_PDAU_REASON_C..
                           CHILDREN  = { <Ebcod, C  0 P,M,0>,
                                         <Ediag, C  1 P,O,0> }
!
