home *** CD-ROM | disk | FTP | other *** search
/ Chip 1998 March / CHIPCD_3_98.iso / software / testsoft / exchange / mtadata / p7.xv2 < prev    next >
Text File  |  1997-08-25  |  56KB  |  1,209 lines

  1. (* $Workfile:   p7.xv2  $ $Revision:   1.18  $ *)
  2. (* P7.TPL *)
  3. (*****************************************************************************)
  4. (* ASN.1 P7 Data-type Template                                               *)
  5. (*                                                                           *)
  6. (* Known simplifications:                                                    *)
  7. (*    - some of the ANYs should be ANY DEFINED BYs                           *)
  8. (*    - strong credentials not done                                          *)
  9. (*    - Nodes 7reqs, 7liss, 7sqss, 7pr3s, 7pr7s did have limit = 2147483647  *)
  10. (*****************************************************************************)
  11.  
  12.  
  13. (*****************************************************************************)
  14. (* Common data-types related to the information model                        *)
  15. (*****************************************************************************)
  16.  
  17. InformationBase            LABEL     = 7infb               T=INFORMATION_BASE..
  18.                            STRUCTURE = INTEGER
  19.  
  20. SequenceNumber             LABEL     = 7seqn               T=SEQUENCE_NUMBER
  21.                            STRUCTURE = INTEGER
  22.  
  23. Attribute                  LABEL     = 7attr               T=ATTRIBUTES
  24.                            STRUCTURE = SEQUENCE            C=DS_C_ATTRIBUTE
  25.                            CHILDREN  = { <7atty, U  6 P,M,0>*,
  26.                                          <7atvs, U 16 C,M,0> }
  27.  
  28. AttributeType              LABEL     = 7atty               T=special case
  29.                            STRUCTURE = OBJECT IDENTIFIER
  30.  
  31. values                     LABEL     = 7atvs
  32.                            STRUCTURE = SEQUENCE OF
  33.                            LIMIT     = 32767
  34.                            CHILDREN  = { <7atvl, U  0 P,O,0> }
  35.  
  36. AttributeValue             LABEL     = 7atvl               T=special case
  37.                            STRUCTURE = ANY
  38.                            CHILDREN  = { }
  39.  
  40. AutoActionRegistration     LABEL     = 7aarg               T=AUTO_ACTION_REGI..
  41.                            STRUCTURE = SEQUENCE            C=AUTO_ACTION_REGI..
  42.                            CHILDREN  = { <7aaty, U  6 P,M,0>*,
  43.                                          <7rgit, C  0 C,D,0> ,
  44.                                          <7rgpt, C  1 C,M,0> E }
  45.  
  46. AutoActionType             LABEL     = 7aaty               T=TYPE
  47.                            STRUCTURE = OBJECT IDENTIFIER
  48.  
  49. registration-identifier    LABEL     = 7rgit               T=REGISTRATION_ID
  50.                            STRUCTURE = TAG
  51.                            CHILDREN  = { <7rgid, U  2 P,M,0> }
  52.  
  53. registration-id            LABEL     = 7rgid
  54.                            STRUCTURE = INTEGER
  55.  
  56. registration-parameter TAG LABEL     = 7rgpt               T=REGISTRATION_PAR..
  57.                            STRUCTURE = TAG
  58.                            CHILDREN  = { <7rgpa, U  0 P,M,0> E }
  59.  
  60. registration-parameter ADB LABEL     = 7rgpa               T=special case
  61.                            STRUCTURE = ANY DEFINED BY
  62.                            DEFGLABEL = 7aaty
  63.                            REGISTER  = { <{2 6 4 4 0}, 7afrp, U 17 C,0> ,
  64.                                          <{2 6 4 4 1}, 7aarp, U 17 C,0> }
  65.  
  66.  
  67. (*****************************************************************************)
  68. (* Abstract-bind                                                             *)
  69. (*****************************************************************************)
  70.  
  71. MSBindArgument TAG         LABEL     = 7bart
  72.                            STRUCTURE = TAG
  73.                            TAG       = (C 16 C)
  74.                            CHILDREN  = { <7barg, U 17 C,M,0> }
  75.  
  76. MSBindArgument             LABEL     = 7barg
  77.                            STRUCTURE = SET
  78.                            CHILDREN  = { <7inir, A  0 C,M,0> ,
  79.                                          <7icrd, C  2 C,M,0> ,
  80.                                          <7sctx, C  3 C,O,0> ,
  81.                                          <7fres, C  4 C,O,0> ,
  82.                                          <7cfrq, C  5 C,D,0> }
  83.  
  84. initiator                  LABEL     = 7inir               T=INITIATOR
  85.                            STRUCTURE = SEQUENCE            C=MH_C_OR_NAME
  86.                            CHILDREN  = { <dsatt, U 16 C,M,0> ,
  87.                                          <dddal, U 16 C,O,0> ,
  88.                                          <dxatl, U 17 C,O,0> ,
  89.                                          <5nam3, C  0 C,O,0> }
  90.  
  91. initiator-credentials      LABEL     = 7icrd               T=INITIATOR_CREDEN..
  92.                            STRUCTURE = TAG
  93.                            CHILDREN  = { <7cred, U  0 P,M,0> }
  94.  
  95. Credentials                LABEL     = 7cred               T=special case
  96.                            STRUCTURE = CHOICE
  97.                            CHILDREN  = { <7ia5s, U 22 S,O,62> ,
  98.                                          <7octs, U  4 P,O,62> ,
  99.                                          <7stgc, C  0 C,O,0> }
  100.  
  101. SimpleCredentials(IA5)     LABEL     = 7ia5s               T=special case
  102.                            STRUCTURE = IA5 STRING
  103.  
  104. SimpleCredentials(Octets)  LABEL     = 7octs               T=special case
  105.                            STRUCTURE = OCTETSTRING
  106.  
  107. StrongCredentials          LABEL     = 7stgc               T=special case
  108.                            STRUCTURE = ANY
  109.                            TAG       = (C 0 C)
  110.                            CHILDREN  = { }
  111.  
  112. security-context           LABEL     = 7sctx
  113.                            STRUCTURE = SET OF
  114.                            LIMIT     = 256
  115.                            CHILDREN  = { <7mslb, U 17 C,O,0> }
  116.  
  117. security-label             LABEL     = 7mslb               T=SECURITY_CONTEXT
  118.                            STRUCTURE = SET                 C=MH_C_SECURITY_LA..
  119.                            CHILDREN  = { <Mspid, U  6 P,O,0>,
  120.                                          <Mscls, U  2 P,O,0>,
  121.                                          <Mpvmk, U 19 P,O,128>,
  122.                                          <Mscts, U 17 C,O,0> }
  123.  
  124. fetch-restrictions         LABEL     = 7fres               T=FETCH_RESTRICTIONS
  125.                            STRUCTURE = TAG
  126.                            CHILDREN  = { <7rest, U 17 C,M,0> }
  127.  
  128. ms-configuration-request   LABEL     = 7cfrq               T=MS_CONFIGURATION..
  129.                            STRUCTURE = TAG
  130.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  131.  
  132. Restrictions               LABEL     = 7rest               T=FETCH_RESTRICTIONS
  133.                            STRUCTURE = SET                 C=RESTRICTIONS
  134.                            CHILDREN  = { <7alct, C  0 C,O,0> ,
  135.                                          <7aeit, C  1 C,O,0> ,
  136.                                          <7mxcl, C  2 C,O,0> }
  137.  
  138. allowed-content-types      LABEL     = 7alct               T=ALLOWED_CONTENT_..
  139.                            STRUCTURE = TAG
  140.                            CHILDREN  = { <7alcs, U 17 C,M,0> }
  141.  
  142. allowed-cont-types SET OF  LABEL     = 7alcs
  143.                            STRUCTURE = SET OF
  144.                            LIMIT     = 1024
  145.                            CHILDREN  = { <7alcn, U  6 P,O,0> }
  146.  
  147. allowed-cont-type          LABEL     = 7alcn               T=ALLOWED_CONTENT_..
  148.                            STRUCTURE = OBJECT IDENTIFIER
  149.  
  150. allowed-EITs               LABEL     = 7aeit               T=ALLOWED_EITS
  151.                            STRUCTURE = TAG
  152.                            CHILDREN  = { <7eits, U 17 C,M,0> }
  153.  
  154. maximum-content-length     LABEL     = 7mxcl               T=MAX_CONTENT_LENGTH
  155.                            STRUCTURE = TAG
  156.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  157.  
  158. MS-EITs                    LABEL     = 7eits
  159.                            STRUCTURE = SET OF
  160.                            LIMIT     = 1024
  161.                            CHILDREN  = { <7meit, U  6 P,O,0> }
  162.  
  163. MS-EIT                     LABEL     = 7meit               T=ALLOWED_EITS
  164.                            STRUCTURE = OBJECT IDENTIFIER
  165.  
  166. Single ASN.1 Type - brst   LABEL     = 7brsa               T=n/a
  167.                            STRUCTURE = TAG                 C=BIND_RESULT
  168.                            TAG       = (C 0 C)
  169.                            CHILDREN  = { <7brst, C 17 C,M,0> }
  170.  
  171. MSBindResult TAG           LABEL     = 7brst
  172.                            STRUCTURE = TAG
  173.                            TAG       = (C 17 C)
  174.                            CHILDREN  = { <7brsl, U 17 C,O,0> }
  175.  
  176. MSBindResult               LABEL     = 7brsl
  177.                            STRUCTURE = SET
  178.                            CHILDREN  = { <7rcrd, C  2 C,M,0> ,
  179.                                          <7aaat, C  3 C,O,0> ,
  180.                                          <7aatt, C  4 C,O,0> ,
  181.                                          <7aind, C  5 C,D,0> ,
  182.                                          <7cspt, C  6 C,O,0> }
  183.  
  184. responder-credentials      LABEL     = 7rcrd               T=RESPONDER_CREDEN..
  185.                            STRUCTURE = TAG                 C=CREDENTIALS
  186.                            CHILDREN  = { <7cred, U  0 P,M,0> }
  187.  
  188. avail-auto-actions TAG     LABEL     = 7aaat               T=AVAILABLE_AUTO_A..
  189.                            STRUCTURE = TAG
  190.                            CHILDREN  = { <7aaas, U 17 C,M,0> }
  191.  
  192. avail-auto-actions SET OF  LABEL     = 7aaas
  193.                            STRUCTURE = SET OF
  194.                            LIMIT     = 16
  195.                            CHILDREN  = { <7aaac, U  6 P,O,0> }
  196.  
  197. avail-auto-action          LABEL     = 7aaac               T=AVAILABLE_AUTO_A..
  198.                            STRUCTURE = OBJECT IDENTIFIER
  199.  
  200. avail-attr-types TAG       LABEL     = 7aatt               T=AVAILABLE_ATTRIB..
  201.                            STRUCTURE = TAG
  202.                            CHILDREN  = { <7aats, U 17 C,M,0> }
  203.  
  204. avail-attr-types SET OF    LABEL     = 7aats
  205.                            STRUCTURE = SET OF
  206.                            LIMIT     = 1024
  207.                            CHILDREN  = { <7aatr, U  6 P,O,0> }
  208.  
  209. avail-attr-type            LABEL     = 7aatr               T=AVAILABLE_ATTRIB..
  210.                            STRUCTURE = OBJECT IDENTIFIER
  211.  
  212. alert-indication           LABEL     = 7aind               T=ALERT_INDICATION
  213.                            STRUCTURE = TAG
  214.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  215.  
  216. cont-types-supped TAG      LABEL     = 7cspt               T=CONTENT_TYPES_SU..
  217.                            STRUCTURE = TAG
  218.                            CHILDREN  = { <7csps, U 17 C,M,0> }
  219.  
  220. cont-types-supped SET OF   LABEL     = 7csps
  221.                            STRUCTURE = SET OF
  222.                            LIMIT     = 1024
  223.                            CHILDREN  = { <7ctsp, U  6 P,O,0> }
  224.  
  225. cont-types-supped          LABEL     = 7ctsp               T=CONTENT_TYPES_SU..
  226.                            STRUCTURE = OBJECT IDENTIFIER
  227.  
  228. Single ASN.1 Type - bert   LABEL     = 7bera               T=n/a
  229.                            STRUCTURE = TAG                 C=BIND_ERROR
  230.                            TAG       = (C 0 C)
  231.                            CHILDREN  = { <7bert, C 18 C,M,0> }
  232.  
  233. MSBindError TAG            LABEL     = 7bert
  234.                            STRUCTURE = TAG
  235.                            TAG       = (C 18 C)
  236.                            CHILDREN  = { <7berr, U 10 P,O,0> }
  237.  
  238. MSBindError                LABEL     = 7berr               T=special case
  239.                            STRUCTURE = ENUMERATED
  240.  
  241.  
  242. (*****************************************************************************)
  243. (* Common data-types for abstract-operations                                 *)
  244. (*****************************************************************************)
  245.  
  246. Range                      LABEL     = 7rnge               T=special case
  247.                            STRUCTURE = CHOICE
  248.                            CHILDREN  = { <7seqr, C  0 C,O,0> ,
  249.                                          <7crtr, C  1 C,O,0> }
  250.  
  251. sequence-number-range      LABEL     = 7seqr               T=special case
  252.                            STRUCTURE = TAG
  253.                            TAG       = (C 0 C)
  254.                            CHILDREN  = { <7numr, U 16 C,M,0> }
  255.  
  256. creation-time-range        LABEL     = 7crtr               T=special case
  257.                            STRUCTURE = TAG
  258.                            TAG       = (C 1 C)
  259.                            CHILDREN  = { <7timr, U 16 C,M,0> }
  260.  
  261. NumberRange                LABEL     = 7numr               T=SEQUENCE_NUMBER_..
  262.                            STRUCTURE = SEQUENCE            C=SEQUENCE_NUMBER_..
  263.                            CHILDREN  = { <7numf, C  0 C,O,0> ,
  264.                                          <7numt, C  1 C,O,0> }
  265.  
  266. from number TAG            LABEL     = 7numf               T=FROM_INT
  267.                            STRUCTURE = TAG
  268.                            CHILDREN  = { <7fnum, U  2 P,M,0> }
  269.  
  270. from number                LABEL     = 7fnum               T=FROM_INT
  271.                            STRUCTURE = INTEGER
  272.  
  273. to number TAG              LABEL     = 7numt               T=TO_INT
  274.                            STRUCTURE = TAG
  275.                            CHILDREN  = { <7tnum, U  2 P,M,0> }
  276.  
  277. to number                  LABEL     = 7tnum               T=TO_INT
  278.                            STRUCTURE = INTEGER
  279.  
  280. TimeRange                  LABEL     = 7timr               T=CREATION_TIME_RA..
  281.                            STRUCTURE = SEQUENCE            C=CREATION_TIME_RA..
  282.                            CHILDREN  = { <7timf, C  0 C,O,0> ,
  283.                                          <7timt, C  1 C,O,0> }
  284.  
  285. from time                  LABEL     = 7timf               T=FROM
  286.                            STRUCTURE = TAG
  287.                            CHILDREN  = { <Cutct, U 23 P,M,0> }
  288.  
  289. to time                    LABEL     = 7timt               T=TO
  290.                            STRUCTURE = TAG
  291.                            CHILDREN  = { <Cutct, U 23 P,M,0> }
  292.  
  293. (* Filters (to AVA) lifted from DSADAP.TPL with minor mods                   *)
  294.  
  295. Filter(top level)          LABEL     = 7filt               T=special case
  296.                            STRUCTURE = CHOICE
  297.                            CHILDREN  = { <7fili, C  0 C,O,0> ,
  298.                                          <7andt, C  1 C,O,0> ,
  299.                                          <7orxt, C  2 C,O,0> ,
  300.                                          <7nott, C  3 C,O,0> }
  301.  
  302. Filter(nested)             LABEL     = 7filn               T=special case
  303.                            STRUCTURE = CHOICE
  304.                            CHILDREN  = { <7fili, C  0 C,O,0> ,
  305.                                          <7andt, C  1 C,O,0> ,
  306.                                          <7orxt, C  2 C,O,0> ,
  307.                                          <7nott, C  3 C,O,0> }
  308.  
  309. FilterItem                 LABEL     = 7fili               T=special case
  310.                            STRUCTURE = CHOICE
  311.                            TAG       = (C 0 C)
  312.                            CHILDREN  = { <7equa, C  0 C,O,0> ,
  313.                                          <7sstt, C  1 C,O,0> ,
  314.                                          <7greq, C  2 C,O,0> ,
  315.                                          <7leeq, C  3 C,O,0> ,
  316.                                          <7psnt, C  4 C,O,0> ,
  317.                                          <7appm, C  5 C,O,0> }
  318.  
  319. Equal                      LABEL     = 7equa               T=special case
  320.                            STRUCTURE = TAG
  321.                            CHILDREN  = { <7atva, U 16 C,M,0> }
  322.  
  323. Substrings TAG             LABEL     = 7sstt               T=special case
  324.                            STRUCTURE = TAG
  325.                            CHILDREN  = { <7sstr, U 16 C,M,0> }
  326.  
  327. Substrings                 LABEL     = 7sstr
  328.                            STRUCTURE = SEQUENCE
  329.                            CHILDREN  = { <7atty, U  6 P,M,0> ,
  330.                                          <7strs, U 16 C,M,0> }
  331.  
  332. Strings                    LABEL     = 7strs
  333.                            STRUCTURE = SEQUENCE OF
  334.                            CHILDREN  = { <7strg, U  0 P,O,0> }
  335.  
  336. String                     LABEL     = 7strg               T=special case
  337.                            STRUCTURE = CHOICE
  338.                            CHILDREN  = { <7init, C  0 C,O,0> ,
  339.                                          <7anyx, C  1 C,O,0> ,
  340.                                          <7finl, C  2 C,O,0> }
  341.  
  342. Initial                    LABEL     = 7init
  343.                            STRUCTURE = TAG
  344.                            CHILDREN  = { <7ssvl, U  0 P,M,0> }
  345.  
  346. Any                        LABEL     = 7anyx
  347.                            STRUCTURE = TAG
  348.                            CHILDREN  = { <7ssvl, U  0 P,M,0> }
  349.  
  350. Final                      LABEL     = 7finl
  351.                            STRUCTURE = TAG
  352.                            CHILDREN  = { <7ssvl, U  0 P,M,0> }
  353.  
  354. SubstringValue             LABEL     = 7ssvl               T=special case
  355.                            STRUCTURE = ANY
  356.                            CHILDREN  = { }
  357.  
  358. GreaterOrEqual             LABEL     = 7greq               T=special case
  359.                            STRUCTURE = TAG
  360.                            CHILDREN  = { <7atva, U 16 C,M,0> }
  361.  
  362. LessOrEqual                LABEL     = 7leeq               T=special case
  363.                            STRUCTURE = TAG
  364.                            CHILDREN  = { <7atva, U 16 C,M,0> }
  365.  
  366. Present                    LABEL     = 7psnt               T=special case
  367.                            STRUCTURE = TAG
  368.                            CHILDREN  = { <7atty, U  6 P,M,0> }
  369.  
  370. ApproximateMatch           LABEL     = 7appm               T=special case
  371.                            STRUCTURE = TAG
  372.                            CHILDREN  = { <7atva, U 16 C,M,0> }
  373.  
  374. And TAG                    LABEL     = 7andt               T=special case
  375.                            STRUCTURE = TAG
  376.                            CHILDREN  = { <7andx, U 17 C,M,0> }
  377.  
  378. And                        LABEL     = 7andx
  379.                            STRUCTURE = SET OF
  380.                            CHILDREN  = { <7filn, U  0 P,O,0> }
  381.  
  382. Or TAG                     LABEL     = 7orxt               T=special case
  383.                            STRUCTURE = TAG
  384.                            CHILDREN  = { <7orxx, U 17 C,M,0> }
  385.  
  386. Or                         LABEL     = 7orxx
  387.                            STRUCTURE = SET OF
  388.                            CHILDREN  = { <7filn, U  0 P,O,0> }
  389.  
  390. Not TAG                    LABEL     = 7nott               T=special case
  391.                            STRUCTURE = TAG
  392.                            CHILDREN  = { <7filn, U  0 P,O,0> }
  393.  
  394. AttributeValueAssertion    LABEL     = 7atva
  395.                            STRUCTURE = SEQUENCE
  396.                            CHILDREN  = { <7atty, U  6 P,M,0>*,
  397.                                          <7atvl, U  0 P,M,0> }
  398.  
  399. (* filter must be last child of 7selr for encoding to work correctly *)
  400.  
  401. Selector                   LABEL     = 7selr               T=SELECTOR
  402.                            STRUCTURE = SET                 C=SELECTOR
  403.                            CHILDREN  = { <7schi, C  0 C,D,0> ,
  404.                                          <7srng, C  1 C,O,0> ,
  405.                                          <7slim, C  3 C,O,0> ,
  406.                                          <7sovr, C  4 C,O,0> ,
  407.                                          <7sfil, C  2 C,O,0> }
  408.  
  409. child-entries              LABEL     = 7schi               T=CHILD_ENTRIES
  410.                            STRUCTURE = TAG
  411.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  412.  
  413. range                      LABEL     = 7srng               T=RANGE
  414.                            STRUCTURE = TAG
  415.                            CHILDREN  = { <7rnge, U  0 P,M,0> }
  416.  
  417. filter                     LABEL     = 7sfil               T=FILTER
  418.                            STRUCTURE = TAG
  419.                            CHILDREN  = { <7filt, U  0 P,M,0> }
  420.  
  421. limit TAG                  LABEL     = 7slim               T=LIMIT
  422.                            STRUCTURE = TAG
  423.                            CHILDREN  = { <7slmt, U  2 P,M,0> }
  424.  
  425. limit                      LABEL     = 7slmt               T=LIMIT
  426.                            STRUCTURE = INTEGER
  427.  
  428. override                   LABEL     = 7sovr               T=OVERRIDE
  429.                            STRUCTURE = TAG
  430.                            CHILDREN  = { <Cbits, U  3 P,M,2> }
  431.  
  432. EntryInformationSelection  LABEL     = 7ents               T=REQUESTED_ATTRIB..
  433.                            STRUCTURE = SET OF              C=MS_ENTRY_INFO_SE..
  434.                            LIMIT     = 1024
  435.                            CHILDREN  = { <7atsl, U 17 C,O,0> }
  436.  
  437. AttributeSelection         LABEL     = 7atsl               T=SELECTION
  438.                            STRUCTURE = SET                 C=ATTRIBUTE_SELECT..
  439.                            CHILDREN  = { <7atty, U  6 P,M,0> ,
  440.                                          <7atsf, C  0 C,O,0> ,
  441.                                          <7atsc, C  1 C,O,0> }
  442.  
  443. from TAG                   LABEL     = 7atsf               T=FROM
  444.                            STRUCTURE = TAG
  445.                            CHILDREN  = { <7atfm, U  2 P,M,0> }
  446.  
  447. from                       LABEL     = 7atfm               T=FROM
  448.                            STRUCTURE = INTEGER
  449.  
  450. count TAG                  LABEL     = 7atsc               T=COUNT
  451.                            STRUCTURE = TAG
  452.                            CHILDREN  = { <7atcn, U  2 P,M,0> }
  453.  
  454. count                      LABEL     = 7atcn               T=COUNT
  455.                            STRUCTURE = INTEGER
  456.  
  457. EntryInformation           LABEL     = 7enti               T=ENTRY_INFORMATION
  458.                            STRUCTURE = SEQUENCE            C=ENTRY_INFORMATION
  459.                            CHILDREN  = { <7seqn, U  2 P,M,0> ,
  460.                                          <7atts, U 17 C,O,0> }
  461.  
  462. attributes                 LABEL     = 7atts
  463.                            STRUCTURE = SET OF
  464.                            LIMIT     = 1024
  465.                            CHILDREN  = { <7attr, U 16 C,O,0> }
  466.  
  467.  
  468. (*****************************************************************************)
  469. (* Abstract-operations                                                       *)
  470. (*****************************************************************************)
  471.  
  472. (* Summarize *)
  473.  
  474. SummarizeArgument          LABEL     = 7asum
  475.                            STRUCTURE = SET
  476.                            CHILDREN  = { <7ibty, C  0 C,D,0> ,
  477.                                          <7selt, C  1 C,M,0> ,
  478.                                          <7smrt, C  2 C,O,0> }
  479.  
  480. summary-requests TAG       LABEL     = 7smrt               T=SUMMARY_REQUESTS
  481.                            STRUCTURE = TAG
  482.                            CHILDREN  = { <7smrq, U 16 C,M,0> }
  483.  
  484. summary-requests SEQ OF    LABEL     = 7smrq               T=SUMMARY_REQUESTS
  485.                            STRUCTURE = SEQUENCE OF         C=SUMMARY_REQUESTS
  486.                            LIMIT     = 16
  487.                            CHILDREN  = { <7rqtd, U  6 P,O,0> }
  488.  
  489. requested                  LABEL     = 7rqtd               T=REQUESTED_STR
  490.                            STRUCTURE = OBJECT IDENTIFIER
  491.  
  492. SummarizeResult            LABEL     = 7smrs               T=n/a
  493.                            STRUCTURE = SET                 C=SUMMARY_RESULT
  494.                            CHILDREN  = { <7next, C  0 C,O,0> ,
  495.                                          <7coun, C  1 C,M,0> ,
  496.                                          <7rspn, C  2 C,O,0> ,
  497.                                          <7rsum, C  3 C,O,0> }
  498.  
  499. summaries TAG              LABEL     = 7rsum               T=SUMMARIES
  500.                            STRUCTURE = TAG
  501.                            CHILDREN  = { <7sums, U 16 C,M,0> }
  502.  
  503. summaries SEQ OF           LABEL     = 7sums
  504.                            STRUCTURE = SEQUENCE OF
  505.                            LIMIT     = 16
  506.                            CHILDREN  = { <7summ, U 17 C,O,0> }
  507.  
  508. Span                       LABEL     = 7span               T=SPAN
  509.                            STRUCTURE = SEQUENCE            C=SEQUENCE_NUMBER_..
  510.                            CHILDREN  = { <7numf, C  0 C,M,0> ,
  511.                                          <7numt, C  1 C,M,0> }
  512.  
  513. Summary                    LABEL     = 7summ               T=SUMMARIES
  514.                            STRUCTURE = SET                 C=SUMMARY
  515.                            CHILDREN  = { <7abst, C  0 C,O,0> ,
  516.                                          <7prst, C  1 C,O,0> }
  517.  
  518. absent                     LABEL     = 7abst               T=ABSENT
  519.                            STRUCTURE = TAG
  520.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  521.  
  522. present TAG                LABEL     = 7prst               T=PRESENT
  523.                            STRUCTURE = TAG
  524.                            CHILDREN  = { <7pset, U 17 C,M,0> }
  525.  
  526. present SET OF             LABEL     = 7pset
  527.                            STRUCTURE = SET OF
  528.                            LIMIT     = 32767
  529.                            CHILDREN  = { <7pseq, U 16 C,O,0> }
  530.  
  531. present SEQUENCE           LABEL     = 7pseq               T=PRESENT
  532.                            STRUCTURE = SEQUENCE            C=SUMMARY_PRESENT
  533.                            CHILDREN  = { <7paty, U  6 P,M,0>*,
  534.                                          <7pavl, U  0 P,M,0> ,
  535.                                          <7atcn, U  2 P,M,0> }
  536.  
  537. present attribute type     LABEL     = 7paty               T=special case
  538.                            STRUCTURE = OBJECT IDENTIFIER
  539.  
  540. present attribute value    LABEL     = 7pavl               T=special case
  541.                            STRUCTURE = ANY
  542.                            CHILDREN  = { }
  543.  
  544.  
  545. (* List *)
  546.  
  547. ListArgument               LABEL     = 7alst
  548.                            STRUCTURE = SET
  549.                            CHILDREN  = { <7ibty, C  0 C,D,0> ,
  550.                                          <7selt, C  1 C,M,0> ,
  551.                                          <7rqat, C  3 C,O,0> }
  552.  
  553. ListResult                 LABEL     = 7rlst               T=n/a
  554.                            STRUCTURE = SET                 C=LIST_RESULT
  555.                            CHILDREN  = { <7next, C  0 C,O,0> ,
  556.                                          <7reqt, C  1 C,O,0> }
  557.  
  558. requested TAG              LABEL     = 7reqt               T=REQUESTED
  559.                            STRUCTURE = TAG
  560.                            CHILDREN  = { <7reqs, U 16 C,M,0> }
  561.  
  562. requested SEQ OF           LABEL     = 7reqs
  563.                            STRUCTURE = SEQUENCE OF
  564.                            CHILDREN  = { <7rqei, U 16 C,O,0> }
  565.  
  566. requested EntryInformation LABEL     = 7rqei               T=REQUESTED
  567.                            STRUCTURE = SEQUENCE            C=MS_ENTRY_INFORMA..
  568.                            CHILDREN  = { <7seqn, U  2 P,M,0> ,
  569.                                          <7atts, U 17 C,O,0> }
  570.  
  571.  
  572. (* Fetch *)
  573.  
  574. FetchArgument              LABEL     = 7afch
  575.                            STRUCTURE = SET
  576.                            CHILDREN  = { <7ibty, C  0 C,D,0> ,
  577.                                          <7item, U  0 P,M,0> ,
  578.                                          <7rqat, C  3 C,O,0> }
  579.  
  580. item                       LABEL     = 7item               T=special case
  581.                            STRUCTURE = CHOICE
  582.                            CHILDREN  = { <7seli, C  1 C,O,0> ,
  583.                                          <7prec, C  2 C,O,0> }
  584.  
  585. selector item              LABEL     = 7seli               T=special case
  586.                            STRUCTURE = TAG
  587.                            TAG       = (C 1 C)
  588.                            CHILDREN  = { <7selr, U 17 C,M,0> }
  589.  
  590. precise item               LABEL     = 7prec               T=special case
  591.                            STRUCTURE = TAG
  592.                            TAG       = (C 2 C)
  593.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  594.  
  595. FetchResult                LABEL     = 7rfch               T=n/a
  596.                            STRUCTURE = SET                 C=FETCH_RESULT
  597.                            CHILDREN  = { <7entt, C  0 C,O,0> ,
  598.                                          <7list, C  1 C,O,0> ,
  599.                                          <7next, C  2 C,O,0> }
  600.  
  601. list TAG                   LABEL     = 7list               T=LIST
  602.                            STRUCTURE = TAG
  603.                            CHILDREN  = { <7liss, U 16 C,M,0> }
  604.  
  605. list SEQ OF                LABEL     = 7liss
  606.                            STRUCTURE = SEQUENCE OF
  607.                            CHILDREN  = { <7lseq, U  2 P,O,0> }
  608.  
  609. list SequenceNumber        LABEL     = 7lseq               T=LIST
  610.                            STRUCTURE = INTEGER
  611.  
  612.  
  613. (* Delete *)
  614.  
  615. DeleteArgument             LABEL     = 7adel
  616.                            STRUCTURE = SET
  617.                            CHILDREN  = { <7ibty, C  0 C,D,0> ,
  618.                                          <7itms, U  0 P,M,0> }
  619.  
  620. items                      LABEL     = 7itms               T=special case
  621.                            STRUCTURE = CHOICE
  622.                            CHILDREN  = { <7seli, C  1 C,M,0> ,
  623.                                          <7sqst, C  2 C,M,0> }
  624.  
  625. sequence-numbers TAG       LABEL     = 7sqst               T=special case
  626.                            STRUCTURE = TAG
  627.                            TAG       = (C 2 C)
  628.                            CHILDREN  = { <7sqss, U 17 C,M,0> }
  629.  
  630. sequence-numbers SET OF    LABEL     = 7sqss
  631.                            STRUCTURE = SET OF
  632.                            CHILDREN  = { <7sqpr, U  2 P,O,0> }
  633.  
  634. sequence-number (precise)  LABEL     = 7sqpr               T=PRECISE
  635.                            STRUCTURE = INTEGER
  636.  
  637. DeleteResult               LABEL     = 7rdel
  638.                            STRUCTURE = NULL
  639.  
  640.  
  641. (* Register-MS *)
  642.  
  643. Register-MSArgument        LABEL     = 7areg
  644.                            STRUCTURE = SET
  645.                            CHILDREN  = { <7regt, C  0 C,O,0> ,
  646.                                          <7drgt, C  1 C,O,0> ,
  647.                                          <7ladt, C  2 C,O,0> ,
  648.                                          <7fadt, C  3 C,O,0> ,
  649.                                          <7ccrt, C  4 C,O,0> ,
  650.                                          <7uslt, C  5 C,O,0> }
  651.  
  652. auto-action-reg TAG        LABEL     = 7regt               T=AUTO_ACTION_REGI..
  653.                            STRUCTURE = TAG
  654.                            CHILDREN  = { <7regs, U 17 C,M,0> }
  655.  
  656. auto-action-reg SET OF     LABEL     = 7regs
  657.                            STRUCTURE = SET OF
  658.                            LIMIT     = 1024
  659.                            CHILDREN  = { <7aarg, U 16 C,O,0> }
  660.  
  661. auto-action-dereg TAG      LABEL     = 7drgt               T=AUTO_ACTION_DERE..
  662.                            STRUCTURE = TAG
  663.                            CHILDREN  = { <7drgs, U 17 C,M,0> }
  664.  
  665. auto-action-dereg SET OF   LABEL     = 7drgs
  666.                            STRUCTURE = SET OF
  667.                            LIMIT     = 1024
  668.                            CHILDREN  = { <7aadr, U 16 C,O,0> }
  669.  
  670. AutoActionDeregistration   LABEL     = 7aadr               T=AUTO_ACTION_DERE..
  671.                            STRUCTURE = SEQUENCE            C=AUTO_ACTION_DERE..
  672.                            CHILDREN  = { <7aaty, U  6 P,M,0> ,
  673.                                          <7rgit, C  0 C,D,0> }
  674.  
  675. list-attribute-defaults    LABEL     = 7ladt               T=LIST_ATTRIBUTE_D..
  676.                            STRUCTURE = TAG
  677.                            CHILDREN  = { <7ladf, U 17 C,M,0> }
  678.  
  679. fetch-attribute-defaults   LABEL     = 7fadt               T=FETCH_ATTRIBUTE_..
  680.                            STRUCTURE = TAG
  681.                            CHILDREN  = { <7fadf, U 17 C,M,0> }
  682.  
  683. attribute-defaults (list)  LABEL     = 7ladf               T=LIST_ATTRIBUTE_D..
  684.                            STRUCTURE = SET OF              C=LIST_ATTRIBUTE_D..
  685.                            LIMIT     = 1024
  686.                            CHILDREN  = { <7laty, U  6 P,O,0> }
  687.  
  688. atttribute-type (list)     LABEL     = 7laty               T=ATTRIBUTE_TYPE
  689.                            STRUCTURE = OBJECT IDENTIFIER
  690.  
  691. attribute-defaults (fetch) LABEL     = 7fadf               T=FETCH_ATTRIBUTE_..
  692.                            STRUCTURE = SET OF              C=FETCH_ATTRIBUTE_..
  693.                            LIMIT     = 1024
  694.                            CHILDREN  = { <7faty, U  6 P,O,0> }
  695.  
  696. atttribute-type (fetch)    LABEL     = 7faty               T=ATTRIBUTE_TYPE
  697.                            STRUCTURE = OBJECT IDENTIFIER
  698.  
  699. change-credentials TAG     LABEL     = 7ccrt               T=CHANGE_CREDENTIALS
  700.                            STRUCTURE = TAG
  701.                            CHILDREN  = { <7ccrs, U 16 C,M,0> }
  702.  
  703. change-credentials SEQ     LABEL     = 7ccrs               T=CHANGE_CREDENTIALS
  704.                            STRUCTURE = SEQUENCE            C=CHANGE_CREDENTIALS
  705.                            CHILDREN  = { <7ocrd, C  0 C,M,0> ,
  706.                                          <7ncrd, C  1 C,M,0> }
  707.  
  708. old-credentials            LABEL     = 7ocrd               T=OLD_CREDENTIALS
  709.                            STRUCTURE = TAG
  710.                            CHILDREN  = { <7cred, U  0 P,M,0> }
  711.  
  712. new-credentials            LABEL     = 7ncrd               T=NEW_CREDENTIALS
  713.                            STRUCTURE = TAG
  714.                            CHILDREN  = { <7cred, U  0 P,M,0> }
  715.  
  716. user-security-labs TAG     LABEL     = 7uslt               T=USER_SECURITY_LA..
  717.                            STRUCTURE = TAG
  718.                            CHILDREN  = { <7usls, U 17 C,M,0> }
  719.  
  720. user-security-labs SET OF  LABEL     = 7usls
  721.                            STRUCTURE = SET OF
  722.                            LIMIT     = 256
  723.                            CHILDREN  = { <Xmslb, U 17 C,O,0> }
  724.  
  725. Register-MSResult          LABEL     = 7rreg
  726.                            STRUCTURE = NULL
  727.  
  728.  
  729. (* Alert *)
  730.  
  731. AlertArgument              LABEL     = 7alrt
  732.                            STRUCTURE = SET
  733.                            CHILDREN  = { <7alid, C  0 C,M,0> ,
  734.                                          <7alnt, C  2 C,O,0> }
  735.  
  736. alert-registration-id      LABEL     = 7alid
  737.                            STRUCTURE = TAG
  738.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  739.  
  740. new-entry TAG              LABEL     = 7alnt
  741.                            STRUCTURE = TAG
  742.                            CHILDREN  = { <7alne, U 16 C,M,0> }
  743.  
  744. new-entry                  LABEL     = 7alne               T=NEW_ENTRY
  745.                            STRUCTURE = SEQUENCE            C=ENTRY_INFORMATION
  746.                            CHILDREN  = { <7seqn, U  2 P,M,0> ,
  747.                                          <7atts, U 17 C,O,0> }
  748.  
  749. AlertResult                LABEL     = 7ralt
  750.                            STRUCTURE = NULL
  751.  
  752.  
  753. (*****************************************************************************)
  754. (* Common abstract-operations arguments/results                              *)
  755. (*****************************************************************************)
  756.  
  757. information-base-type      LABEL     = 7ibty               T=INFORMATION_BASE..
  758.                            STRUCTURE = TAG
  759.                            CHILDREN  = { <7infb, U  2 P,M,0> }
  760.  
  761. selector                   LABEL     = 7selt               T=SELECTOR
  762.                            STRUCTURE = TAG
  763.                            TAG       = (C 1 C)
  764.                            CHILDREN  = { <7selr, U 17 C,M,0> }
  765.  
  766. next                       LABEL     = 7next               T=NEXT
  767.                            STRUCTURE = TAG
  768.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  769.  
  770. count                      LABEL     = 7coun               T=COUNT
  771.                            STRUCTURE = TAG
  772.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  773.  
  774. span                       LABEL     = 7rspn               T=SPAN
  775.                            STRUCTURE = TAG
  776.                            CHILDREN  = { <7span, U 16 C,M,0> }
  777.  
  778. requested-attributes       LABEL     = 7rqat               T=REQUESTED_ATTRIB..
  779.                            STRUCTURE = TAG
  780.                            CHILDREN  = { <7ents, U 17 C,M,0> }
  781.  
  782. entry-information TAG      LABEL     = 7entt               T=ENTRY_INFORMATION
  783.                            STRUCTURE = TAG
  784.                            CHILDREN  = { <7enti, U 16 C,M,0> }
  785.  
  786.  
  787.  
  788. (*****************************************************************************)
  789. (* Abstract-errors                                                           *)
  790. (*****************************************************************************)
  791.  
  792. (* Attribute Error *)
  793.  
  794. AttributeError             LABEL     = 7ater               T=n/a
  795.                            STRUCTURE = SET                 C=ATTRIBUTE_ERROR
  796.                            CHILDREN  = { <7pr1t, C  0 C,M,0> }
  797.  
  798. problems TAG               LABEL     = 7pr1t               T=ATTRIBUTE_PROBLEMS
  799.                            STRUCTURE = TAG
  800.                            CHILDREN  = { <7pr1s, U 17 C,M,0> }
  801.  
  802. problems SET OF            LABEL     = 7pr1s
  803.                            STRUCTURE = SET OF
  804.                            LIMIT     = 1024
  805.                            CHILDREN  = { <7po1s, U 17 C,O,0> }
  806.  
  807. problems SET               LABEL     = 7po1s               T=ATTRIBUTE_PROBLEMS
  808.                            STRUCTURE = SET                 C=ATTRIBUTE_PROBLEMS
  809.                            CHILDREN  = { <7prot, C  0 C,M,0> ,
  810.                                          <7patt, C  1 C,M,0> ,
  811.                                          <7pavt, C  2 C,O,0> }
  812.  
  813. problem TAG                LABEL     = 7prot               T=PROBLEM
  814.                            STRUCTURE = TAG
  815.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  816.  
  817. type TAG                   LABEL     = 7patt               T=ATTRIBUTE_TYPE
  818.                            STRUCTURE = TAG
  819.                            CHILDREN  = { <7atty, U  6 P,M,0>*}
  820.  
  821. value TAG                  LABEL     = 7pavt               T=ATTRIBUTE_VALUE
  822.                            STRUCTURE = TAG
  823.                            CHILDREN  = { <7atvl, U  0 P,M,0> }
  824.  
  825.  
  826. (* Auto Action Request Error *)
  827.  
  828. AutoActionRequestError     LABEL     = 7aaer               T=n/a
  829.                            STRUCTURE = SET                 C=AUTO_ACTION_REQU..
  830.                            CHILDREN  = { <7pr2t, C  0 C,M,0> }
  831.  
  832. problems TAG               LABEL     = 7pr2t               T=AUTO_ACTION_REQU..
  833.                            STRUCTURE = TAG
  834.                            CHILDREN  = { <7pr2s, U 17 C,M,0> }
  835.  
  836. problems SET OF            LABEL     = 7pr2s
  837.                            STRUCTURE = SET OF
  838.                            LIMIT     = 1024
  839.                            CHILDREN  = { <7po2s, U 17 C,O,0> }
  840.  
  841. problems SET               LABEL     = 7po2s               T=AUTO_ACTION_REQU..
  842.                            STRUCTURE = SET                 C=AUTO_ACTION_REQU..
  843.                            CHILDREN  = { <7prot, C  0 C,M,0> ,
  844.                                          <7paat, C  1 C,M,0> }
  845.  
  846. type TAG                   LABEL     = 7paat               T=TYPE
  847.                            STRUCTURE = TAG
  848.                            CHILDREN  = { <7aaty, U  6 P,M,0> }
  849.  
  850.  
  851. (* Delete Error *)
  852.  
  853. DeleteError                LABEL     = 7dler               T=n/a
  854.                            STRUCTURE = SET                 C=DELETE_ERROR
  855.                            CHILDREN  = { <7pr3t, C  0 C,M,0> }
  856.  
  857. problems TAG               LABEL     = 7pr3t               T=DELETE_PROBLEMS
  858.                            STRUCTURE = TAG
  859.                            CHILDREN  = { <7pr3s, U 17 C,M,0> }
  860.  
  861. problems SET OF            LABEL     = 7pr3s
  862.                            STRUCTURE = SET OF
  863.                            CHILDREN  = { <7po3s, U 17 C,O,0> }
  864.  
  865. problems SET               LABEL     = 7po3s               T=DELETE_PROBLEMS
  866.                            STRUCTURE = SET                 C=DELETE_PROBLEM
  867.                            CHILDREN  = { <7prot, C  0 C,M,0> ,
  868.                                          <7seqt, C  1 C,M,0> }
  869.  
  870. sequence-number TAG        LABEL     = 7seqt               T=SEQUENCE_NUMBER
  871.                            STRUCTURE = TAG
  872.                            CHILDREN  = { <7seqn, U  2 P,M,0> }
  873.  
  874.  
  875. (* Fetch Restrictions Error *)
  876.  
  877. FetchRestrictionsError     LABEL     = 7frer               T=n/a
  878.                            STRUCTURE = SET                 C=FETCH_REST..ERRO..
  879.                            CHILDREN  = { <7pr4t, C  0 C,M,0> }
  880.  
  881. problems TAG               LABEL     = 7pr4t               T=FETCH_REST..PROB..
  882.                            STRUCTURE = TAG
  883.                            CHILDREN  = { <7pr4s, U 17 C,M,0> }
  884.  
  885. problems SET OF            LABEL     = 7pr4s
  886.                            STRUCTURE = SET OF
  887.                            LIMIT     = 1024
  888.                            CHILDREN  = { <7po4s, U 17 C,O,0> }
  889.  
  890. problems SET               LABEL     = 7po4s               T=FETCH_REST..PROB..
  891.                            STRUCTURE = SET                 C=FETCH_REST..PROB..
  892.                            CHILDREN  = { <7prot, C  3 C,M,0> ,
  893.                                          <7pres, U  0 P,M,0> }
  894.  
  895. restriction                LABEL     = 7pres               T=special case
  896.                            STRUCTURE = CHOICE
  897.                            CHILDREN  = { <7pctt, C  0 C,O,0> ,
  898.                                          <7pmet, C  1 C,O,0> ,
  899.                                          <7pclt, C  2 C,O,0> }
  900.  
  901. content-type TAG           LABEL     = 7pctt
  902.                            STRUCTURE = TAG
  903.                            CHILDREN  = { <7pcty, U 00 P,M,0> }
  904.  
  905. content-type               LABEL     = 7pcty               T=special case
  906.                            STRUCTURE = CHOICE
  907.                            CHILDREN  = { <7pcti, A  6 P,O,1024>,
  908.                                          <7pcto, U  6 P,O,0>   }
  909.  
  910. content-type (int)         LABEL     = 7pcti               T=CONTENT_TYPE_INT
  911.                            STRUCTURE = INTEGER
  912.  
  913. content-type (objid)       LABEL     = 7pcto               T=CONTENT_TYPE
  914.                            STRUCTURE = OBJECT IDENTIFIER
  915.  
  916. MS-EITs                    LABEL     = 7pmet               T=EITS
  917.                            STRUCTURE = TAG
  918.                            CHILDREN  = { <7eits, U 17 C,M,0> }
  919.  
  920. content-length             LABEL     = 7pclt               T=CONTENT_LENGTH
  921.                            STRUCTURE = TAG
  922.                            CHILDREN  = { <Cintg, U  2 P,M,0> }
  923.  
  924.  
  925. (* Invalid Parameters Error *)
  926.  
  927. InvalidParametersError     LABEL     = 7iper               T=special case
  928.                            STRUCTURE = NULL                C=INVALID_PARAMETE..
  929.  
  930.  
  931. (* Range Error *)
  932.  
  933. RangeError                 LABEL     = 7rger               T=n/a
  934.                            STRUCTURE = SET                 C=RANGE_ERROR
  935.                            CHILDREN  = { <7prot, C  0 C,M,0> }
  936.  
  937.  
  938. (* Sequence Number Error *)
  939.  
  940. SequenceNumberError        LABEL     = 7sner               T=n/a
  941.                            STRUCTURE = SET                 C=SEQUENCE_NUM..ER..
  942.                            CHILDREN  = { <7pr7t, C  1 C,M,0> }
  943.  
  944. problems TAG               LABEL     = 7pr7t               T=SEQUENCE_NUM..PR..
  945.                            STRUCTURE = TAG
  946.                            CHILDREN  = { <7pr7s, U 17 C,M,0> }
  947.  
  948. problems SET OF            LABEL     = 7pr7s
  949.                            STRUCTURE = SET OF
  950.                            CHILDREN  = { <7po7s, U 17 C,O,0> }
  951.  
  952. problems SET               LABEL     = 7po7s               T=SEQUENCE_NUM..PR..
  953.                            STRUCTURE = SET                 C=SEQUENCE_NUM..PR..
  954.                            CHILDREN  = { <7prot, C  0 C,M,0> ,
  955.                                          <7seqt, C  1 C,M,0> }
  956.  
  957. (* Service Error *)
  958.  
  959. ServiceError               LABEL     = 7sver               T=n/a
  960.                            STRUCTURE = SET                 C=SERVICE_ERROR
  961.                            CHILDREN  = { <7prot, C  0 C,M,0> }
  962.  
  963. (* Inconsistent Request Error *)
  964.  
  965. InconsistentReqError       LABEL     = 7irer               T=special case
  966.                            STRUCTURE = NULL                C=INCONSISTENT_REQ..
  967.  
  968.  
  969. (*****************************************************************************)
  970. (* Extra nodes needed to fulfil new attribute classes                        *)
  971. (*****************************************************************************)
  972.  
  973. (* Manual forwarding - as Submitted Message *)
  974.  
  975. ManualForwarding           LABEL     = 7mfwd               T=n/a
  976.                            STRUCTURE = SEQUENCE            C=ITEM_TO_FORWARD
  977.                            CHILDREN  = { <3msev, U 17 C,M,0> E,
  978.                                          <Mcont, U  4 S,M,2147483647> }
  979.  
  980. SecurityProblem            LABEL     = 7spro               T=special case
  981.                            STRUCTURE = INTEGER             C=SECURITY_ERROR
  982.  
  983.  
  984. (* Nodes from other templates needed with different tags *)
  985.  
  986.  
  987. Message delivery envelope  LABEL     = 7mdnv
  988.                            STRUCTURE = SEQUENCE
  989.                            CHILDREN  = { <Mmtid, A  4 C,M,0> ,
  990.                                          <3mdtm, U 23 P,M,0> ,
  991.                                          <3omdf, U 17 C,D,0> }
  992.  
  993. Report delivery envelope   LABEL     = 7rdnv
  994.                            STRUCTURE = SEQUENCE
  995.                            CHILDREN  = { <Mmtid, A  4 C,M,0> D,
  996.                                          <Mcnti, A 10 P,O,16>D,
  997.                                          <Mrcnt, U  0 P,O,0> D,
  998.                                          <Meits, A  5 C,O,0> D,
  999.                                          <3rdxf, C  1 C,D,0> D,
  1000.                                          <3rrcp, U 16 C,M,0> D }
  1001.  
  1002. ContentIdentifier          LABEL     = 7cnti
  1003.                            STRUCTURE = PRINTABLE STRING
  1004.                            TAG       = (A 10 P)
  1005.  
  1006. MTSIdentifier              LABEL     = 7mtid
  1007.                            STRUCTURE = SEQUENCE
  1008.                            TAG       = (A 4 C)
  1009.                            CHILDREN  = { <Mgbid, A  3 C,M,0> D,
  1010.                                          <Mlcid, U 22 P,M,32>  }
  1011.  
  1012. Priority                   LABEL     = 7prio
  1013.                            STRUCTURE = INTEGER
  1014.                            TAG       = (A 7 P)
  1015.  
  1016. (* Auto-Forward Registration Parameter *)
  1017. (* filter must be last child of 7afrp for encoding to work correctly *)
  1018.  
  1019. AutoForwardRegistrationPar LABEL     = 7afrp
  1020.                            STRUCTURE = SET
  1021.                            CHILDREN  = { <7af1t, C  1 C,M,0> ,
  1022.                                          <7af2t, C  2 C,O,0> ,
  1023.                                          <7af3t, C  3 C,O,0> ,
  1024.                                          <7af0t, C  0 C,O,0>  }
  1025.  
  1026. AutoForwardFilterTag       LABEL     = 7af0t
  1027.                            STRUCTURE = SET
  1028.                            TAG       = (C 0 C)
  1029.                            CHILDREN  = { <7filt, U  0 P,M,0>  }
  1030.  
  1031. AutoForwardArgumentsTag    LABEL     = 7af1t
  1032.                            STRUCTURE = SET
  1033.                            TAG       = (C 1 C)
  1034.                            CHILDREN  = { <7afar, U 17 C,M,0>  }
  1035.  
  1036. AutoForwardDeleteTag       LABEL     = 7af2t
  1037.                            STRUCTURE = SET
  1038.                            TAG       = (C 2 C)
  1039.                            CHILDREN  = { <7afdl, U  1 P,M,0>  }
  1040.  
  1041. AutoForwardOtherParmsTag   LABEL     = 7af3t
  1042.                            STRUCTURE = SET
  1043.                            TAG       = (C 3 C)
  1044.                            CHILDREN  = { <7afot, U  4 S,M,0>  }
  1045.  
  1046. AutoForwardArguments       LABEL     = 7afar
  1047.                            STRUCTURE = SET
  1048.                            CHILDREN  = { <7ornm, A  0 C,M,0> ,
  1049.                                          <77nti, A 10 P,O,16>,
  1050.                                          <77rio, A  7 P,O,0> ,
  1051.                                          <7pmsg, A  8 P,O,0> ,
  1052.                                          <7ddlv, C  0 P,O,0> ,
  1053.                                          <7pmxf, C  2 C,D,0> ,
  1054.                                          <7srcp, C  1 C,M,0>  }
  1055.  
  1056. (* need these copies of x400/P3 attributes as we are in P7 *)
  1057.  
  1058. P7OriginatorName           LABEL     = 7ornm
  1059.                            STRUCTURE = SEQUENCE
  1060.                            CHILDREN  = { <dsatt, U 16 C,M,0>DE,
  1061.                                          <dddal, U 16 C,O,0>,
  1062.                                          <dxatl, U 17 C,O,0>D,
  1063.                                          <5nam3, C  0 C,O,0> }
  1064.  
  1065. ContentIdentifier          LABEL     = 77nti               T=CONTENT_IDENTIFIER
  1066.                            STRUCTURE = PRINTABLE STRING
  1067.  
  1068. Priority                   LABEL     = 77rio               T=PRIORITY
  1069.                            STRUCTURE = ENUMERATED
  1070.  
  1071. PerMessageIndicators       LABEL     = 7pmsg               T=special case
  1072.                            STRUCTURE = BITSTRING
  1073.  
  1074. DeferredDeliveryTime       LABEL     = 7ddlv               T=DEFERRED_DELIVER..
  1075.                            STRUCTURE = UTC TIME
  1076.  
  1077. SEQ OF PerRecipientInfo    LABEL     = 7srcp
  1078.                            STRUCTURE = SEQUENCE OF
  1079.                            LIMIT     = 32767
  1080.                            CHILDREN  = { <7rcpf, U 17 C,O,0> }
  1081.  
  1082. PerRecipientFields         LABEL     = 7rcpf               T=RECIPIENT_DESCRI..
  1083.                            STRUCTURE = SET                 C=SUBMITTED_MESS..RD
  1084.                            CHILDREN  = { <Mrcpn, A  0 C,M,0>,
  1085.                                          <Morrq, C  0 P,M,0>,
  1086.                                          <Mexcv, C  1 P,O,0>,
  1087.                                          <3mrxf, C  2 C,D,0> }
  1088.  
  1089. PerMessageExtensionFields  LABEL     = 7pmxf               T=special case
  1090.                            STRUCTURE = SET OF
  1091.                            LIMIT     = 12
  1092.                            CHILDREN  = { <7pmxt, U 16 C,O,0> }
  1093.  
  1094. PerMessageExtensions       LABEL     = 7pmxt               T=special case
  1095.                            STRUCTURE = SEQUENCE
  1096.                            CHILDREN  = { <7xtyp, C  0 P,M,0>*,
  1097.                                          <7crtc, C  1 P,D,2> ,
  1098.                                          <7pmxv, C  2 C,D,0>  }
  1099.  
  1100. ExtensionType              LABEL     = 7xtyp               T=special case
  1101.                            STRUCTURE = INTEGER
  1102.  
  1103. Criticality                LABEL     = 7crtc               T=special case
  1104.                            STRUCTURE = BITSTRING
  1105.  
  1106. PerMessageExtensionValues  LABEL     = 7pmxv               T=special case
  1107.                            STRUCTURE = ANY DEFINED BY
  1108.                            TAG       = (C 2 C)
  1109.                            DEFGLABEL = 7xtyp
  1110.                            REGISTER  = { <01,7rrpb, U 10 P,0> ,
  1111.                                          <03,7dlxp, U 10 P,0> ,
  1112.                                          <04,7cwlp, U 10 P,0> ,
  1113.                                          <05,7ldvt, U 23 P,0> ,
  1114.                                          <0D,7oret, U 16 C,0> ,
  1115.                                          <0F,7octf, U  0 P,0>E,
  1116.                                          <11,7ccal, U 16 C,0> ,
  1117.                                          <13,7ochk, U 16 C,0> ,
  1118.                                          <14,7mslb, U 17 C,0> ,
  1119.                                          <17,7cntc, U  0 P,0>D }
  1120.  
  1121. 1 RcptReassignProhibited   LABEL     = 7rrpb               T=REASSIGNMENT_PRO..
  1122.                            STRUCTURE = ENUMERATED          C=oivrbool
  1123.  
  1124. 3 DLExpansionProhibited    LABEL     = 7dlxp               T=EXPANSION_PROHIB..
  1125.                            STRUCTURE = ENUMERATED          C=oivrbool
  1126.  
  1127. 4 ConvWithLossProhibited   LABEL     = 7cwlp               T=CONVERSION_LOSS_..
  1128.                            STRUCTURE = ENUMERATED          C=oivrbool
  1129.  
  1130. 5 LatestDeliveryTime       LABEL     = 7ldvt               T=LATEST_DELIVERY_..
  1131.                            STRUCTURE = UTC TIME
  1132.  
  1133. 13 OriginatorReturnAddress LABEL     = 7oret               T=ORIGINATOR_RETUR..
  1134.                            STRUCTURE = SEQUENCE            C=OR_ADDRESS
  1135.                            CHILDREN  = { <dsatt, U 16 C,M,0>DE,
  1136.                                          <dddal, U 16 C,O,0>  ,
  1137.                                          <dxatl, U 17 C,O,0> D }
  1138.  
  1139. 15 OriginatorCertificate   LABEL     = 7octf               T=ORIGINATOR_CERTI..
  1140.                            STRUCTURE = ANY                 C=DS_C_CERT
  1141.                            CHILDREN  = {}
  1142.  
  1143. 17 ContentConfAlgothmId    LABEL     = 7ccal               T=CONFIDENTIALITY_..
  1144.                            STRUCTURE = SEQUENCE            C=ALGORITHM
  1145.                            CHILDREN  = { <5algm, U  6 P,M,0>*,
  1146.                                          <5prms, U  0 P,O,0> }
  1147.  
  1148. 19 MsgOrigAuthCheck        LABEL     = 7ochk               T=ORIGIN_CHECK
  1149.                            STRUCTURE = SEQUENCE            C=ALGORITHM_AND_RE..
  1150.                            CHILDREN  = { <5algi, U 16 C,M,0>   ,
  1151.                                          <5encr, U  3 P,M,0>    }
  1152.  
  1153. 23 ContentCorrelator       LABEL     = 7cntc               T=special case
  1154.                            STRUCTURE = ANY
  1155.                            CHILDREN  = {}
  1156.  
  1157.  
  1158.  
  1159. AutoForwardDeleteAfter     LABEL     = 7afdl
  1160.                            STRUCTURE = BOOLEAN
  1161.  
  1162. AutoForwardOtherParms      LABEL     = 7afot
  1163.                            STRUCTURE = OCTET STRING
  1164.  
  1165. (* Auto-Alert Registration Parameter *)
  1166. (* filter must be last child of 7aarp for encoding to work correctly *)
  1167.  
  1168. AutoAlertRegistrationPar   LABEL     = 7aarp
  1169.                            STRUCTURE = SET
  1170.                            CHILDREN  = { <7aa1t, C  1 C,O,0> ,
  1171.                                          <7aa2t, C  2 C,O,0> ,
  1172.                                          <7aa0t, C  0 C,O,0>  }
  1173.  
  1174. AutoAlertFilterTag         LABEL     = 7aa0t
  1175.                            STRUCTURE = TAG
  1176.                            TAG       = (C 0 C)
  1177.                            CHILDREN  = { <7filt, U  0 P,M,0>  }
  1178.  
  1179. AutoAlertAddressesTag      LABEL     = 7aa1t
  1180.                            STRUCTURE = TAG
  1181.                            TAG       = (C 1 C)
  1182.                            CHILDREN  = { <7aaaz, U 16 C,M,0>  }
  1183.  
  1184. AutoAlertRequestedTag      LABEL     = 7aa2t
  1185.                            STRUCTURE = TAG
  1186.                            TAG       = (C 2 C)
  1187.                            CHILDREN  = { <7ents, U 17 C,M,0>  }
  1188.  
  1189. AutoAlertAddresses         LABEL     = 7aaaz
  1190.                            STRUCTURE = SEQUENCE OF
  1191.                            CHILDREN  = { <7aaad, U 16 C,M,0>  }
  1192.  
  1193. AutoAlertAddress           LABEL     = 7aaad
  1194.                            STRUCTURE = SEQUENCE
  1195.                            CHILDREN  = { <7aaex, U  8 C,M,0> ,
  1196.                                          <7aaql, U  4 P,O,0>  }
  1197.  
  1198. Address                    LABEL     = 7aaex
  1199.                            STRUCTURE = SEQUENCE
  1200.                            TAG       = (U 8 C)
  1201.                            CHILDREN  = { <Cdref, U 6 P,O,0>,
  1202.                                          <Ciref, U 2 P,O,0>,
  1203.                                          <Cdvds, U 7 P,O,0>,
  1204.                                          <Cencd, U 0 P,O,0> }
  1205.  
  1206. AutoAlertQualifier         LABEL     = 7aaql
  1207.                            STRUCTURE = OCTET STRING
  1208. !
  1209.