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

  1. (* $Workfile:   dsadap.xv2  $ $Revision:   1.11  $ *)
  2. (* DSADAP .XV2 *)
  3. (*****************************************************************************)
  4. (* ASN.1 X.500 Directory Access Protocol Template                            *)
  5. (*                                                                           *)
  6. (* - Defines:                                                                *)
  7. (*    - Bind and Unbind to DSA (X.511)                                       *)
  8. (*    - readASE Remote Operations (X.511)                                    *)
  9. (*       - Abandon                                                           *)
  10. (*       - Compare                                                           *)
  11. (*       - Read                                                              *)
  12. (*    - searchASE Remote Operations (X.511)                                  *)
  13. (*       - List                                                              *)
  14. (*       - Search                                                            *)
  15. (*    - modifyASE Remote Operations (X.511)                                  *)
  16. (*       - AddEntry                                                          *)
  17. (*       - RemoveEntry                                                       *)
  18. (*       - ModifyEntry                                                       *)
  19. (*       - ModifyRDN                                                         *)
  20. (*    - interface extension                                                  *)
  21. (*       - Browse                                                            *)
  22. (* - Extensions not supported yet       ??????????                           *)
  23. (* - OPTIONALLY-SIGNED removed - but in m:\misc\x500dap.tpl.                 *)
  24. (* - external procedure and strong credentials not allowed on bind           *)
  25. (*                             - but in m:\misc\x500dap.tpl.                 *)
  26. (*****************************************************************************)
  27.  
  28. (*****************************************************************************)
  29. (* DirectoryBind Operation                                                   *)
  30. (*****************************************************************************)
  31.  
  32.  
  33. DirectoryBindArgTag        LABEL     = 5bart
  34.                            STRUCTURE = TAG
  35.                            TAG       = (C 16 C)
  36.                            CHILDREN  = { <5barg, U 17 C,O,0> }
  37.  
  38. DirectoryBindArgument      LABEL     = 5barg
  39.                            STRUCTURE = SET
  40.                            CHILDREN  = { <5cred, C  0 C,O,0> }
  41.  
  42. Credentials                LABEL     = 5cred
  43.                            STRUCTURE = TAG
  44.                            TAG       = (C 0 C)
  45.                            CHILDREN  = { <5sict, C  0 C,O,0> }
  46.  
  47. SimpleCredentialsTag       LABEL     = 5sict               T=0
  48.                            STRUCTURE = TAG
  49.                            CHILDREN  = { <5sicr, U 16 C,M,0> }
  50.  
  51. SimpleCredentials          LABEL     = 5sicr               T=0
  52.                            STRUCTURE = SEQUENCE            C=SESSION
  53.                            CHILDREN  = { <5dnm2, C  0 C,M,0> ,
  54.                                          <5cvlt, C  1 C,O,0> ,
  55.                                          <5past, C  2 C,O,0> }
  56.  
  57. ValidityTag                LABEL     = 5cvlt               T=special case
  58.                            STRUCTURE = TAG
  59.                            CHILDREN  = { <5cval, U 17 C,M,0> }
  60.  
  61. validity                   LABEL     = 5cval
  62.                            STRUCTURE = SET
  63.                            CHILDREN  = { <5tim1, C  0 P,O,0>E,
  64.                                          <5tim2, C  1 P,O,0>E,
  65.                                          <5rnd1, C  2 P,O,0>E,
  66.                                          <5rnd2, C  3 P,O,0>E }
  67.  
  68. time1                      LABEL     = 5tim1
  69.                            STRUCTURE = UTC TIME
  70.  
  71. time2                      LABEL     = 5tim2
  72.                            STRUCTURE = UTC TIME
  73.  
  74. random1                    LABEL     = 5rnd1
  75.                            STRUCTURE = BITSTRING
  76.  
  77. random2                    LABEL     = 5rnd2
  78.                            STRUCTURE = BITSTRING
  79.  
  80. PasswordTag                LABEL     = 5past               T=PASSWORD
  81.                            STRUCTURE = TAG
  82.                            CHILDREN  = { <5pass, U  4 P,M,0> }
  83.  
  84. password                   LABEL     = 5pass               T=0
  85.                            STRUCTURE = OCTETSTRING         C=oivrocts
  86.  
  87. VersionTag                 LABEL     = 5vert
  88.                            STRUCTURE = TAG
  89.                            CHILDREN  = { <5vers, U  3 P,M,0> }
  90.  
  91. Versions                   LABEL     = 5vers
  92.                            STRUCTURE = BITSTRING
  93.  
  94. DirectoryBindRes/Err       LABEL     = 5bdre
  95.                            STRUCTURE = UNTAGGED CHOICE
  96.                            CHILDREN  = { <5brst, C 17 C,O,0>,
  97.                                          <5bert, C 18 C,O,0> }
  98.  
  99. Single ASN.1 Type - brst   LABEL     = 5brsa
  100.                            STRUCTURE = TAG
  101.                            TAG       = (C 0 C)
  102.                            CHILDREN  = { <5brst, C 17 C,M,0> }
  103.  
  104. Single ASN.1 Type - bert   LABEL     = 5bera
  105.                            STRUCTURE = TAG
  106.                            TAG       = (C 0 C)
  107.                            CHILDREN  = { <5bert, C 18 C,M,0> }
  108.  
  109. DirectoryBindResTag        LABEL     = 5brst
  110.                            STRUCTURE = TAG
  111.                            TAG       = (C 17 C)
  112.                            CHILDREN  = { <5barg, U 17 C,O,0> }
  113.  
  114. DirectoryBindErrTag        LABEL     = 5bert
  115.                            STRUCTURE = TAG
  116.                            TAG       = (C 18 C)
  117.                            CHILDREN  = { <5berr, U 17 C,O,0> }
  118.  
  119. DirectoryBindError         LABEL     = 5berr
  120.                            STRUCTURE = SET
  121.                            CHILDREN  = { <5vert, C  0 C,D,0> ,
  122.                                          <5bech, U  0 P,M,0> }
  123.  
  124. BindErrorTypeChoice        LABEL     = 5bech
  125.                            STRUCTURE = CHOICE
  126.                            CHILDREN  = { <5svet, C  1 C,O,0> ,
  127.                                          <5scet, C  2 C,O,0> }
  128.  
  129. ServiceErrorTag            LABEL     = 5svet               T=n/a
  130.                            STRUCTURE = TAG                 C=SERVICE_ERROR
  131.                            CHILDREN  = { <5prb4, U 02 P,M,0> }
  132.  
  133. SecurityErrorTag           LABEL     = 5scet               T=n/a
  134.                            STRUCTURE = TAG                 C=SECURITY_ERROR
  135.                            CHILDREN  = { <5prb3, U 02 P,M,0> }
  136.  
  137.  
  138.  
  139. (*****************************************************************************)
  140. (* DirectoryUnbind Operation has no parameters (Argument/Result/Error)       *)
  141. (* We really want to have argument = 9300 result = 9400 error = 9500 but     *)
  142. (* asn.1 server doesn't support this yet.                                    *)
  143. (*****************************************************************************)
  144. (* DirectoryUnbindArgument    LABEL     = 5unar                             *)
  145. (*                            STRUCTURE = NULL                              *)
  146. (*                            TAG       = (C 19 P)                          *)
  147. (*                                                                          *)
  148. (* DirectoryUnbindResult      LABEL     = 5unre                             *)
  149. (*                            STRUCTURE = NULL                              *)
  150. (*                            TAG       = (C 20 P)                          *)
  151. (*                                                                          *)
  152. (* DirectoryUnbindError       LABEL     = 5uner                             *)
  153. (*                            STRUCTURE = NULL                              *)
  154. (*                            TAG       = (C 21 P)                          *)
  155. (*                                                                          *)
  156. (*****************************************************************************)
  157. (* Remote Operations APDU Definitions for DUA Operations                     *)
  158. (*****************************************************************************)
  159.  
  160. ROSEapdu                   LABEL     = 5apdu
  161.                            STRUCTURE = UNTAGGED CHOICE
  162.                            CHILDREN  = { <5roiv, C  1 C,O,0>E,
  163.                                          <5rors, C  2 C,O,0>,
  164.                                          <5roer, C  3 C,O,0>,
  165.                                          <5rorj, C  4 C,O,0> }
  166.  
  167. ROIVapdu                   LABEL     = 5roiv
  168.                            STRUCTURE = SEQUENCE
  169.                            TAG       = (C 1 C)
  170.                            CHILDREN  = { <5inid, U  2 P,M,0>,
  171.                                          <5lkid, C  0 P,O,0>,
  172.                                          <5oper, U  0 P,M,0>*,
  173.                                          <5args, U  0 P,O,0>E}
  174.  
  175. InvokeID                   LABEL     = 5inid               T=0
  176.                            STRUCTURE = INTEGER             C=oivrintg
  177.  
  178. LinkedID                   LABEL     = 5lkid
  179.                            STRUCTURE = INTEGER
  180.  
  181. Operation                  LABEL     = 5oper
  182.                            STRUCTURE = CHOICE
  183.                            CHILDREN  = { <5opri, U  2 P,O,0>*,
  184.                                          <5opro, U  6 P,O,0>* }
  185.  
  186. OperationInteger           LABEL     = 5opri
  187.                            STRUCTURE = INTEGER
  188.  
  189. OperationObjectIdentifier  LABEL     = 5opro
  190.                            STRUCTURE = OBJECT IDENTIFIER
  191.  
  192. (* this is an untagged any defined by ! *)
  193. Arguments                  LABEL     = 5args                T=special case
  194.                            STRUCTURE = ANY DEFINED BY
  195.                            DEFGLABEL = 5oper
  196.                            REGISTER  = { <01,5read, U 17 C,0>,
  197.                                          <02,5cmpr, U 17 C,0>,
  198.                                          <03,5aban, U 16 C,0>,
  199.                                          <04,5list, U 17 C,0>,
  200.                                          <05,5srch, U 17 C,0>,
  201.                                          <06,5adde, U 17 C,0>,
  202.                                          <07,5reme, U 17 C,0>,
  203.                                          <08,5mode, U 17 C,0>,
  204.                                          <09,5modr, U 17 C,0>,
  205.                                          <14,5brow, U 17 C,0> }
  206.  
  207. RORSapdu                   LABEL     = 5rors
  208.                            STRUCTURE = SEQUENCE
  209.                            CHILDREN  = { <5inid, U  2 P,M,0>,
  210.                                          <5rslt, U 16 C,O,0> }
  211.  
  212. ResultPair                 LABEL     = 5rslt
  213.                            STRUCTURE = SEQUENCE
  214.                            CHILDREN  = { <5oper, U  0 P,M,0>*,
  215.                                          <5rlts, U  0 P,M,0> }
  216.  
  217. (* this is an untagged any defined by ! *)
  218. Results                    LABEL     = 5rlts
  219.                            STRUCTURE = ANY DEFINED BY
  220.                            DEFGLABEL = 5oper
  221.                            REGISTER  = { <01,5rdrs, U 17 C,0>,
  222.                                          <02,5cmrs, U 17 C,0>,
  223.                                          <03,5null, U  5 P,0>,
  224.                                          <04,5lsrs, U  0 P,0>,
  225.                                          <05,5srrs, U  0 P,0>,
  226.                                          <06,5null, U  5 P,0>,
  227.                                          <07,5null, U  5 P,0>,
  228.                                          <08,5null, U  5 P,0>,
  229.                                          <09,5null, U  5 P,0>,
  230.                                          <14,5brrs, U 17 C,0> }
  231.  
  232. ROERapdu                   LABEL     = 5roer
  233.                            STRUCTURE = SEQUENCE
  234.                            CHILDREN  = { <5inid, U  2 P,M,0>,
  235.                                          <5errv, U  0 P,M,0>*,
  236.                                          <5errp, U  0 P,O,0>  }
  237.  
  238. ErrorValue                 LABEL     = 5errv
  239.                            STRUCTURE = CHOICE
  240.                            CHILDREN  = { <5erri, U  2 P,O,0>*,
  241.                                          <5erro, U  6 P,O,0>* }
  242.  
  243. ErrorValueInteger          LABEL     = 5erri
  244.                            STRUCTURE = INTEGER
  245.  
  246. ErrorValueObjectIdentifier LABEL     = 5erro
  247.                            STRUCTURE = OBJECT IDENTIFIER
  248.  
  249. (* this is an untagged any defined by ! *)
  250. ErrorParameters            LABEL     = 5errp
  251.                            STRUCTURE = ANY DEFINED BY
  252.                            DEFGLABEL = 5errv
  253.                            REGISTER  = { <01,5ater, U 17 C,0>,
  254.                                          <02,5nmer, U 17 C,0>,
  255.                                          <03,5sver, U 17 C,0>,
  256.                                          <04,5rfrl, U 17 C,0>,
  257.                                          <05,5null, U  5 P,0>,
  258.                                          <06,5scer, U 17 C,0>,
  259.                                          <07,5abfl, U 17 C,0>,
  260.                                          <08,5uper, U 17 C,0> }
  261.  
  262. RORJapdu                   LABEL     = 5rorj
  263.                            STRUCTURE = SEQUENCE
  264.                            CHILDREN  = { <5inrj, U  0 P,M,0>,
  265.                                          <5prbm, U  0 P,M,0> }
  266.  
  267. RORJInvokeidChoice         LABEL     = 5inrj
  268.                            STRUCTURE = CHOICE
  269.                            CHILDREN  = { <5inid, U  2 P,O,0>,
  270.                                          <5null, U  5 P,O,0> }
  271.  
  272. Null                       LABEL     = 5null
  273.                            STRUCTURE = NULL
  274.  
  275. RORJProblemChoice          LABEL     = 5prbm
  276.                            STRUCTURE = CHOICE
  277.                            CHILDREN  = { <5grlp, C  0 P,O,0>,
  278.                                          <5ivkp, C  1 P,O,0>,
  279.                                          <5rrsp, C  2 P,O,0>,
  280.                                          <5rerp, C  3 P,O,0> }
  281.  
  282. GeneralProblem             LABEL     = 5grlp
  283.                            STRUCTURE = INTEGER
  284.  
  285. InvokeProblem              LABEL     = 5ivkp
  286.                            STRUCTURE = INTEGER
  287.  
  288. ReturnResultProblem        LABEL     = 5rrsp
  289.                            STRUCTURE = INTEGER
  290.  
  291. ReturnErrorProblem         LABEL     = 5rerp
  292.                            STRUCTURE = INTEGER
  293.  
  294.  
  295. (*****************************************************************************)
  296. (* Read Operation Arguments                                                  *)
  297. (*****************************************************************************)
  298. ReadArgument               LABEL     = 5read               T=0
  299.                            STRUCTURE = SET                 C=ABS_ARGS
  300.                            CHILDREN  = { <5nam1, C  0 C,M,0> ,
  301.                                          <5entt, C  1 C,D,0> ,
  302.                                          <5mrrt, C  2 C,D,0> ,
  303.                                          <5sctt, C 30 C,D,0> ,
  304.                                          <5sect, C 29 C,D,0> ,
  305.                                          <5reqt, C 28 C,O,0> ,
  306.                                          <5prgs, C 27 C,D,0> ,
  307.                                          <5alrt, C 26 C,O,0> ,
  308.                                          <5extt, C 25 C,O,0> ,
  309.                                          <5rftt, C 24 C,O,0> ,
  310.                                          <5etlt, C 23 C,O,0> ,
  311.                                          <5exct, C 22 C,O,0> ,
  312.                                          <5nrot, C 21 C,O,0> }
  313.  
  314. ReadArgument               LABEL     = 5rea2               T=0
  315.                            STRUCTURE = SET                 C=0
  316.                            CHILDREN  = { <5nam4, C  0 C,M,0> ,
  317.                                          <5ent2, C  1 C,D,0> ,
  318.                                          <5mrr2, C  2 C,D,0> ,
  319.                                          <5sctt, C 30 C,D,0> ,
  320.                                          <5sect, C 29 C,D,0> ,
  321.                                          <5reqt, C 28 C,O,0> ,
  322.                                          <5prgs, C 27 C,D,0> ,
  323.                                          <5alrt, C 26 C,O,0> ,
  324.                                          <5extt, C 25 C,O,0> ,
  325.                                          <5rftt, C 24 C,O,0> ,
  326.                                          <5etlt, C 23 C,O,0> ,
  327.                                          <5exct, C 22 C,O,0> ,
  328.                                          <5nrot, C 21 C,O,0> }
  329.  
  330. requestorTag               LABEL     = 5reqt               T=special case
  331.                            STRUCTURE = TAG
  332.                            CHILDREN  = { <5reqr, U 16 C,M,0> }
  333.  
  334. requestor                  LABEL     = 5reqr
  335.                            STRUCTURE = SEQUENCE OF
  336.                            CHILDREN  = { <5rldn, U 17 C,M,0> }
  337.  
  338. modifyRightsRequestTag     LABEL     = 5mrrt               T=MODIFY_RIGHTS_REQ
  339.                            STRUCTURE = TAG
  340.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  341.  
  342. modifyRightsRequestTag     LABEL     = 5mrr2               T=DG_MODIFY_RIGHTS_R
  343.                            STRUCTURE = TAG
  344.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  345.  
  346. entryOnlyTag               LABEL     = 5etlt               T=ENTRY_ONLY
  347.                            STRUCTURE = TAG
  348.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  349.  
  350. nameResolveOnMasterTag     LABEL     = 5nrot               T=NAME_RESOLVE_ON...
  351.                            STRUCTURE = TAG
  352.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  353.  
  354. (*****************************************************************************)
  355. (* Compare Operation Arguments                                               *)
  356. (*****************************************************************************)
  357. CompareArgument            LABEL     = 5cmpr               T=0
  358.                            STRUCTURE = SET                 C=ABS_ARGS
  359.                            CHILDREN  = { <5nam1, C  0 C,M,0> ,
  360.                                          <5purp, C  1 C,M,0> ,
  361.                                          <5msbt, C  2 C,O,0> ,
  362.                                          <5sctt, C 30 C,D,0> ,
  363.                                          <5sect, C 29 C,D,0> ,
  364.                                          <5reqt, C 28 C,O,0> ,
  365.                                          <5prgs, C 27 C,D,0> ,
  366.                                          <5alrt, C 26 C,O,0> ,
  367.                                          <5extt, C 25 C,O,0> ,
  368.                                          <5rftt, C 24 C,O,0> ,
  369.                                          <5etlt, C 23 C,O,0> ,
  370.                                          <5exct, C 22 C,O,0> ,
  371.                                          <5nrot, C 21 C,O,0> }
  372.  
  373. CompareArgument            LABEL     = 5cmp2               T=0
  374.                            STRUCTURE = SET                 C=0
  375.                            CHILDREN  = { <5nam4, C  0 C,M,0> ,
  376.                                          <5pur2, C  1 C,M,0> ,
  377.                                          <5sctt, C 30 C,D,0> ,
  378.                                          <5sect, C 29 C,D,0> ,
  379.                                          <5reqt, C 28 C,O,0> ,
  380.                                          <5prgs, C 27 C,D,0> ,
  381.                                          <5alrt, C 26 C,O,0> ,
  382.                                          <5extt, C 25 C,O,0> ,
  383.                                          <5rftt, C 24 C,O,0> ,
  384.                                          <5etlt, C 23 C,O,0> ,
  385.                                          <5exct, C 22 C,O,0> ,
  386.                                          <5nrot, C 21 C,O,0> }
  387.  
  388. purported                  LABEL     = 5purp               T=ABS_AVA
  389.                            STRUCTURE = TAG
  390.                            CHILDREN  = { <5ava1, U 16 C,M,0> }
  391.  
  392. purported                  LABEL     = 5pur2               T=DG_AVA
  393.                            STRUCTURE = TAG
  394.                            CHILDREN  = { <5ava1, U 16 C,M,0> }
  395.  
  396. (*****************************************************************************)
  397. (* Abandon Operation Arguments                                               *)
  398. (*****************************************************************************)
  399.  
  400. AbandonArgument            LABEL     = 5aban               T=0
  401.                            STRUCTURE = SEQUENCE            C=ABS_ARGS
  402.                            CHILDREN  = { <5ivi2, C  0 C,M,0> }
  403.  
  404. InvokeID                   LABEL     = 5ivid
  405.                            STRUCTURE = TAG
  406.                            CHILDREN  = { <5inid, C  2 P,M,0> }
  407.  
  408. InvokeID2                  LABEL     = 5ivi2               T=ABS_INVOKE_ID
  409.                            STRUCTURE = TAG
  410.                            CHILDREN  = { <5inid, C  2 P,M,0> }
  411.  
  412. (*****************************************************************************)
  413. (* List Operation Arguments                                                  *)
  414. (*****************************************************************************)
  415. ListArgument               LABEL     = 5list               T=0
  416.                            STRUCTURE = SET                 C=ABS_ARGS
  417.                            CHILDREN  = { <5nam1, C  0 C,M,0> ,
  418.                                          <5pgrt, C  1 C,O,0> ,
  419.                                          <5sctt, C 30 C,D,0> ,
  420.                                          <5sect, C 29 C,D,0> ,
  421.                                          <5reqt, C 28 C,O,0> ,
  422.                                          <5prgs, C 27 C,D,0> ,
  423.                                          <5alrt, C 26 C,O,0> ,
  424.                                          <5extt, C 25 C,O,0> ,
  425.                                          <5rftt, C 24 C,O,0> ,
  426.                                          <5etlt, C 23 C,O,0> ,
  427.                                          <5exct, C 22 C,O,0> ,
  428.                                          <5nrot, C 21 C,O,0> }
  429.  
  430. ListArgument               LABEL     = 5lis2               T=0
  431.                            STRUCTURE = SET                 C=0
  432.                            CHILDREN  = { <5nam4, C  0 C,M,0> ,
  433.                                          <5pgrt, C  1 C,O,0>D,
  434.                                          <5sctt, C 30 C,D,0> ,
  435.                                          <5sect, C 29 C,D,0> ,
  436.                                          <5reqt, C 28 C,O,0> ,
  437.                                          <5prgs, C 27 C,D,0> ,
  438.                                          <5alrt, C 26 C,O,0> ,
  439.                                          <5extt, C 25 C,O,0> ,
  440.                                          <5rftt, C 24 C,O,0> ,
  441.                                          <5etlt, C 23 C,O,0> ,
  442.                                          <5exct, C 22 C,O,0> ,
  443.                                          <5nrot, C 21 C,O,0> }
  444.  
  445. (*****************************************************************************)
  446. (* Search Operation Arguments                                                *)
  447. (*****************************************************************************)
  448. SearchArgument             LABEL     = 5srch               T=0
  449.                            STRUCTURE = SET                 C=ABS_ARGS
  450.                            CHILDREN  = { <5nam1, C  0 C,M,0> ,
  451.                                          <5subt, C  1 C,D,0> ,
  452.                                          <5salt, C  3 C,D,0> ,
  453.                                          <5entt, C  4 C,D,0> ,
  454.                                          <5pgrt, C  5 C,O,0> ,
  455.                                          <5mcht, C  6 C,D,0> ,
  456.                                          <5xflt, C  7 C,O,0> ,
  457.                                          <5sctt, C 30 C,D,0> ,
  458.                                          <5sect, C 29 C,D,0> ,
  459.                                          <5reqt, C 28 C,O,0> ,
  460.                                          <5prgs, C 27 C,D,0> ,
  461.                                          <5alrt, C 26 C,O,0> ,
  462.                                          <5extt, C 25 C,O,0> ,
  463.                                          <5rftt, C 24 C,O,0> ,
  464.                                          <5etlt, C 23 C,O,0> ,
  465.                                          <5exct, C 22 C,O,0> ,
  466.                                          <5nrot, C 21 C,O,0> ,
  467.                                          <5filt, C  2 C,D,0> }
  468.  
  469. SearchArgument             LABEL     = 5src2               T=0
  470.                            STRUCTURE = SET                 C=0
  471.                            CHILDREN  = { <5nam4, C  0 C,M,0> ,
  472.                                          <5sub2, C  1 C,D,0> ,
  473.                                          <5sal2, C  3 C,D,0> ,
  474.                                          <5ent2, C  4 C,D,0> ,
  475.                                          <5pgrt, C  5 C,O,0>D,
  476.                                          <5mch2, C  6 C,D,0> ,
  477.                                          <5xfl2, C  7 C,O,0> ,
  478.                                          <5sctt, C 30 C,D,0> ,
  479.                                          <5sect, C 29 C,D,0> ,
  480.                                          <5reqt, C 28 C,O,0> ,
  481.                                          <5prgs, C 27 C,D,0> ,
  482.                                          <5alrt, C 26 C,O,0> ,
  483.                                          <5extt, C 25 C,O,0> ,
  484.                                          <5rftt, C 24 C,O,0> ,
  485.                                          <5etlt, C 23 C,O,0> ,
  486.                                          <5exct, C 22 C,O,0> ,
  487.                                          <5nrot, C 21 C,O,0> ,
  488.                                          <5filt, C  2 C,D,0> }
  489.  
  490. SubsetTag                  LABEL     = 5subt               T=ABS_SUBSET
  491.                            STRUCTURE = TAG
  492.                            CHILDREN  = { <5subs, U 02 P,M,0> }
  493.  
  494. SubsetTag                  LABEL     = 5sub2               T=DG_SUBSET
  495.                            STRUCTURE = TAG
  496.                            CHILDREN  = { <5sub3, U 02 P,M,0> }
  497.  
  498. Subset                     LABEL     = 5subs               T=0
  499.                            STRUCTURE = INTEGER             C=oivrintg
  500.  
  501. Subset                     LABEL     = 5sub3               T=0
  502.                            STRUCTURE = INTEGER             C=oivrenum
  503.  
  504. SearchAliasesTag           LABEL     = 5salt               T=ABS_SEARCH_ALIASES
  505.                            STRUCTURE = TAG
  506.                            CHILDREN  = { <5sals, U 01 P,M,0> }
  507.  
  508. SearchAliasesTag           LABEL     = 5sal2               T=DG_SEARCH_ALIASES
  509.                            STRUCTURE = TAG
  510.                            CHILDREN  = { <5sals, U 01 P,M,0> }
  511.  
  512. SearchAliases              LABEL     = 5sals               T=0
  513.                            STRUCTURE = BOOLEAN             C=oivrbool
  514.  
  515. matchedValuesOnlyTag       LABEL     = 5mcht               T=ABS_MATCHED_VAL...
  516.                            STRUCTURE = TAG
  517.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  518.  
  519. matchedValuesOnlyTag       LABEL     = 5mch2               T=DG_MATCHED_VAL...
  520.                            STRUCTURE = TAG
  521.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  522.  
  523. extendedFilter             LABEL     = 5xflt               T=special case
  524.                            STRUCTURE = CHOICE
  525.                            TAG       = (C 7 C)
  526.                            CHILDREN  = { <5fili, C  0 C,O,0> ,
  527.                                          <5andt, C  1 C,O,0> ,
  528.                                          <5orxt, C  2 C,O,0> ,
  529.                                          <5nott, C  3 C,O,0> }
  530.  
  531. extendedFilter             LABEL     = 5xfl2               T=special case
  532.                            STRUCTURE = CHOICE
  533.                            TAG       = (C 7 C)
  534.                            CHILDREN  = { <5fili, C  0 C,O,0> ,
  535.                                          <5andt, C  1 C,O,0> ,
  536.                                          <5orxt, C  2 C,O,0> ,
  537.                                          <5nott, C  3 C,O,0> }
  538.  
  539. (*****************************************************************************)
  540. (* Filters for search.                                                       *)
  541. (*****************************************************************************)
  542.  
  543. Filter(top level)          LABEL     = 5filt               T=special case
  544.                            STRUCTURE = CHOICE
  545.                            TAG       = (C 2 C)
  546.                            CHILDREN  = { <5fili, C  0 C,O,0> ,
  547.                                          <5andt, C  1 C,O,0> ,
  548.                                          <5orxt, C  2 C,O,0> ,
  549.                                          <5nott, C  3 C,O,0> }
  550.  
  551. Filter(nested)             LABEL     = 5filn               T=special case
  552.                            STRUCTURE = CHOICE
  553.                            CHILDREN  = { <5fili, C  0 C,O,0> ,
  554.                                          <5andt, C  1 C,O,0> ,
  555.                                          <5orxt, C  2 C,O,0> ,
  556.                                          <5nott, C  3 C,O,0> }
  557.  
  558. FilterItem                 LABEL     = 5fili               T=special case
  559.                            STRUCTURE = CHOICE
  560.                            TAG       = (C 0 C)
  561.                            CHILDREN  = { <5equa, C  0 C,O,0> ,
  562.                                          <5sstt, C  1 C,O,0> ,
  563.                                          <5greq, C  2 C,O,0> ,
  564.                                          <5leeq, C  3 C,O,0> ,
  565.                                          <5psnt, C  4 C,O,0> ,
  566.                                          <5appm, C  5 C,O,0> ,
  567.                                          <5exmt, C  6 C,O,0> }
  568.  
  569. Equal                      LABEL     = 5equa               T=special case
  570.                            STRUCTURE = TAG
  571.                            CHILDREN  = { <5ava3, U 16 C,M,0> }
  572.  
  573. Substrings TAG             LABEL     = 5sstt               T=special case
  574.                            STRUCTURE = TAG
  575.                            CHILDREN  = { <5sstr, U 16 C,M,0> }
  576.  
  577. Substrings                 LABEL     = 5sstr
  578.                            STRUCTURE = SEQUENCE
  579.                            CHILDREN  = { <5atty, U  6 P,M,0> ,
  580.                                          <5strs, U 16 C,M,0> }
  581.  
  582. Strings                    LABEL     = 5strs
  583.                            STRUCTURE = SEQUENCE OF
  584.                            CHILDREN  = { <5strg, U  0 P,O,0> }
  585.  
  586. String                     LABEL     = 5strg               T=special case
  587.                            STRUCTURE = CHOICE
  588.                            CHILDREN  = { <5init, C  0 C,O,0> ,
  589.                                          <5anyx, C  1 C,O,0> ,
  590.                                          <5finl, C  2 C,O,0> }
  591.  
  592. Initial                    LABEL     = 5init               T=special case
  593.                            STRUCTURE = TAG
  594.                            CHILDREN  = { <5ssvl, U  0 P,M,0> }
  595.  
  596. Any                        LABEL     = 5anyx               T=special case
  597.                            STRUCTURE = TAG
  598.                            CHILDREN  = { <5ssvl, U  0 P,M,0> }
  599.  
  600. Final                      LABEL     = 5finl               T=special case
  601.                            STRUCTURE = TAG
  602.                            CHILDREN  = { <5ssvl, U  0 P,M,0> }
  603.  
  604. SubstringValue             LABEL     = 5ssvl               T=special case
  605.                            STRUCTURE = ANY
  606.                                        { }
  607.  
  608. GreaterOrEqual             LABEL     = 5greq               T=special case
  609.                            STRUCTURE = TAG
  610.                            CHILDREN  = { <5ava3, U 16 C,M,0> }
  611.  
  612. LessOrEqual                LABEL     = 5leeq               T=special case
  613.                            STRUCTURE = TAG
  614.                            CHILDREN  = { <5ava3, U 16 C,M,0> }
  615.  
  616. Present                    LABEL     = 5psnt               T=special case
  617.                            STRUCTURE = TAG
  618.                            CHILDREN  = { <5atty, U  6 P,M,0> }
  619.  
  620. ApproximateMatch           LABEL     = 5appm               T=special case
  621.                            STRUCTURE = TAG
  622.                            CHILDREN  = { <5ava3, U 16 C,M,0> }
  623.  
  624. And TAG                    LABEL     = 5andt               T=special case
  625.                            STRUCTURE = TAG
  626.                            CHILDREN  = { <5andx, U 17 C,M,0> }
  627.  
  628. And                        LABEL     = 5andx
  629.                            STRUCTURE = SET OF
  630.                            CHILDREN  = { <5filn, U  0 P,O,0> }
  631.  
  632. Or TAG                     LABEL     = 5orxt               T=special case
  633.                            STRUCTURE = TAG
  634.                            CHILDREN  = { <5orxx, U 17 C,M,0> }
  635.  
  636. Or                         LABEL     = 5orxx
  637.                            STRUCTURE = SET OF
  638.                            CHILDREN  = { <5filn, U  0 P,O,0> }
  639.  
  640. Not TAG                    LABEL     = 5nott               T=special case
  641.                            STRUCTURE = TAG
  642.                            CHILDREN  = { <5filn, U  0 P,O,0> }
  643.  
  644. extensibleMatchTag         LABEL     = 5exmt               T=special case
  645.                            STRUCTURE = TAG
  646.                            CHILDREN  = { <5extm, U 16 P,M,0> }
  647.  
  648. (*****************************************************************************)
  649. (* This is an educated assessment of ASN.1 which is defined in X.680. X.680  *)
  650. (* is not currently available so this should be reviewed when the            *)
  651. (* definitions are known.                                                    *)
  652. (*****************************************************************************)
  653. extensibleMatch            LABEL     = 5extm               T=EXTENDED_MATCH
  654.                            STRUCTURE = SEQUENCE            C=MATCHING_RULE_ASS.
  655.                            CHILDREN  = { <5mcrt, C  0 C,M,10>,
  656.                                          <5attt, C  1 C,O,0> ,
  657.                                          <5mchv, C  2 C,M,0> ,
  658.                                          <5dnat, C  4 C,D,0> }
  659.  
  660. matchingRuleTag            LABEL     = 5mcrt
  661.                            STRUCTURE = TAG
  662.                            CHILDREN  = { <5mcrs, U 17 C,M,0> }
  663.  
  664. matchingRuleSet            LABEL     = 5mcrs
  665.                            STRUCTURE = SET OF
  666.                            CHILDREN  = { <5mchr, U  6 P,M,0> }
  667.  
  668. matchingRule               LABEL     = 5mchr               T=MATCHING_RULE
  669.                            STRUCTURE = OBJECT IDENTIFIER
  670.  
  671. attributevalueTag          LABEL     = 5attt
  672.                            STRUCTURE = TAG
  673.                            CHILDREN  = { <5atty, U  6 P,M,0> }
  674.  
  675. matchValueTag              LABEL     = 5mchv               T=special case
  676.                            STRUCTURE = ANY
  677.                            CHILDREN  = { }
  678.  
  679. dnAttributesTag            LABEL     = 5dnat               T=DN_ATTRIBUTES
  680.                            STRUCTURE = TAG
  681.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  682.  
  683. (*****************************************************************************)
  684. (* PagedResultsRequest                                                       *)
  685. (*****************************************************************************)
  686. PagesResultsRequestTag     LABEL     = 5pgrt
  687.                            STRUCTURE = TAG
  688.                            CHILDREN  = { <5pgrc, U  0 P,M,0> }
  689.  
  690. PagedResultsRequest        LABEL     = 5pgrc               T=PAGED_RESULTS
  691.                            STRUCTURE = CHOICE              C=PAGED_RESULTS_REQ.
  692.                            CHILDREN  = { <5nwrq, U 16 C,O,0> ,
  693.                                          <5qrif, U  4 P,M,0> }
  694.  
  695. newRequest                 LABEL     = 5nwrq
  696.                            STRUCTURE = SEQUENCE
  697.                            CHILDREN  = { <5pgsz, U  2 P,M,0> ,
  698.                                          <5stks, U 16 C,O,0> ,
  699.                                          <5revt, C  1 C,D,0> ,
  700.                                          <5umgt, C  2 C,D,0> }
  701.  
  702. pageSize                   LABEL     = 5pgsz               T=PAGE_SIZE
  703.                            STRUCTURE = INTEGER
  704.  
  705. sortKeys                   LABEL     = 5stks
  706.                            STRUCTURE = SEQUENCE OF
  707.                            CHILDREN  = { <5stky, U 16 C,M,0> }
  708.  
  709. sortKeys                   LABEL     = 5stky               T=SORT_KEY
  710.                            STRUCTURE = SEQUENCE            C=SORT_KEY
  711.                            CHILDREN  = { <5atty, U  6 P,M,0> ,
  712.                                          <5orrl, U  6 P,O,0> }
  713.  
  714. orderingRule               LABEL     = 5orrl               T=ORDERING_RULE
  715.                            STRUCTURE = OBJECT IDENTIFIER
  716.  
  717. reverseTag                 LABEL     = 5revt               T=REVERSE
  718.                            STRUCTURE = TAG
  719.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  720.  
  721. unmergedTag                LABEL     = 5umgt               T=UNMERGED
  722.                            STRUCTURE = TAG
  723.                            CHILDREN  = { <Cbool, U  1 P,M,0> }
  724.  
  725. queryReference             LABEL     = 5qrif               T=QUERY_REFERENCE
  726.                            STRUCTURE = OCTET STRING
  727.  
  728. (*****************************************************************************)
  729. (* Add Entry Operation Arguments                                             *)
  730. (*****************************************************************************)
  731. AddEntryArgument           LABEL     = 5adde               T=0
  732.                            STRUCTURE = SET                 C=ABS_ARGS
  733.                            CHILDREN  = { <5dnm1, C  0 C,M,0> ,
  734.                                          <5ntrt, C  1 C,M,0> ,
  735.                                          <5tgtt, C  2 C,O,0> ,
  736.                                          <5sctt, C 30 C,D,0> ,
  737.                                          <5sect, C 29 C,D,0> ,
  738.                                          <5reqt, C 28 C,O,0> ,
  739.                                          <5prgs, C 27 C,D,0> ,
  740.                                          <5alrt, C 26 C,O,0> ,
  741.                                          <5extt, C 25 C,O,0> ,
  742.                                          <5rftt, C 24 C,O,0> ,
  743.                                          <5etlt, C 23 C,O,0> ,
  744.                                          <5exct, C 22 C,O,0> ,
  745.                                          <5nrot, C 21 C,O,0> }
  746.  
  747. AddEntryArgument           LABEL     = 5add2               T=0
  748.                            STRUCTURE = SET                 C=0
  749.                            CHILDREN  = { <5dnm3, C  0 C,M,0> ,
  750.                                          <5ntr2, C  1 C,M,0> ,
  751.                                          <5tgt2, C  2 C,O,0> ,
  752.                                          <5sctt, C 30 C,D,0> ,
  753.                                          <5sect, C 29 C,D,0> ,
  754.                                          <5reqt, C 28 C,O,0> ,
  755.                                          <5prgs, C 27 C,D,0> ,
  756.                                          <5alrt, C 26 C,O,0> ,
  757.                                          <5extt, C 25 C,O,0> ,
  758.                                          <5rftt, C 24 C,O,0> ,
  759.                                          <5etlt, C 23 C,O,0> ,
  760.                                          <5exct, C 22 C,O,0> ,
  761.                                          <5nrot, C 21 C,O,0> }
  762.  
  763. EntryTag                   LABEL     = 5ntrt               T=ABS_ENTRY
  764.                            STRUCTURE = TAG
  765.                            CHILDREN  = { <5entr, U 17 C,M,0> }
  766.  
  767. EntryTag                   LABEL     = 5ntr2               T=DG_ENTRY
  768.                            STRUCTURE = TAG
  769.                            CHILDREN  = { <5entr, U 17 C,M,0> }
  770.  
  771. Entry                      LABEL     = 5entr               T=0
  772.                            STRUCTURE = SET OF              C=ATTRIBUTE_LIST
  773.                            CHILDREN  = { <5att2, U 16 C,O,0> }
  774.  
  775. TargetSystemTag            LABEL     = 5tgtt               T=TARGET_SYSTEM
  776.                            STRUCTURE = TAG
  777.                            CHILDREN  = { <5acpt, U 17 C,M,0> }
  778.  
  779. TargetSystemTag            LABEL     = 5tgt2               T=special case
  780.                            STRUCTURE = TAG                 (not supp. on dec.)
  781.                            CHILDREN  = { <5acpt, U 17 C,M,0> }
  782.  
  783. (*****************************************************************************)
  784. (* Remove Entry Operation Arguments                                          *)
  785. (*****************************************************************************)
  786. RemoveEntryArgument        LABEL     = 5reme               T=0
  787.                            STRUCTURE = SET                 C=ABS_ARGS
  788.                            CHILDREN  = { <5dnm1, C  0 C,M,0> ,
  789.                                          <5sctt, C 30 C,D,0> ,
  790.                                          <5sect, C 29 C,D,0> ,
  791.                                          <5reqt, C 28 C,O,0> ,
  792.                                          <5prgs, C 27 C,D,0> ,
  793.                                          <5alrt, C 26 C,O,0> ,
  794.                                          <5extt, C 25 C,O,0> ,
  795.                                          <5rftt, C 24 C,O,0> ,
  796.                                          <5etlt, C 23 C,O,0> ,
  797.                                          <5exct, C 22 C,O,0> ,
  798.                                          <5nrot, C 21 C,O,0> }
  799.  
  800. RemoveEntryArgument        LABEL     = 5rem2               T=0
  801.                            STRUCTURE = SET                 C=0
  802.                            CHILDREN  = { <5dnm3, C  0 C,M,0> ,
  803.                                          <5sctt, C 30 C,D,0> ,
  804.                                          <5sect, C 29 C,D,0> ,
  805.                                          <5reqt, C 28 C,O,0> ,
  806.                                          <5prgs, C 27 C,D,0> ,
  807.                                          <5alrt, C 26 C,O,0> ,
  808.                                          <5extt, C 25 C,O,0> ,
  809.                                          <5rftt, C 24 C,O,0> ,
  810.                                          <5etlt, C 23 C,O,0> ,
  811.                                          <5exct, C 22 C,O,0> ,
  812.                                          <5nrot, C 21 C,O,0> }
  813.  
  814. (*****************************************************************************)
  815. (* Modify Entry Operation Arguments                                          *)
  816. (*****************************************************************************)
  817. ModifyEntryArgument        LABEL     = 5mode               T=0
  818.                            STRUCTURE = SET                 C=ABS_ARGS
  819.                            CHILDREN  = { <5dnm1, C  0 C,M,0> ,
  820.                                          <5chnt, C  1 C,M,0> ,
  821.                                          <5sctt, C 30 C,D,0> ,
  822.                                          <5sect, C 29 C,D,0> ,
  823.                                          <5reqt, C 28 C,O,0> ,
  824.                                          <5prgs, C 27 C,D,0> ,
  825.                                          <5alrt, C 26 C,O,0> ,
  826.                                          <5extt, C 25 C,O,0> ,
  827.                                          <5rftt, C 24 C,O,0> ,
  828.                                          <5etlt, C 23 C,O,0> ,
  829.                                          <5exct, C 22 C,O,0> ,
  830.                                          <5nrot, C 21 C,O,0> }
  831.  
  832. ModifyEntryArgument        LABEL     = 5mod2               T=0
  833.                            STRUCTURE = SET                 C=0
  834.                            CHILDREN  = { <5dnm3, C  0 C,M,0> ,
  835.                                          <5chn2, C  1 C,M,0> ,
  836.                                          <5sctt, C 30 C,D,0> ,
  837.                                          <5sect, C 29 C,D,0> ,
  838.                                          <5reqt, C 28 C,O,0> ,
  839.                                          <5prgs, C 27 C,D,0> ,
  840.                                          <5alrt, C 26 C,O,0> ,
  841.                                          <5extt, C 25 C,O,0> ,
  842.                                          <5rftt, C 24 C,O,0> ,
  843.                                          <5etlt, C 23 C,O,0> ,
  844.                                          <5exct, C 22 C,O,0> ,
  845.                                          <5nrot, C 21 C,O,0> }
  846.  
  847. ChangesTag                 LABEL     = 5chnt               T=ABS_CHANGES
  848.                            STRUCTURE = TAG
  849.                            CHILDREN  = { <5chgs, U 16 C,M,0> }
  850.  
  851. ChangesTag                 LABEL     = 5chn2               T=DG_CHANGES
  852.                            STRUCTURE = TAG
  853.                            CHILDREN  = { <5chg2, U 16 C,M,0> }
  854.  
  855. Changes                    LABEL     = 5chgs               T=0
  856.                            STRUCTURE = SEQUENCE OF         C=ENTRY_MOD_LIST
  857.                            CHILDREN  = { <5emod, U  0 P,O,0> }
  858.  
  859. Changes                    LABEL     = 5chg2               T=0
  860.                            STRUCTURE = SEQUENCE OF         C=ENTRY_MOD_LIST
  861.                            CHILDREN  = { <5emo2, U  0 P,O,0> }
  862.  
  863. EntryModification          LABEL     = 5emod               T=special case
  864.                            STRUCTURE = CHOICE
  865.                            CHILDREN  = { <5adat, C  0 C,O,0> ,
  866.                                          <5rmat, C  1 C,O,0> ,
  867.                                          <5advl, C  2 C,O,0> ,
  868.                                          <5rmvl, C  3 C,O,0> }
  869.  
  870. EntryModification          LABEL     = 5emo2               T=CHANGES
  871.                            STRUCTURE = CHOICE              C=ENTRY_MODIFICATION
  872.                            CHILDREN  = { <5adat, C  0 C,O,0> ,
  873.                                          <5rmat, C  1 C,O,0> ,
  874.                                          <5advl, C  2 C,O,0> ,
  875.                                          <5rmvl, C  3 C,O,0> }
  876.  
  877. AddAttribute               LABEL     = 5adat               T=special case
  878.                            STRUCTURE = TAG
  879.                            CHILDREN  = { <5attr, U 16 C,M,0> }
  880.  
  881. RemoveAttribute            LABEL     = 5rmat               T=special case
  882.                            STRUCTURE = TAG
  883.                            CHILDREN  = { <5atty, U  6 P,M,0> }
  884.  
  885. AddValues                  LABEL     = 5advl               T=special case
  886.                            STRUCTURE = TAG
  887.                            CHILDREN  = { <5attr, U 16 C,M,0> }
  888.  
  889. RemoveValues               LABEL     = 5rmvl               T=special case
  890.                            STRUCTURE = TAG
  891.                            CHILDREN  = { <5attr, U 16 C,M,0> }
  892.  
  893. (*****************************************************************************)
  894. (* Modify (R)DN Operation Arguments                                          *)
  895. (*****************************************************************************)
  896. Modify(R)DNArgument        LABEL     = 5modr               T=0
  897.                            STRUCTURE = SET                 C=ABS_ARGS
  898.                            CHILDREN  = { <5dnm1, C  0 C,M,0> ,
  899.                                          <5nrdn, C  1 C,M,0> ,
  900.                                          <5rdnt, C  2 C,D,0> ,
  901.                                          <5sctt, C 30 C,D,0> ,
  902.                                          <5sect, C 29 C,D,0> ,
  903.                                          <5reqt, C 28 C,O,0> ,
  904.                                          <5prgs, C 27 C,D,0> ,
  905.                                          <5alrt, C 26 C,O,0> ,
  906.                                          <5extt, C 25 C,O,0> ,
  907.                                          <5rftt, C 24 C,O,0> ,
  908.                                          <5etlt, C 23 C,O,0> ,
  909.                                          <5exct, C 22 C,O,0> ,
  910.                                          <5nrot, C 21 C,O,0> }
  911.  
  912. Modify(R)DNArgument        LABEL     = 5mod3               T=0
  913.                            STRUCTURE = SET                 C=0
  914.                            CHILDREN  = { <5dnm3, C  0 C,M,0> ,
  915.                                          <5nrd2, C  1 C,M,0> ,
  916.                                          <5rdt2, C  2 C,D,0> ,
  917.                                          <5dnm4, C  3 C,O,0> ,
  918.                                          <5sctt, C 30 C,D,0> ,
  919.                                          <5sect, C 29 C,D,0> ,
  920.                                          <5reqt, C 28 C,O,0> ,
  921.                                          <5prgs, C 27 C,D,0> ,
  922.                                          <5alrt, C 26 C,O,0> ,
  923.                                          <5extt, C 25 C,O,0> ,
  924.                                          <5rftt, C 24 C,O,0> ,
  925.                                          <5etlt, C 23 C,O,0> ,
  926.                                          <5exct, C 22 C,O,0> ,
  927.                                          <5nrot, C 21 C,O,0> }
  928.  
  929. NewRDN                     LABEL     = 5nrdn               T=ABS_NEW_RDN
  930.                            STRUCTURE = TAG
  931.                            CHILDREN  = { <5rldn, U 17 C,M,0> }
  932.  
  933. NewRDN                     LABEL     = 5nrd2               T=DG_NEW_RDN
  934.                            STRUCTURE = TAG
  935.                            CHILDREN  = { <5rldn, U 17 C,M,0> }
  936.  
  937. DeleteOldRDNTag            LABEL     = 5rdnt               T=ABS_DELETE_OLD_RDN
  938.                            STRUCTURE = TAG
  939.                            CHILDREN  = { <5ordn, U  1 P,M,0> }
  940.  
  941. DeleteOldRDNTag            LABEL     = 5rdt2               T=DG_DELETE_OLD_RDN
  942.                            STRUCTURE = TAG
  943.                            CHILDREN  = { <5ordn, U  1 P,M,0> }
  944.  
  945. DeleteOldRDN               LABEL     = 5ordn               T=0
  946.                            STRUCTURE = BOOLEAN             C=oivrbool
  947.  
  948. (*****************************************************************************)
  949. (* Browse Operation Arguments                                                *)
  950. (*****************************************************************************)
  951. BrowseArgument             LABEL     = 5brow               T=0
  952.                            STRUCTURE = SET                 C=ABS_ARGS
  953.                            CHILDREN  = { <5bcot, C  1 C,M,0> ,
  954.                                          <5noet, C  2 C,M,0> ,
  955.                                          <5numt, C  3 C,M,0> ,
  956.                                          <5dent, C  4 C,M,0> ,
  957.                                          <5sctt, C 30 C,D,0> ,
  958.                                          <5sect, C 29 C,D,0> ,
  959.                                          <5reqt, C 28 C,O,0> ,
  960.                                          <5prgs, C 27 C,D,0> ,
  961.                                          <5alrt, C 26 C,O,0> ,
  962.                                          <5extt, C 25 C,O,0> ,
  963.                                          <5rftt, C 24 C,O,0> ,
  964.                                          <5etlt, C 23 C,O,0> ,
  965.                                          <5exct, C 22 C,O,0> ,
  966.                                          <5nrot, C 21 C,O,0> }
  967.  
  968. BrowseContextTag           LABEL     = 5bcot               T=ABS_BROWSE_CONTEXT
  969.                            STRUCTURE = TAG
  970.                            CHILDREN  = { <5bcon, U  6 P,M,0> }
  971.  
  972. BrowseContext              LABEL     = 5bcon               T=0
  973.                            STRUCTURE = OBJECT IDENTIFIER   C=oivrobid
  974.  
  975. (*****************************************************************************)
  976. (* RESULTS                                                                   *)
  977. (*****************************************************************************)
  978.  
  979. (*****************************************************************************)
  980. (* Read Operation Result                                                     *)
  981. (*****************************************************************************)
  982. ReadResult                 LABEL     = 5rdrs               T=0
  983.                            STRUCTURE = SET                 C=READ_RESULT
  984.                            CHILDREN  = { <5enrt, C  0 C,M,0> ,
  985.                                          <5mdrt, C  1 C,O,0> ,
  986.                                          <5scpt, C 30 C,O,0> ,
  987.                                          <5pert, C 29 C,O,0> ,
  988.                                          <5alit, C 28 C,D,0> }
  989.  
  990. ModifyRightsTag            LABEL     = 5mdrt
  991.                            STRUCTURE = TAG
  992.                            CHILDREN  = { <5mdrs, U 17 C,M,0> }
  993.  
  994. ModifyRightsSetOf          LABEL     = 5mdrs
  995.                            STRUCTURE = SET OF
  996.                            CHILDREN  = { <5mdyr, U 16 C,M,0> }
  997.  
  998. ModifyRights               LABEL     = 5mdyr               T=MODIFY_RIGHTS
  999.                            STRUCTURE = SEQUENCE            C=MODIFY_RIGHTS
  1000.                            CHILDREN  = { <5itmt, U  0 P,M,0> ,
  1001.                                          <5pmst, C  3 C,M,0> }
  1002.  
  1003. item (ModifyRights)        LABEL     = 5itmt               T=special case
  1004.                            STRUCTURE = UNTAGGED CHOICE
  1005.                            CHILDREN  = { <5ient, C  0 C,M,0>,
  1006.                                          <5iatt, C  1 C,M,0>,
  1007.                                          <5iava, C  2 C,M,0> }
  1008.  
  1009. item-entry                 LABEL     = 5ient               T=special case
  1010.                            STRUCTURE = TAG
  1011.                            CHILDREN  = { <Cnull, U  5 P,M,0> }
  1012.  
  1013. item-value                 LABEL     = 5iatt               T=special case
  1014.                            STRUCTURE = TAG
  1015.                            CHILDREN  = { <5att4, U  6 P,M,0> }
  1016.  
  1017. item-value                 LABEL     = 5iava               T=special case
  1018.                            STRUCTURE = TAG
  1019.                            CHILDREN  = { <5ava4, U 16 C,M,0> }
  1020.  
  1021. permissionTag              LABEL     = 5pmst
  1022.                            STRUCTURE = TAG
  1023.                            CHILDREN  = { <5pmss, U  3 P,M,0> }
  1024.  
  1025. permissions                LABEL     = 5pmss               T=special case
  1026.                            STRUCTURE = BITSTRING
  1027.  
  1028.  
  1029. (*****************************************************************************)
  1030. (* Compare Operation Result                                                  *)
  1031. (*****************************************************************************)
  1032.  
  1033. CompareResult              LABEL     = 5cmrs               T=0
  1034.                            STRUCTURE = SET                 C=COMPARE_RESULT
  1035.                            CHILDREN  = { <5dst2, U 16 C,O,0> ,
  1036.                                          <5mtct, C  0 C,M,0> ,
  1037.                                          <5frot, C  1 C,D,0> ,
  1038.                                          <5msbt, C  2 C,O,0> ,
  1039.                                          <5scpt, C 30 C,O,0> ,
  1040.                                          <5pert, C 29 C,O,0> ,
  1041.                                          <5alit, C 28 C,D,0> }
  1042.  
  1043. matchedTag                 LABEL     = 5mtct               T=MATCHED
  1044.                            STRUCTURE = TAG
  1045.                            CHILDREN  = { <5mtch, U 01 P,M,0> }
  1046.  
  1047. matched                    LABEL     = 5mtch               T=MATCHED
  1048.                            STRUCTURE = BOOLEAN             C=oivrbool
  1049.  
  1050. matchedSubtypeTag          LABEL     = 5msbt               T=MATCHED_SUBTYPE
  1051.                            STRUCTURE = TAG
  1052.                            CHILDREN  = { <Cobid, U  6 P,M,0> }
  1053.  
  1054. (*****************************************************************************)
  1055. (* Abandon Operation has no Result                                           *)
  1056. (*****************************************************************************)
  1057.  
  1058. (*****************************************************************************)
  1059. (* List Operation Result                                                     *)
  1060. (*****************************************************************************)
  1061. ListResult                 LABEL     = 5lsrs               T=0
  1062.                            STRUCTURE = CHOICE              C=LIST_RESULT
  1063.                            CHILDREN  = { <5lnfo, U 17 C,O,0> ,
  1064.                                          <5ulnt, C  0 C,O,0> }
  1065.  
  1066. ListResult                 LABEL     = 5lsr2               T=special case
  1067.                            STRUCTURE = CHOICE
  1068.                            CHILDREN  = { <5lnfo, U 17 C,O,0> ,
  1069.                                          <5ulnt, C  0 C,O,0> }
  1070.  
  1071. ListInfo                   LABEL     = 5lnfo               T=LIST_INFO
  1072.                            STRUCTURE = SET                 C=LIST_INFO
  1073.                            CHILDREN  = { <5dst2, U 16 C,O,0> ,
  1074.                                          <5sbdt, C  1 C,M,0> ,
  1075.                                          <5poqt, C  2 C,O,0> ,
  1076.                                          <5scpt, C 30 C,O,0> ,
  1077.                                          <5pert, C 29 C,O,0> ,
  1078.                                          <5alit, C 28 C,D,0> }
  1079.  
  1080. SubOrdinatesTag            LABEL     = 5sbdt               T=0
  1081.                            STRUCTURE = TAG
  1082.                            CHILDREN  = { <5sbds, U 17 C,M,0> }
  1083.  
  1084. SubOrdinates               LABEL     = 5sbds               T=0
  1085.                            STRUCTURE = SET OF              C=0
  1086.                            CHILDREN  = { <5sbdn, U 16 C,O,0> }
  1087.  
  1088. SubOrdinate                LABEL     = 5sbdn               T=SUBORDINATES
  1089.                            STRUCTURE = SEQUENCE            C=LIST_INFO_ITEM
  1090.                            CHILDREN  = { <5rld3, U 17 C,M,0> ,
  1091.                                          <5alet, C  0 C,D,0> ,
  1092.                                          <5frot, C  1 C,D,0> }
  1093.  
  1094. AliasEntryTag              LABEL     = 5alet               T=ALIAS_ENTRY
  1095.                            STRUCTURE = TAG
  1096.                            CHILDREN  = { <5alia, U 01 P,M,0> }
  1097.  
  1098. AliasEntry                 LABEL     = 5alia               T=0
  1099.                            STRUCTURE = BOOLEAN             C=oivrbool
  1100.  
  1101. UncorrelatedListInfoTag    LABEL     = 5ulnt               T=UNCORRELATED_LIST_
  1102.                            STRUCTURE = TAG
  1103.                            CHILDREN  = { <5ulnf, U 17 C,M,0> }
  1104.  
  1105. UncorrelatedListInfo       LABEL     = 5ulnf               T=0
  1106.                            STRUCTURE = SET OF              C=0
  1107.                            CHILDREN  = { <5lsrs, U  0 P,O,0> }
  1108.  
  1109. (*****************************************************************************)
  1110. (* Search Operation Result                                                   *)
  1111. (*****************************************************************************)
  1112.  
  1113. SearchResult               LABEL     = 5srrs               T=0
  1114.                            STRUCTURE = CHOICE              C=SEARCH_RESULT
  1115.                            CHILDREN  = { <5snfo, U 17 C,O,0> ,
  1116.                                          <5usnt, C  0 C,O,0> }
  1117.  
  1118. SearchResult               LABEL     = 5srr2               T=special case
  1119.                            STRUCTURE = CHOICE
  1120.                            CHILDREN  = { <5snfo, U 17 C,O,0> ,
  1121.                                          <5usnt, C  0 C,O,0> }
  1122.  
  1123. SearchInfo                 LABEL     = 5snfo               T=SEARCH_INFO
  1124.                            STRUCTURE = SET                 C=SEARCH_INFO
  1125.                            CHILDREN  = { <5dst2, U 16 C,O,0> ,
  1126.                                          <5ntst, C  0 C,M,0> ,
  1127.                                          <5poqt, C  2 C,O,0> ,
  1128.                                          <5scpt, C 30 C,O,0> ,
  1129.                                          <5pert, C 29 C,O,0> ,
  1130.                                          <5alit, C 28 C,D,0> }
  1131.  
  1132. EntriesTag                 LABEL     = 5ntst               T=0
  1133.                            STRUCTURE = TAG
  1134.                            CHILDREN  = { <5ntrs, U 17 C,M,0> }
  1135.  
  1136. Entries                    LABEL     = 5ntrs               T=0
  1137.                            STRUCTURE = SET OF              C=0
  1138.                            CHILDREN  = { <5ent3, U 16 C,O,0> }
  1139.  
  1140. UncorrelatedSearchInfoTag  LABEL     = 5usnt               T=UNCORRELATED_SEAR
  1141.                            STRUCTURE = TAG
  1142.                            CHILDREN  = { <5usnf, U 17 C,M,0> }
  1143.  
  1144. UncorrelatedSearchInfo     LABEL     = 5usnf
  1145.                            STRUCTURE = SET OF
  1146.                            CHILDREN  = { <5srrs, U  0 P,O,0> }
  1147.  
  1148. (*****************************************************************************)
  1149. (* Browse Operation Result                                                   *)
  1150. (*****************************************************************************)
  1151.  
  1152. BrowseResult               LABEL     = 5brrs               T=0
  1153.                            STRUCTURE = SET                 C=BROWSE_RESULT
  1154.                            CHILDREN  = { <5noet, C  2 C,M,0> ,
  1155.                                          <5numt, C  3 C,M,0> ,
  1156.                                          <5dent, C  4 C,M,0> ,
  1157.                                          <5bitt, C  0 C,M,0> ,
  1158.                                          <5scpt, C 30 C,O,0> ,
  1159.                                          <5pert, C 29 C,O,0> ,
  1160.                                          <5alit, C 28 C,D,0> }
  1161.  
  1162. BrowseItemsTag             LABEL     = 5bitt               T=BROWSE_ITEMS
  1163.                            STRUCTURE = TAG
  1164.                            CHILDREN  = { <5bits, U 17 C,M,0> }
  1165.  
  1166. BrowseItems                LABEL     = 5bits               T=0
  1167.                            STRUCTURE = SET OF              C=0
  1168.                            CHILDREN  = { <5bitm, U 16 C,O,0> }
  1169.  
  1170. BrowseItem                 LABEL     = 5bitm               T=BROWSE_ITEMS
  1171.                            STRUCTURE = SEQUENCE            C=BROWSE_ITEM
  1172.                            CHILDREN  = { <5dst2, U 16 C,M,0> ,
  1173.                                          <5desc, U 19 P,M,0> }
  1174.  
  1175. description                LABEL     = 5desc               T=DESCRIPTION
  1176.                            STRUCTURE = PRINTABLE STRING    C=oivrptbl
  1177.  
  1178. (*****************************************************************************)
  1179. (* Common browse arguments/results                                           *)
  1180. (*****************************************************************************)
  1181. NumberofEntriesTag         LABEL     = 5noet               T=NUMBER_OF_ENTRIES
  1182.                            STRUCTURE = TAG
  1183.                            CHILDREN  = { <5noen, U  2 P,M,0> }
  1184.  
  1185. NumberofEntries            LABEL     = 5noen               T=0
  1186.                            STRUCTURE = INTEGER             C=oivrintg
  1187.  
  1188. NumeratorTag               LABEL     = 5numt               T=NUMERATOR
  1189.                            STRUCTURE = TAG
  1190.                            CHILDREN  = { <5numr, U  2 P,M,0> }
  1191.  
  1192. Numerator                  LABEL     = 5numr               T=0
  1193.                            STRUCTURE = INTEGER             C=oivrintg
  1194.  
  1195. DenominatorTag             LABEL     = 5dent               T=DENOMINATOR
  1196.                            STRUCTURE = TAG
  1197.                            CHILDREN  = { <5denr, U  2 P,M,0> }
  1198.  
  1199. Denominator                LABEL     = 5denr               T=0
  1200.                            STRUCTURE = INTEGER             C=oivrintg
  1201.  
  1202. (*****************************************************************************)
  1203. (* Common Results                                                            *)
  1204. (*****************************************************************************)
  1205. performerTag               LABEL     = 5pert               T=PERFORMER
  1206.                            STRUCTURE = TAG
  1207.                            CHILDREN  = { <5perf, U 16 C,M,0> }
  1208.  
  1209. performer                  LABEL     = 5perf               T=PERFORMER
  1210.                            STRUCTURE = SEQUENCE OF         C=DS_DN
  1211.                            CHILDREN  = { <5rld2, U 17 C,O,0> }
  1212.  
  1213. aliasDereferencedTag       LABEL     = 5alit               T=ALIAS_DEREFERENCED
  1214.                            STRUCTURE = TAG
  1215.                            CHILDREN  = { <5alid, U 01 P,M,0> }
  1216.  
  1217. aliasDereferencedTag       LABEL     = 5ali2               T=DG_ALIAS_DEREFER..
  1218.                            STRUCTURE = TAG
  1219.                            CHILDREN  = { <Cbool, U 01 P,M,0> }
  1220.  
  1221. aliasDereferenced          LABEL     = 5alid               T=ALIAS_DEREFERENCED
  1222.                            STRUCTURE = BOOLEAN             C=oivrbool
  1223.  
  1224. fromEntryTag               LABEL     = 5frot               T=FROM_ENTRY
  1225.                            STRUCTURE = TAG
  1226.                            CHILDREN  = { <5from, U 01 P,M,0> }
  1227.  
  1228. fromEntry                  LABEL     = 5from               T=FROM_ENTRY
  1229.                            STRUCTURE = BOOLEAN             C=oivrbool
  1230.  
  1231. SecurityParamResultTag     LABEL     = 5scpt               T=special case
  1232.                            STRUCTURE = TAG
  1233.                            CHILDREN  = { <5scpm, U 17 C,M,0> }
  1234.  
  1235. SecurityParametersResult   LABEL     = 5scpm
  1236.                            STRUCTURE = SET
  1237.                            CHILDREN  = { <5cpth, C  0 C,O,0> ,
  1238.                                          <5secn, C  1 C,O,0> ,
  1239.                                          <5scti, C  2 P,O,0> ,
  1240.                                          <5secr, C  3 P,O,0> ,
  1241.                                          <5prtr, C  4 P,O,0> }
  1242.  
  1243. PartialOutcomeQualifierTag LABEL     = 5poqt               T=PARTIAL_OUTCOME_QU
  1244.                            STRUCTURE = TAG
  1245.                            CHILDREN  = { <5poqu, U 17 C,M,0> }
  1246.  
  1247. PartialOutcomeQualifier    LABEL     = 5poqu               T=0
  1248.                            STRUCTURE = SET                 C=PARTIAL_OUTCOME_QU
  1249.                            CHILDREN  = { <5lmpt, C  0 C,O,0> ,
  1250.                                          <5unxt, C  1 C,O,0> ,
  1251.                                          <5ucxt, C  2 C,D,0> }
  1252.                                          <5unkt, C  3 C,O,0> ,
  1253.                                          <5qrft, C  4 C,O,0> }
  1254.  
  1255. LimitProblemTag            LABEL     = 5lmpt               T=LIMIT_PROBLEM
  1256.                            STRUCTURE = TAG
  1257.                            CHILDREN  = { <5limp, U 02 P,M,0> }
  1258.  
  1259. LimitProblem               LABEL     = 5limp               T=0
  1260.                            STRUCTURE = INTEGER             C=oivrenum
  1261.  
  1262. UnexploredTag              LABEL     = 5unxt               T=UNEXPLORED
  1263.                            STRUCTURE = TAG
  1264.                            CHILDREN  = { <5unex, U 17 C,M,0> }
  1265.  
  1266. Unexplored                 LABEL     = 5unex               T=0
  1267.                            STRUCTURE = SET OF              C=0
  1268.                            CHILDREN  = { <5ctrf, U 17 C,O,0> }
  1269.  
  1270. UnavailableCriticalExtsTag LABEL     = 5ucxt               T=UNAVAILABLE_CRIT_E
  1271.                            STRUCTURE = TAG
  1272.                            CHILDREN  = { <5ucex, U 01 P,M,0> }
  1273.  
  1274. UnavailableCriticalExtns   LABEL     = 5ucex               T=0
  1275.                            STRUCTURE = BOOLEAN             C=oivrbool
  1276.  
  1277. UnknownErrorsTag           LABEL     = 5unkt
  1278.                            STRUCTURE = TAG
  1279.                            CHILDREN  = { <5unks, U 17 C,M,0> }
  1280.  
  1281. UnknownErrorsSetOf         LABEL     = 5unks
  1282.                            STRUCTURE = SET OF
  1283.                            CHILDREN  = { <5unke, C  0 C,M,0> }
  1284.  
  1285. UnknownErrors              LABEL     = 5unke
  1286.                            STRUCTURE = ANY
  1287.                            CHILDREN  = { }
  1288.  
  1289. QueryReferenceTag          LABEL     = 5qrft
  1290.                            STRUCTURE = TAG
  1291.                            CHILDREN  = { <5qrif, U  4 P,M,0> }
  1292.  
  1293. (*****************************************************************************)
  1294. (* Remote Errors                                                             *)
  1295. (*****************************************************************************)
  1296.  
  1297. AbandonFailed              LABEL     = 5abfl               T=0
  1298.                            STRUCTURE = SET                 C=ABANDON_FAILED
  1299.                            CHILDREN  = { <5pro1, C  0 C,M,0> ,
  1300.                                          <5ivid, C  1 C,M,0> }
  1301.  
  1302. AttributeError             LABEL     = 5ater               T=0
  1303.                            STRUCTURE = SET                 C=ATTRIBUTE_ERROR
  1304.                            CHILDREN  = { <5nam2, C  0 C,M,0> ,
  1305.                                          <5prbt, C  1 C,M,0> }
  1306.  
  1307. NameError                  LABEL     = 5nmer               T=0
  1308.                            STRUCTURE = SET                 C=NAME_ERROR
  1309.                            CHILDREN  = { <5pro2, C  0 C,M,0> ,
  1310.                                          <5mtcd, C  1 C,M,0> }
  1311.  
  1312. Referral                   LABEL     = 5rfrl               T=0
  1313.                            STRUCTURE = SET                 C=REFERRAL
  1314.                            CHILDREN  = { <5ctrt, C  0 C,M,0> }
  1315.  
  1316. SecurityError              LABEL     = 5scer               T=0
  1317.                            STRUCTURE = SET                 C=SECURITY_ERROR
  1318.                            CHILDREN  = { <5pro3, C  0 C,M,0> }
  1319.  
  1320. ServiceError               LABEL     = 5sver               T=0
  1321.                            STRUCTURE = SET                 C=SERVICE_ERROR
  1322.                            CHILDREN  = { <5pro4, C  0 C,M,0> }
  1323.  
  1324. UpdateError                LABEL     = 5uper               T=0
  1325.                            STRUCTURE = SET                 C=UPDATE_ERROR
  1326.                            CHILDREN  = { <5pro5, C  0 C,M,0> }
  1327.  
  1328. problemTag 1               LABEL     = 5pro1               T=PROBLEM
  1329.                            STRUCTURE = TAG
  1330.                            CHILDREN  = { <5prb1, U 02 P,M,0> }
  1331.  
  1332. problemTag 2               LABEL     = 5pro2               T=PROBLEM
  1333.                            STRUCTURE = TAG
  1334.                            CHILDREN  = { <5prb2, U 02 P,M,0> }
  1335.  
  1336. problemTag 3               LABEL     = 5pro3               T=PROBLEM
  1337.                            STRUCTURE = TAG
  1338.                            CHILDREN  = { <5prb3, U 02 P,M,0> }
  1339.  
  1340. problemTag 4               LABEL     = 5pro4               T=PROBLEM
  1341.                            STRUCTURE = TAG
  1342.                            CHILDREN  = { <5prb4, U 02 P,M,0> }
  1343.  
  1344. problemTag 5               LABEL     = 5pro5               T=PROBLEM
  1345.                            STRUCTURE = TAG
  1346.                            CHILDREN  = { <5prb5, U 02 P,M,0> }
  1347.  
  1348. problemTag 6               LABEL     = 5pro6               T=PROBLEM
  1349.                            STRUCTURE = TAG
  1350.                            CHILDREN  = { <5prb6, U 02 P,M,0> }
  1351.  
  1352. problemTag 7               LABEL     = 5pro7               T=PROBLEM
  1353.                            STRUCTURE = TAG
  1354.                            CHILDREN  = { <5prb7, U 02 P,M,0> }
  1355.  
  1356. problem 1                  LABEL     = 5prb1               T=special case
  1357.                            STRUCTURE = INTEGER
  1358.  
  1359. problem 2                  LABEL     = 5prb2               T=special case
  1360.                            STRUCTURE = INTEGER
  1361.  
  1362. problem 3                  LABEL     = 5prb3               T=special case
  1363.                            STRUCTURE = INTEGER
  1364.  
  1365. problem 4                  LABEL     = 5prb4               T=special case
  1366.                            STRUCTURE = INTEGER
  1367.  
  1368. problem 5                  LABEL     = 5prb5               T=special case
  1369.                            STRUCTURE = INTEGER
  1370.  
  1371. problem 6                  LABEL     = 5prb6               T=special case
  1372.                            STRUCTURE = INTEGER
  1373.  
  1374. problem 7                  LABEL     = 5prb7               T=special case
  1375.                            STRUCTURE = INTEGER
  1376.  
  1377. problemsTag                LABEL     = 5prbt               T=PROBLEMS
  1378.                            STRUCTURE = TAG
  1379.                            CHILDREN  = { <5prbs, U 17 C,M,0> }
  1380.  
  1381. problems                   LABEL     = 5prbs               T=0
  1382.                            STRUCTURE = SET OF              C=0
  1383.                            CHILDREN  = { <5pros, U 16 C,O,0> }
  1384.  
  1385. SEQUENCE {problem,..}      LABEL     = 5pros               T=PROBLEMS
  1386.                            STRUCTURE = SEQUENCE            C=ATTRIBUTE_PROBLEM
  1387.                            CHILDREN  = { <5pro6, C  0 C,M,0> ,
  1388.                                          <5patt, C  1 C,M,0> ,
  1389.                                          <5pavt, C  2 C,O,0>  }
  1390.  
  1391. (*****************************************************************************)
  1392. (* Common Arguments                                                          *)
  1393. (*****************************************************************************)
  1394. DistinguishedNameTag1      LABEL     = 5dnm1               T=ABS_NAME
  1395.                            STRUCTURE = TAG
  1396.                            CHILDREN  = { <5dstn, U 16 C,M,0> }
  1397.  
  1398. DistinguishedNameTag2      LABEL     = 5dnm2               T=REQUESTOR
  1399.                            STRUCTURE = TAG
  1400.                            CHILDREN  = { <5dstn, U 16 C,M,0> }
  1401.  
  1402. DistinguishedNameTag2      LABEL     = 5dnm3               T=DG_NAME
  1403.                            STRUCTURE = TAG
  1404.                            CHILDREN  = { <5dstn, U 16 C,M,0> }
  1405.  
  1406. DistinguishedNameTag2      LABEL     = 5dnm4               T=DG_NEW_SUPERIOR
  1407.                            STRUCTURE = TAG
  1408.                            CHILDREN  = { <5dstn, U 16 C,M,0> }
  1409.  
  1410. AttributeTypeTag           LABEL     = 5patt               T=0
  1411.                            STRUCTURE = TAG
  1412.                            CHILDREN  = { <5atty, U 06 P,M,0> }
  1413.  
  1414. AttributeValueTag          LABEL     = 5pavt               T=0
  1415.                            STRUCTURE = TAG
  1416.                            CHILDREN  = { <5atvp, U 0 P,M,0> }
  1417.  
  1418. matched                    LABEL     = 5mtcd               T=special case
  1419.                            STRUCTURE = CHOICE
  1420.                            TAG       = (C 1 C)
  1421.                            CHILDREN  = { <5rdn5, U 16 C,O,0> }
  1422.  
  1423. ContinuationReferenceTag   LABEL     = 5ctrt               T=0
  1424.                            STRUCTURE = TAG
  1425.                            CHILDREN  = { <5ctr2, U 17 C,M,0> }
  1426.  
  1427. ServiceControlsTag         LABEL     = 5sctt               T=CHAINING_PROHIBITE
  1428.                            STRUCTURE = TAG
  1429.                            CHILDREN  = { <5sctl, U 17 C,M,0> }
  1430.  
  1431. ServiceControls            LABEL     = 5sctl               T=0
  1432.                            STRUCTURE = SET                 C=0
  1433.                            CHILDREN  = { <5optt, C  0 C,D,0> ,
  1434.                                          <5prit, C  1 C,D,0> ,
  1435.                                          <5tlit, C  2 C,O,0> ,
  1436.                                          <5slit, C  3 C,O,0> ,
  1437.                                          <5scot, C  4 C,O,0> }
  1438.  
  1439. optionsTag                 LABEL     = 5optt               T=CHAINING_PROHIBITE
  1440.                            STRUCTURE = TAG                 C=0
  1441.                            CHILDREN  = { <5opts, U 03 P,M,0> }
  1442.  
  1443. options                    LABEL     = 5opts               T=special case
  1444.                            STRUCTURE = BITSTRING
  1445.  
  1446. priorityTag                LABEL     = 5prit               T=PRIORITY
  1447.                            STRUCTURE = TAG
  1448.                            CHILDREN  = { <5prio, U 02 P,M,0> }
  1449.  
  1450. priority                   LABEL     = 5prio               T=0
  1451.                            STRUCTURE = INTEGER             C=oivrenum
  1452.  
  1453. timeLimitTag               LABEL     = 5tlit               T=TIME_LIMIT
  1454.                            STRUCTURE = TAG
  1455.                            CHILDREN  = { <5tlim, U 02 P,M,0> }
  1456.  
  1457. timeLimit                  LABEL     = 5tlim               T=TIME_LIMIT
  1458.                            STRUCTURE = INTEGER             C=oivrintg
  1459.  
  1460. sizeLimitTag               LABEL     = 5slit               T=SIZE_LIMIT
  1461.                            STRUCTURE = TAG
  1462.                            CHILDREN  = { <5slim, U 02 P,M,0> }
  1463.  
  1464. sizeLimit                  LABEL     = 5slim               T=SIZE_LIMIT
  1465.                            STRUCTURE = INTEGER             C=oivrintg
  1466.  
  1467. scopeOfReferralTag         LABEL     = 5scot               T=SCOPE_OF_REFERRAL
  1468.                            STRUCTURE = TAG
  1469.                            CHILDREN  = { <5scop, U 02 P,M,0> }
  1470.  
  1471. scopeOfReferral            LABEL     = 5scop               T=SCOPE_OF_REFERRAL
  1472.                            STRUCTURE = INTEGER             C=oivrenum
  1473.  
  1474. EntryInfoSelectionTag      LABEL     = 5entt               T=ABS_SELECTION
  1475.                            STRUCTURE = TAG
  1476.                            CHILDREN  = { <5ents, U 17 C,M,0> }
  1477.  
  1478. EntryInfoSelectionTag      LABEL     = 5ent2               T=DG_SELECTION
  1479.                            STRUCTURE = TAG
  1480.                            CHILDREN  = { <5ents, U 17 C,M,0> }
  1481.  
  1482. EntryInformationSelection  LABEL     = 5ents               T=0
  1483.                            STRUCTURE = SET                 C=ENTRY_INFO_SELECTI
  1484.                            CHILDREN  = { <5atys, U  0 P,D,0> ,
  1485.                                          <5iftt, C  2 C,D,0> ,
  1486.                                          <5exat, U  0 P,O,0> }
  1487.  
  1488. attributeTypes             LABEL     = 5atys               T=special case
  1489.                            STRUCTURE = CHOICE
  1490.                            CHILDREN  = { <5alat, C  0 C,O,0>,
  1491.                                          <5sltt, C  1 C,O,0> }
  1492.  
  1493. allAttributestag           LABEL     = 5alat               T=ALL_ATTRIBUTES
  1494.                            STRUCTURE = TAG
  1495.                            CHILDREN  = { <5altt, U  5 P,M,0> }
  1496.  
  1497. allAttributes              LABEL     = 5altt               T=special case
  1498.                            STRUCTURE = NULL
  1499.  
  1500. selectTag                  LABEL     = 5sltt               T=special case
  1501.                            STRUCTURE = TAG
  1502.                            CHILDREN  = { <5slct, U 17 C,M,0> }
  1503.  
  1504. select                     LABEL     = 5slct               T=0
  1505.                            STRUCTURE = SET OF              C=0
  1506.                            CHILDREN  = { <5atsl, U  6 P,O,0> }
  1507.  
  1508. AttributeTypeSelected      LABEL     = 5atsl               T=ATTRIBUTES_SELECT
  1509.                            STRUCTURE = OBJECT IDENTIFIER   C=oivrobid
  1510.  
  1511. infoTypesTag               LABEL     = 5iftt               T=INFORMATION_TYPE
  1512.                            STRUCTURE = TAG
  1513.                            CHILDREN  = { <5ifty, U 02 P,M,0> }
  1514.  
  1515. infoTypes                  LABEL     = 5ifty               T=0
  1516.                            STRUCTURE = INTEGER             C=oivrenum
  1517.  
  1518. extraAttributes            LABEL     = 5exat               T=special case
  1519.                            STRUCTURE = CHOICE
  1520.                            CHILDREN  = { <5aoat, C  3 C,O,0> ,
  1521.                                          <5oslt, C  4 C,O,0> }
  1522.  
  1523. allOperationalAttribsTag   LABEL     = 5aoat               T=ALL_OPERATIONAL_AT
  1524.                            STRUCTURE = TAG
  1525.                            CHILDREN  = { <5aopa, U  5 C,M,0> }
  1526.  
  1527. allOperationalAttributes   LABEL     = 5aopa               T=special case
  1528.                            STRUCTURE = NULL
  1529.  
  1530. selectTag (Op.Attribs)     LABEL     = 5oslt               T=special case
  1531.                            STRUCTURE = TAG
  1532.                            CHILDREN  = { <5osel, U  17 C,M,0> }
  1533.  
  1534. select (Op.Attribs)        LABEL     = 5osel               T=0
  1535.                            STRUCTURE = SET OF              C=0
  1536.                            CHILDREN  = { <5eats, U  6 P,O,0> }
  1537.  
  1538. ExtraAttTypeSelected       LABEL     = 5eats               T=EXTRA_ATTRIBUTES_S
  1539.                            STRUCTURE = OBJECT IDENTIFIER   C=oivrobid
  1540.  
  1541. EntryInformationTag        LABEL     = 5enrt               T=ENTRY
  1542.                            STRUCTURE = TAG
  1543.                            CHILDREN  = { <5enti, U 16 C,M,0> }
  1544.  
  1545. EntryInformation           LABEL     = 5enti               T=0
  1546.                            STRUCTURE = SEQUENCE            C=ENTRY_INFO
  1547.                            CHILDREN  = { <5dst2, U 16 C,M,0> ,
  1548.                                          <5frme, U  1 P,D,0> ,
  1549.                                          <5einf, U 17 C,O,0> ,
  1550.                                          <5icmt, C  3 C,D,0> }
  1551.  
  1552. EntryInformation2          LABEL     = 5ent3               T=ENTRIES
  1553.                            STRUCTURE = SEQUENCE            C=ENTRY_INFO
  1554.                            CHILDREN  = { <5dst2, U 16 C,M,0> ,
  1555.                                          <5frme, U  1 P,D,0> ,
  1556.                                          <5einf, U 17 C,O,0> ,
  1557.                                          <5icmt, C  3 C,D,0> }
  1558.  
  1559. fromEntry                  LABEL     = 5frme               T=FROM_ENTRY
  1560.                            STRUCTURE = BOOLEAN             C=oivrbool
  1561.  
  1562. SET OF CHOICE {Type, Attr} LABEL     = 5einf               T=special case
  1563.                            STRUCTURE = SET OF
  1564.                            CHILDREN  = { <5eich, U  0 P,O,0> }
  1565.  
  1566. CHOICE {AttrType, Attr}    LABEL     = 5eich               T=special case
  1567.                            STRUCTURE = CHOICE
  1568.                            CHILDREN  = { <5tyon, U  6 P,O,0> ,
  1569.                                          <5att2, U 16 C,O,0> }
  1570.  
  1571. incompleteEntryTag         LABEL     = 5icmt
  1572.                            STRUCTURE = TAG
  1573.                            CHILDREN  = { <5icmp, U  1 P,M,0> }
  1574.  
  1575. incompleteEntry            LABEL     = 5icmp
  1576.                            STRUCTURE = BOOLEAN
  1577.  
  1578. TypesOnly                  LABEL     = 5tyon               T=special case
  1579.                            STRUCTURE = OBJECT IDENTIFIER
  1580.  
  1581. SecurityParamArgumentTag   LABEL     = 5sect               T=special case
  1582.                            STRUCTURE = TAG
  1583.                            CHILDREN  = { <5secp, U 17 C,M,0> }
  1584.  
  1585. SecurityParametersArgument LABEL     = 5secp
  1586.                            STRUCTURE = SET
  1587.                            CHILDREN  = { <5cpth, C  0 C,O,0> ,
  1588.                                          <5secn, C  1 C,O,0> ,
  1589.                                          <5scti, C  2 P,O,0> ,
  1590.                                          <5secr, C  3 P,O,0> ,
  1591.                                          <5prtr, C  4 P,O,0> }
  1592.  
  1593. name                       LABEL     = 5secn
  1594.                            STRUCTURE = CHOICE
  1595.                            TAG       = (C 1 C)
  1596.                            CHILDREN  = { <5rdns, U 16 C,O,0> }
  1597.  
  1598. time                       LABEL     = 5scti
  1599.                            STRUCTURE = UTC TIME
  1600.  
  1601. random                     LABEL     = 5secr
  1602.                            STRUCTURE = BITSTRING
  1603.  
  1604. ProtectionRequest          LABEL     = 5prtr
  1605.                            STRUCTURE = INTEGER
  1606.  
  1607. extensionsTag              LABEL     = 5extt               T=EXTENSIONS
  1608.                            STRUCTURE = TAG
  1609.                            CHILDREN  = { <5exts, U 17 C,M,0> }
  1610.  
  1611. extensions                 LABEL     = 5exts               T=0
  1612.                            STRUCTURE = SET OF              C=0
  1613.                            CHILDREN  = { <5xten, U 17 C,O,0> }
  1614.  
  1615. Extension                  LABEL     = 5xten               T=0
  1616.                            STRUCTURE = SET                 C=EXTENSION
  1617.                            CHILDREN  = { <5xtit, C  0 C,M,0> ,
  1618.                                          <5crtt, C  1 C,D,0> ,
  1619.                                          <5itet, C  2 C,M,0> }
  1620.  
  1621. identifierTag              LABEL     = 5xtit               T=IDENTIFIER
  1622.                            STRUCTURE = TAG
  1623.                            CHILDREN  = { <5xtid, U 02 P,M,0>*}
  1624.  
  1625. identifier                 LABEL     = 5xtid               T=0
  1626.                            STRUCTURE = INTEGER             C=oivrintg
  1627.  
  1628. criticalTag                LABEL     = 5crtt               T=CRITICAL
  1629.                            STRUCTURE = TAG
  1630.                            CHILDREN  = { <5crtc, U 01 P,M,0> }
  1631.  
  1632. critical                   LABEL     = 5crtc               T=0
  1633.                            STRUCTURE = BOOLEAN             C=oivrbool
  1634.  
  1635. itemTag                    LABEL     = 5itet               T=ITEM_PARAMETERS
  1636.                            STRUCTURE = TAG
  1637.                            CHILDREN  = { <5item, C  2 C,M,0> }
  1638.  
  1639. item                       LABEL     = 5item               T=special case
  1640.                            STRUCTURE = ANY DEFINED BY
  1641.                            TAG       = (C 2 C)
  1642.                            DEFGLABEL = 5xtid
  1643.                            REGISTER  = {}
  1644.  
  1645. (* Not sure that this REGISTER will work. If not then revert to ANY.         *)
  1646.  
  1647.  
  1648. (*****************************************************************************)
  1649. (* ASN.1 definitions corresponding to OM_ classes defined in the Directory   *)
  1650. (* Service Package.                                                          *)
  1651. (*****************************************************************************)
  1652. PresentationAddress        LABEL     = 5padd               T=0
  1653.                            STRUCTURE = SEQUENCE            C=PRESENTATION_ADDRE
  1654.                            CHILDREN  = { <5pslt, C 0 C,O,0>,
  1655.                                          <5sslt, C 1 C,O,0>,
  1656.                                          <5tslt, C 2 C,O,0>,
  1657.                                          <5nett, C 3 C,M,0> }
  1658.  
  1659. PresentationAddress        LABEL     = 5pad2               T=MH_T_PRESENTATION_
  1660.                            STRUCTURE = SEQUENCE            C=PRESENTATION_ADDRE
  1661.                            CHILDREN  = { <5pslt, C 0 C,O,0>,
  1662.                                          <5sslt, C 1 C,O,0>,
  1663.                                          <5tslt, C 2 C,O,0>,
  1664.                                          <5nett, C 3 C,M,0> }
  1665.  
  1666. pSelector tag              LABEL     = 5pslt               T=P_SELECTOR
  1667.                            STRUCTURE = TAG
  1668.                            CHILDREN  = { <5psel, U 4 P,M,0> }
  1669.  
  1670. pSelector                  LABEL     = 5psel               T=0
  1671.                            STRUCTURE = OCTETSTRING         C=oivrocts
  1672.  
  1673. sSelector tag              LABEL     = 5sslt               T=S_SELECTOR
  1674.                            STRUCTURE = TAG
  1675.                            CHILDREN  = { <5ssel, U 4 P,M,0> }
  1676.  
  1677. sSelector                  LABEL     = 5ssel               T=0
  1678.                            STRUCTURE = OCTETSTRING         C=oivrocts
  1679.  
  1680. tSelector tag              LABEL     = 5tslt               T=T_SELECTOR
  1681.                            STRUCTURE = TAG
  1682.                            CHILDREN  = { <5tsel, U 4 P,M,0> }
  1683.  
  1684. tSelector                  LABEL     = 5tsel               T=0
  1685.                            STRUCTURE = OCTETSTRING         C=oivrocts
  1686.  
  1687. nAddresses tag             LABEL     = 5nett               T=N_ADDRESSES
  1688.                            STRUCTURE = TAG
  1689.                            CHILDREN  = { <5neta, U 17 C,M,0> }
  1690.  
  1691. nAddresses                 LABEL     = 5neta               T=0
  1692.                            STRUCTURE = SET OF              C=0
  1693.                            CHILDREN  = { <5nsqo, U 4 P,M,0> }
  1694.  
  1695. nAddressString             LABEL     = 5nsqo               T=0
  1696.                            STRUCTURE = OCTETSTRING         C=oivrocts
  1697.  
  1698.  
  1699. (*****************************************************************************)
  1700. (* Nodes for doing decodes to check syntaxes.                                *)
  1701. (* Complex = set of anys for now.. change to ANY for xapiv2 testing          *)
  1702. (*****************************************************************************)
  1703. numeric string             LABEL     = 5nums
  1704.                            STRUCTURE = NUMERIC STRING
  1705.  
  1706. sequence of int syntax     LABEL     = 5seqi
  1707.                            STRUCTURE = SEQUENCE OF
  1708.                            CHILDREN  = { <5iisq, U 2 P,M,0> }
  1709.  
  1710. integer in sequence        LABEL     = 5iisq
  1711.                            STRUCTURE = INTEGER
  1712.  
  1713. complex                    LABEL     = 5cplx
  1714.                            STRUCTURE = ANY
  1715.                            CHILDREN  = { }
  1716.  
  1717. !
  1718.