home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 5 Edit / 05-Edit.zip / gened10.zip / TEST1.ASN < prev    next >
Text File  |  1996-04-03  |  36KB  |  993 lines

  1. IPMSInformationObjects -- {joint-iso-ccitt     (2)
  2.                        --  mhs-motis           (6)
  3.                        --  ipms                (1)
  4.                        --  modules             (0)
  5.                        --  information-objects (2) }
  6.  
  7. DEFINITIONS IMPLICIT TAGS ::=
  8.  
  9. BEGIN
  10.  
  11. EXPORTS InformationObject,
  12.         IPM,
  13.         IPN,
  14.         RN,
  15.         NRN,
  16.         ForwardedInfo;
  17.  
  18. -- Information Object
  19. InformationObject ::= CHOICE {
  20.   ipm [0] IPM,
  21.   ipn [1] IPN
  22.   }
  23.  
  24. -- IPM
  25. IPM ::= SEQUENCE {
  26.   heading HEADING,
  27.   body    BODY
  28.   }
  29.  
  30. -- Heading
  31. HEADING ::= SET {
  32.   this-IPM                   ThisIPMField,
  33.   originator             [0] OriginatorField             OPTIONAL,
  34.   authorizing-users      [1] AuthorizingUsersField       OPTIONAL,
  35.   primary-recipients     [2] PrimaryRecipientsField      DEFAULT {},
  36.   copy-recipients        [3] CopyRecipientsField         DEFAULT {},
  37.   blind-copy-recipients  [4] BlindCopyRecipientsField    OPTIONAL,
  38.   replied-to-IPM         [5] RepliedToIPMField           OPTIONAL,
  39.   obsoleted-IPMs         [6] ObsoletedIPMsField          DEFAULT {},
  40.   related-IPMs           [7] RelatedIPMsField            DEFAULT {},
  41.   subject                [8] EXPLICIT SubjectField       OPTIONAL,
  42.   expiry-time            [9] ExpiryTimeField             OPTIONAL,
  43.   reply-time            [10] ReplyTimeField              OPTIONAL,
  44.   reply-recipients      [11] ReplyRecipientsField        OPTIONAL,
  45.   importance            [12] ImportanceField             DEFAULT normal,
  46.   sensitivity           [13] SensitivityField            OPTIONAL,
  47.   auto-forwarded        [14] AutoForwardedField          DEFAULT FALSE,
  48.   extensions            [15] ExtensionsField             DEFAULT {}
  49.   }
  50.  
  51. -- Heading component types
  52. IPMIdentifier ::= [APPLICATION 11] SET {
  53.   user              --     ORName OPTIONAL,                     X.420 --
  54.                            ORAddress OPTIONAL,     -- MHS Impl. Guide --
  55.   user-relative-identifier LocalIPMIdentifier
  56.   }
  57.  
  58. LocalIPMIdentifier ::= PrintableString (SIZE(0..64))
  59.  
  60. RecipientSpecifier ::= SET{
  61.   recipient                [0] ORDescriptor,
  62.   notification-requests    [1] NotificationRequests DEFAULT {},
  63.   reply-requested          [2] BOOLEAN              DEFAULT FALSE
  64.                                                    -- MHS Impl. Guide --
  65.                                                                   ,
  66.   recipient-extensions     [3] RecipientExtensionsField OPTIONAL
  67.   }
  68.  
  69. RecipientExtensionsField ::= SET OF IPMSExtension  -- MHS Impl. Guide --
  70. IPMSExtension ::= HeadingExtension
  71.  
  72. NotificationRequests ::= BIT STRING{
  73.   rn         (0),
  74.   nrn        (1),
  75.   ipm-return (2)
  76.   }
  77.  
  78. ORDescriptor ::= SET {
  79.   formal-name           ORName OPTIONAL,
  80.   free-form-name    [0] FreeFormName    OPTIONAL,
  81.   telephone-number  [1] TelephoneNumber OPTIONAL
  82.   }
  83.  
  84. FreeFormName                 ::= TeletexString       (SIZE(0..64))
  85.  
  86. TelephoneNumber              ::= PrintableString     (SIZE(0..32))
  87.  
  88. -- This IPM heading field
  89. ThisIPMField                 ::= IPMIdentifier
  90.  
  91. -- Originator heading field
  92. OriginatorField              ::= ORDescriptor
  93.  
  94. -- Authorizing users heading field
  95. AuthorizingUsersField        ::= SEQUENCE OF AuthorizingUsersSubfield
  96.  
  97. AuthorizingUsersSubfield     ::= ORDescriptor
  98.  
  99. -- Primary recipients heading field
  100. PrimaryRecipientsField       ::= SEQUENCE OF PrimaryRecipientsSubfield
  101.  
  102. PrimaryRecipientsSubfield    ::= RecipientSpecifier
  103.  
  104. -- Copy recipients heading field
  105. CopyRecipientsField          ::= SEQUENCE OF CopyRecipientsSubfield
  106.  
  107. CopyRecipientsSubfield       ::= RecipientSpecifier
  108.  
  109. -- Blind copy recipients heading field
  110. BlindCopyRecipientsField     ::= SEQUENCE OF BlindCopyRecipientsSubfield
  111.  
  112. BlindCopyRecipientsSubfield  ::= RecipientSpecifier
  113.  
  114. -- Replied-to IPM heading field
  115. RepliedToIPMField            ::= IPMIdentifier
  116.  
  117. -- Obsoleted IPMs heading field
  118. ObsoletedIPMsField           ::= SEQUENCE OF ObsoletedIPMsSubfield
  119.  
  120. ObsoletedIPMsSubfield        ::= IPMIdentifier
  121.  
  122. -- Related IPMs heading field
  123. RelatedIPMsField             ::= SEQUENCE OF RelatedIPMsSubfield
  124.  
  125. RelatedIPMsSubfield          ::= IPMIdentifier
  126.  
  127. -- Subfield heading field
  128. SubjectField                 ::= TeletexString (SIZE(0..128))
  129.  
  130. -- Expiry time heading field
  131. ExpiryTimeField              ::= Time
  132.  
  133. -- Reply time heading field
  134. ReplyTimeField               ::= Time
  135.  
  136. -- Reply recipient heading field
  137. ReplyRecipientsField         ::= SEQUENCE OF ReplyRecipientsSubfield
  138.  
  139. ReplyRecipientsSubfield      ::= ORDescriptor
  140.  
  141. -- Importance heading field
  142. ImportanceField    ::= ENUMERATED {
  143.         low      (0),
  144.         normal   (1),
  145.         high     (2)
  146.         }
  147.  
  148. -- Sensitivity heading field
  149. SensitivityField   ::= ENUMERATED {
  150.         personal             (1),
  151.         private              (2),
  152.         company-confidential (3)}
  153.  
  154. -- Auto-forwarded heading field
  155. AutoForwardedField ::= BOOLEAN
  156.  
  157. -- Extensions heading field
  158. ExtensionsField    ::= SET OF HeadingExtension
  159.  
  160. HeadingExtension   ::= SEQUENCE {
  161.   headExtType   OBJECT IDENTIFIER,
  162.   headExtValue  ANY DEFINED BY headExtType --% ANY_TABLE_REF (HeadExtValTab)
  163.                 OPTIONAL
  164. }
  165.  
  166. -- associate the list of types to be carried
  167. --% HeadExtValTab ANY_TABLE ::= {
  168. --%                    {2 6 1 5 0}   IncompleteCopy,
  169. --%                    {2 6 1 5 1}   Languages
  170. --%            }
  171.  
  172. -- IncompleteCopy
  173. IncompleteCopy ::= NULL
  174.  
  175. -- Languages
  176. Languages ::= SET OF Language
  177.  
  178. Language ::= PrintableString (SIZE (0 .. 5))
  179. --ImpRes: (SIZE(2..2))
  180.  
  181. -- Body
  182. BODY     ::= SEQUENCE OF BodyPart
  183.  
  184. BodyPart ::= CHOICE {
  185.   ia5-text               [0] IA5TextBodyPart,
  186.   voice                  [2] VoiceBodyPart,
  187.   g3-facsimile           [3] G3FacsimileBodyPart,
  188.   g4-class1              [4] G4Class1BodyPart,
  189.   teletex                [5] TeletexBodyPart,
  190.   videotex               [6] VideotexBodyPart,
  191.   encrypted              [8] EncryptedBodyPart,
  192.   message                [9] MessageBodyPart,
  193.   mixed-mode            [11] MixedModeBodyPart,
  194.   bilaterally-defined   [14] BilaterallyDefinedBodyPart,
  195.   nationally-defined     [7] NationallyDefinedBodyPart,
  196.   externally-defined    [15] ExternallyDefinedBodyPart
  197.   }
  198.  
  199. -- IA5 text body part
  200. IA5TextBodyPart   ::= SEQUENCE {
  201.   ia5-parameters        IA5TextParameters,
  202.   ia5-data              IA5TextData
  203.   }
  204.  
  205. IA5TextParameters ::= SET {
  206.   repertoire    [0] Repertoire DEFAULT ia5
  207.   }
  208.  
  209. IA5TextData       ::= IA5String
  210.  
  211. Repertoire        ::= ENUMERATED{
  212.   ita2 (2),
  213.   ia5  (5)
  214.   }
  215.  
  216. -- Voice body part
  217. VoiceBodyPart       ::= SEQUENCE{
  218.   voice-parameters      VoiceParameters,
  219.   voice-data            VoiceData
  220.   }
  221.  
  222. VoiceParameters     ::= SET{}
  223.  
  224. VoiceData           ::= BIT STRING
  225.  
  226. -- G3 Facsimile body part
  227. G3FacsimileBodyPart ::= SEQUENCE{
  228.   g3-parameters      G3FacsimileParameters,
  229.   g3-data            G3FacsimileData
  230.   }
  231.  
  232. G3FacsimileParameters ::= SET{
  233.   g3-number-of-pages      [0] INTEGER OPTIONAL,
  234.   g3-non-basic-parameters [1] G3FacsimileNonBasicParameters OPTIONAL
  235.   }
  236.  
  237. G3FacsimileData       ::= SEQUENCE OF BIT STRING
  238.  
  239. -- G4 class 1 and mixed-mode body parts
  240. G4Class1BodyPart      ::= SEQUENCE OF ProtocolElement
  241.  
  242. MixedModeBodyPart     ::= SEQUENCE OF ProtocolElement
  243.  
  244. -- Telex body part
  245. TeletexBodyPart       ::= SEQUENCE{
  246.   ttx-parameters      TeletexParameters,
  247.   ttx-data            TeletexData
  248.   }
  249.  
  250. TeletexParameters     ::= SET{
  251.   ttx-number-of-pages      [0] INTEGER OPTIONAL,
  252.   telex-compatible         [1] BOOLEAN DEFAULT FALSE,
  253.   ttx-non-basic-parameters [2] TeletexNonBasicParameters OPTIONAL
  254.   }
  255.  
  256. TeletexData           ::= SEQUENCE OF TeletexString
  257.  
  258. -- Videotex body part
  259. VideotexBodyPart      ::= SEQUENCE{
  260.   vtx-parameters      VideotexParameters,
  261.   vtx-data            VideotexData
  262.   }
  263.  
  264. VideotexParameters   ::= SET{
  265.   syntax               [0] VideotexSyntax OPTIONAL
  266.   }
  267.  
  268. VideotexSyntax       ::= INTEGER {
  269.   ids              (0),
  270.   data-syntax1     (1),
  271.   data-syntax2     (2),
  272.   data-syntax3     (3)
  273.   }
  274.  
  275. VideotexData        ::= VideotexString
  276.  
  277. -- Encrypted body part
  278. EncryptedBodyPart   ::= SEQUENCE{
  279.   encrypt-parameters      EncryptedParameters,
  280.   encrypt-data            EncryptedData
  281.   }
  282.  
  283. EncryptedParameters ::= SET{}
  284.  
  285. EncryptedData       ::= BIT STRING
  286.  
  287. -- Message body part
  288. MessageBodyPart     ::= SEQUENCE{
  289.   msg-parameters      MessageParameters,
  290.   msg-data            MessageData
  291.   }
  292.  
  293. MessageParameters   ::= SET{
  294.   msg-delivery-time          [0] MessageDeliveryTime OPTIONAL,
  295.   msg-delivery-envelope      [1] OtherMessageDeliveryFields OPTIONAL
  296.   }
  297.  
  298. MessageData                 ::= IPM
  299.  
  300. -- Bilaterally defined body part
  301. BilaterallyDefinedBodyPart  ::= OCTET STRING
  302.  
  303. -- Nationally defined body part
  304. NationallyDefinedBodyPart   ::= ANY
  305.  
  306. -- Externally defined body part
  307. ExternallyDefinedBodyPart   ::= SEQUENCE{
  308.   ext-parameters  [0] ExternallyDefinedParameters OPTIONAL,
  309.   ext-data            ExternallyDefinedData
  310.   }
  311.  
  312. ExternallyDefinedParameters ::= [UNIVERSAL 8] IMPLICIT SEQUENCE {
  313.   direct-reference       OBJECT IDENTIFIER,
  314.   encoding [0] ANY DEFINED BY direct-reference --% ANY_TABLE_REF (EncodingTab1)
  315.   }
  316.  
  317.  
  318. -- associate the list of types to be carried
  319. --% EncodingTab1 ANY_TABLE ::= {
  320. --%                     {2 6 1 11 0}   IA5TextParameters,
  321. --%                     {2 6 1 11 1}   VoiceParameters,
  322. --%                     {2 6 1 11 2}   G3FacsimileParameters,
  323. --%                     {2 6 1 11 4}   TeletexParameters,
  324. --%                     {2 6 1 11 5}   VideotexParameters,
  325. --%                     {2 6 1 11 6}   EncryptedParameters,
  326. --%                     {2 6 1 11 7}   MessageParameters
  327. --%                     }
  328.  
  329. ExternallyDefinedData ::= [UNIVERSAL 8] IMPLICIT SEQUENCE {
  330.   direct-reference       OBJECT IDENTIFIER,
  331.   encoding [0] ANY DEFINED BY direct-reference --% ANY_TABLE_REF (EncodingTab2)
  332.   }
  333.  
  334. --% EncodingTab2 ANY_TABLE ::= {
  335. --%                     {2 6 1 4 0}    IA5TextData,
  336. --%                     {2 6 1 4 1}    VoiceData,
  337. --%                     {2 6 1 4 2}    G3FacsimileData,
  338. --%                     {2 6 1 4 3}    G4Class1BodyPart,
  339. --%                     {2 6 1 4 4}    TeletexData,
  340. --%                     {2 6 1 4 5}    VideotexData,
  341. --%                     {2 6 1 4 6}    EncryptedData,
  342. --%                     {2 6 1 4 7}    MessageData,
  343. --%                     {2 6 1 4 8}    MixedModeBodyPart,
  344. --%                     {2 6 1 4 9}    BilaterallyDefinedBodyPart,
  345. --%                     {2 6 1 4 10}   NationallyDefinedBodyPart
  346. --%                    }
  347.  
  348. -- IPN
  349. IPN ::= SET {
  350.   subject-ipn                 SubjectIPMField,
  351.   ipn-originator          [1] IPNOriginatorField OPTIONAL,
  352.   ipm-preferred-recipient [2] IPMPreferredRecipientField OPTIONAL,
  353.   conversion-eits             ConversionEITsField OPTIONAL,
  354.                               -- MHS Impl. Guide --
  355.   notification-extensions [3] NotificationExtensionsField OPTIONAL,
  356.   choice                  [0] CHOICE {
  357.                                non-receipt-fields [0] NonReceiptFields,
  358.                                receipt-fields  [1] ReceiptFields
  359.                                }
  360.   }
  361.  
  362. NRN ::= SET {
  363.   subject-ipn                 SubjectIPMField,
  364.   ipn-originator          [1] IPNOriginatorField OPTIONAL,
  365.   ipm-preferred-recipient [2] IPMPreferredRecipientField OPTIONAL,
  366.   conversion-eits             ConversionEITsField OPTIONAL,
  367.                               -- MHS Impl. Guide --
  368.   notification-extensions [3] NotificationExtensionsField OPTIONAL,
  369.   choice                  [0] CHOICE {
  370.                                non-receipt-fields [0] NonReceiptFields
  371.                                }
  372.   }
  373.  
  374. RN ::= SET {
  375.   subject-ipn                 SubjectIPMField,
  376.   ipn-originator          [1] IPNOriginatorField OPTIONAL,
  377.   ipm-preferred-recipient [2] IPMPreferredRecipientField OPTIONAL,
  378.   conversion-eits             ConversionEITsField OPTIONAL,
  379.                               -- MHS Impl. Guide --
  380.   notification-extensions [3] NotificationExtensionsField OPTIONAL,
  381.   choice                  [0] CHOICE {
  382.                                rn-receipt-fields  [1] ReceiptFields
  383.                                }
  384.   }
  385.  
  386. -- MHS Impl. Guide --
  387. NotificationExtensionsField ::= SET OF IPMSExtension
  388.  
  389. NonReceiptFields ::= SET {
  390.   non-receipt-reason      [0] NonReceiptReasonField,
  391.   discard-reason          [1] DiscardReasonField OPTIONAL,
  392.   auto-forward-comment    [2] AutoForwardCommentField OPTIONAL,
  393.   returned-ipm            [3] ReturnedIPMField OPTIONAL
  394.   }
  395.  
  396. ReceiptFields ::= SET {
  397.   receipt-time            [0] ReceiptTimeField,
  398.   acknowledge-mode        [1] AcknowledgementModeField DEFAULT manual,
  399.   suppl-receipt-info      [2] SupplReceiptInfoField DEFAULT ""
  400.   }
  401.  
  402. -- Common fields
  403. SubjectIPMField             ::= IPMIdentifier
  404.  
  405. IPNOriginatorField          ::= ORDescriptor
  406.  
  407. IPMPreferredRecipientField  ::= ORDescriptor
  408.  
  409. ConversionEITsField         ::= EncodedInformationTypes
  410.  
  411. -- Non-receipt fields
  412. NonReceiptReasonField       ::= ENUMERATED {
  413.   ipm-discarded      (0),
  414.   ipm-auto-forwarded (1)
  415.   }
  416.  
  417. DiscardReasonField          ::= ENUMERATED {
  418.   ipm-expired                  (0),
  419.   ipm-obsoleted                (1),
  420.   user-subscription-terminated (2)
  421.   }
  422.  
  423. AutoForwardCommentField     ::= AutoForwardComment
  424.  
  425. AutoForwardComment          ::= PrintableString (SIZE(0..256))
  426.  
  427. ReturnedIPMField            ::= IPM
  428.  
  429. -- Receipt fields
  430. ReceiptTimeField            ::= Time
  431.  
  432. AcknowledgementModeField    ::= ENUMERATED {
  433.   manual      (0),
  434.   automatic   (1)}
  435.  
  436. SupplReceiptInfoField       ::= SupplementaryInformation
  437.  
  438. -- Message store realization
  439. ForwardedInfo               ::= SET{
  440.   auto-forwarding-comment  [0] AutoForwardComment OPTIONAL,
  441.   cover-note               [1] IA5TextBodyPart OPTIONAL,
  442.   this-ipm-prefix          [2] PrintableString (SIZE(0..2)) OPTIONAL
  443.                                      --ImpRes: (SIZE(1..ub))
  444.   }
  445.  
  446. -- Common parameter types
  447. Time ::= UTCTime
  448.  
  449. -- ************************* --
  450. -- FROM MTS ABSTRACT SERVICE --
  451. -- ************************* --
  452.  
  453. -- Encoded information types
  454. EncodedInformationTypes ::= [APPLICATION 5] SET{
  455.      built-in-encoded-information-types
  456.                     [0] BuiltInEncodedInformationTypes,
  457.      e-g3-facsimile [1] G3FacsimileNonBasicParameters DEFAULT{},
  458.      e-teletex      [2] TeletexNonBasicParameters DEFAULT{},
  459.      e-g4-class-1-and-mixed-mode
  460.                     [3] G4Class1AndMixedModeNonBasicParameters OPTIONAL,
  461.      external-encoded-information-types
  462.                     [4] ExternalEncodedInformationTypes OPTIONAL}
  463.  
  464. -- Built-in encoded information types
  465. BuiltInEncodedInformationTypes ::= BIT STRING{
  466.        b-undefined      (0),
  467.        b-telex          (1),
  468.        b-ia5-text       (2),
  469.        b-g3-facsimile   (3),
  470.        b-g4-class-1     (4),
  471.        b-teletex        (5),
  472.        b-videotex       (6),
  473.        b-voice          (7),
  474.        b-sfd            (8),
  475.        b-mixed-mode     (9)} (SIZE(0..32))
  476.  
  477. -- Non-basic parameters
  478. G3FacsimileNonBasicParameters   ::= BIT STRING{
  479.        two-dimensional  (8),
  480.        fine-resolution  (9),
  481.        unlimited-length (20),
  482.        b4-length        (21),
  483.        a3-width         (22),
  484.        b4-width         (23),
  485.        uncompressed     (30)}
  486.  
  487. TeletexNonBasicParameters ::= SET {
  488.        graphic-character-sets              [0] TeletexString OPTIONAL,
  489.        control-character-sets              [1] TeletexString OPTIONAL,
  490.        page-formats                        [2] OCTET STRING  OPTIONAL,
  491.        miscellaneous-terminal-capabilities [3] TeletexString OPTIONAL,
  492.        private-use                         [4] OCTET STRING  OPTIONAL}
  493.  
  494. G4Class1AndMixedModeNonBasicParameters ::= PresentationCapabilities
  495. PresentationCapabilities ::= ANY
  496.  
  497. -- External encoded information types
  498. ExternalEncodedInformationTypes ::= SET --ImpRes: SIZE(0..1024) -- OF
  499.   S-ExternalEncodedInformationType
  500. S-ExternalEncodedInformationType ::= OBJECT IDENTIFIER
  501.  
  502. -- Standard attributes
  503. StandardAttributes ::= SEQUENCE{
  504.        country-name                 CountryName OPTIONAL,
  505.        administration-domain-name   AdministrationDomainName OPTIONAL,
  506.        network-address          [0] NetworkAddress OPTIONAL,
  507.        terminal-identifier      [1] TerminalIdentifier OPTIONAL,
  508.        private-domain-name      [2] PrivateDomainName OPTIONAL,
  509.        organization-name        [3] OrganizationName OPTIONAL,
  510.        numeric-user-identifier  [4] NumericUserIdentifier OPTIONAL,
  511.        personal-name            [5] PersonalName OPTIONAL,
  512.        organizational-unit-name [6] OrganizationalUnitNames OPTIONAL}
  513.  
  514. CountryName ::= [APPLICATION 1] CHOICE{
  515.        x121-dcc-code        NumericString   (SIZE(0..3)),
  516.                                                     --ImpRes: (SIZE(ub))
  517.        iso-3166-alpha2-code PrintableString (SIZE(0..2))}
  518.                                                     --ImpRes: (SIZE(ub))
  519.  
  520. AdministrationDomainName ::= [APPLICATION 2] CHOICE{
  521.        numeric-a   NumericString   (SIZE(0..16)),
  522.        printable-a PrintableString (SIZE(0..16))}
  523.  
  524. NetworkAddress        ::= X121Address
  525.  
  526. X121Address           ::= NumericString (SIZE(0..15))
  527.                                                  --ImpRes: (SIZE(1..ub))
  528.  
  529. TerminalIdentifier    ::= PrintableString (SIZE(0..24))
  530.                                                  --ImpRes: (SIZE(1..ub))
  531.  
  532. PrivateDomainName     ::= CHOICE{
  533.       numeric-p NumericString     (SIZE(0..16)), --ImpRes: (SIZE(1..ub))
  534.       printable-p PrintableString (SIZE(0..16))} --ImpRes: (SIZE(1..ub))
  535.  
  536. OrganizationName      ::= PrintableString (SIZE(0..64))
  537.                                                  --ImpRes: (SIZE(1..ub))
  538.  
  539. NumericUserIdentifier ::= NumericString (SIZE(0..32))
  540.                                                  --ImpRes: (SIZE(1..ub))
  541.  
  542. PersonalName ::= SET{
  543.        surname              [0] PrintableString (SIZE(0..40)),
  544.                                                  --ImpRes: (SIZE(1..ub))
  545.        given-name           [1] PrintableString (SIZE(0..16)) OPTIONAL,
  546.                                                  --ImpRes: (SIZE(1..ub))
  547.        initials             [2] PrintableString (SIZE(0..5)) OPTIONAL,
  548.                                                  --ImpRes: (SIZE(1..ub))
  549.        generation-qualifier [3] PrintableString (SIZE(0..3)) OPTIONAL}
  550.                                                  --ImpRes: (SIZE(1..ub))
  551.  
  552. OrganizationalUnitNames ::= SEQUENCE -- ImpRes: SIZE(1..4) --
  553.                                     OF OrganizationUnitName
  554. OrganizationUnitName ::= PrintableString (SIZE(0..32))
  555.                                                  --ImpRes: (SIZE(1..ub))
  556.  
  557. -- Message delivery envelope
  558. OtherMessageDeliveryFields ::= SET {
  559.  content-type                 DeliveredContentType,
  560.  originator-name              OriginatorName,
  561.  original-encoded-information-types
  562.                           [1] OriginalEncodedInformationTypes OPTIONAL,
  563.  priority                     Priority DEFAULT normal-priority,
  564.  delivery-flags           [2] DeliveryFlags OPTIONAL,
  565.  other-recipient-names    [3] OtherRecipientNames OPTIONAL,
  566.  this-recipient-name      [4] ThisRecipientName,
  567.  originally-intended-recipient-name
  568.                           [5] OriginallyIntendedRecipientName OPTIONAL,
  569.  converted-encoded-information-types
  570.                           [6] ConvertedEncodedInformationTypes OPTIONAL,
  571.  message-submission-time  [7] MessageSubmissionTime,
  572.  content-identifier       [8] ContentIdentifier OPTIONAL,
  573.  delivery-extensions      [9] SET OF ExtensionField DEFAULT {}
  574.  }
  575.  
  576. ExtensionField ::= SEQUENCE {
  577.   type            [0] INTEGER,
  578.   criticality     [1] Criticality DEFAULT {},
  579.   value           [2] ANY DEFINED BY type --% ANY_TABLE_REF (ValueTab)
  580.                       OPTIONAL
  581. }
  582.  
  583. --% ValueTab ANY_TABLE ::= {
  584. --%               4    ConversionWithLossProhibited,
  585. --%               6    RequestedDeliveryMethod,
  586. --%               7    PhysicalForwardingProhibited,
  587. --%               8    PhysicalForwardingAddressRequest,
  588. --%               9    PhysicalDeliveryModes,
  589. --%              10    RegisteredMailType,
  590. --%              11    RecipientNumberForAdvice,
  591. --%              12    PhysicalRenditionAttributes,
  592. --%              13    OriginatorReturnAddress,
  593. --%              14    PhysicalDeliveryReportRequest,
  594. --%              15    OriginatorCertificate,
  595. --%              16    MessageToken,
  596. --%              17    ContentConfidentialityAlgorithmIdentifier,
  597. --%              18    ContentIntegrityCheck,
  598. --%              19    MessageOriginAuthenticationCheck,
  599. --%              20    MessageSecurityLabel,
  600. --%              22    ProofOfDeliveryRequest,
  601. --%              25    RedirectionHistory,
  602. --%              26    DLExpansionHistory
  603. --%            }
  604.  
  605. Criticality ::= BIT STRING {
  606.   for-submission (0),
  607.   for-transfer   (1),
  608.   for-delivery   (2)
  609.   }
  610.   (SIZE (0..16))
  611.  
  612. ConversionWithLossProhibited ::= ENUMERATED{
  613.        c-conversion-with-loss-allowed    (0),
  614.        c-conversion-with-loss-prohibited (1)}
  615.  
  616. RequestedDeliveryMethod ::= SEQUENCE OF INTEGER{
  617.        any-delivery-method   (0),
  618.        mhs-delivery          (1),
  619.        physical-delivery     (2),
  620.        telex-delivery        (3),
  621.        teletex-delivery      (4),
  622.        g3-facsimile-delivery (5),
  623.        g4-facsimile-delivery (6),
  624.        ia5-terminal-delivery (7),
  625.        videotex-delivery     (8),
  626.        telephone-delivery    (9)}                  --ImpRes: (0..256)
  627.  
  628. PhysicalForwardingProhibited ::= ENUMERATED{
  629.          physical-forwarding-allowed    (0),
  630.          physical-forwarding-prohibited (1)}
  631.  
  632. PhysicalForwardingAddressRequest ::= ENUMERATED{
  633.          physical-forwarding-address-not-requested  (0),
  634.          physical-forwarding-address-requested      (1)}
  635.  
  636. PhysicalDeliveryModes ::= BIT STRING{
  637.          ordinary-mail                              (0),
  638.          special-delivery                           (1),
  639.          express-mail                               (2),
  640.          counter-collection                         (3),
  641.          counter-collection-with-telephone-advice   (4),
  642.          counter-collection-with-telex-advice       (5),
  643.          counter-collection-with-teletex-advice     (6),
  644.          bureau-fax-delivery                        (7)}
  645.          (SIZE(0..16))
  646.  
  647. RegisteredMailType ::= INTEGER{
  648.          non-registered-mail                  (0),
  649.          registered-mail                      (1),
  650.          registered-mail-to-address-in-person (2)}  --ImpRes: (0..256)
  651.  
  652. RecipientNumberForAdvice      ::= TeletexString (SIZE(0..32))
  653.                                             --ImpRes: (SIZE(1..ub))
  654.  
  655. PhysicalRenditionAttributes   ::= OBJECT IDENTIFIER
  656.  
  657. OriginatorReturnAddress       ::= ORAddress
  658.  
  659. PhysicalDeliveryReportRequest ::= INTEGER{
  660.        return-of-undeliverable-mail-by-PDS   (0),
  661.        return-of-notification-by-PDS         (1),
  662.        return-of-notification-by-MHS         (2),
  663.        return-of-notification-by-MHS-and-PDS (3)}     --ImpRes: (0..256)
  664.  
  665. OriginatorCertificate    ::= SEQUENCE{}     --Certificate was replaced
  666.                                             --because original P1 uses
  667.                                             --X.509 definitions
  668.  
  669. -- Token
  670. MessageToken ::= SEQUENCE{}                 --Message Token was replaced
  671.                                             --because original P1 uses
  672.                                             --X.509 definitions
  673.  
  674. ContentConfidentialityAlgorithmIdentifier ::= AlgorithmIdentifier
  675.  
  676. ContentIntegrityCheck ::=  SEQUENCE{}       --Signature was replaced
  677.                                             --because original P1 uses
  678.                                             --X.509 definitions
  679.  
  680. MessageOriginAuthenticationCheck ::= SEQUENCE{} --Signature was replaced
  681.                                               --because original P1 uses
  682.                                               --X.509 definitions
  683.  
  684. MessageSecurityLabel ::= SecurityLabel
  685.  
  686. -- Security Label
  687. SecurityLabel ::= SET{
  688.         security-policy-identifier  SecurityPolicyIdentifier OPTIONAL,
  689.         security-classification     SecurityClassification   OPTIONAL,
  690.         privacy-mark                PrivacyMark              OPTIONAL,
  691.         security-categories         SecurityCategories       OPTIONAL}
  692.  
  693. SecurityPolicyIdentifier ::= OBJECT IDENTIFIER
  694.  
  695. SecurityClassification   ::= INTEGER{
  696.         unmarked     (0),
  697.         unclassified (1),
  698.         restricted   (2),
  699.         confidential (3),
  700.         secret       (4),
  701.         top-secret   (5)}                       -- ImpRes: (0..256)
  702.  
  703. PrivacyMark ::= PrintableString (SIZE(0..128))  -- ImpRes: (SIZE(1..ub))
  704.  
  705. SecurityCategories ::= SET --ImpRes: SIZE (1..64) -- OF SecurityCategory
  706.  
  707. SecurityCategory   ::= SEQUENCE{
  708.         security-type    [0]  OBJECT IDENTIFIER,
  709.         security-value   [1]  ANY DEFINED BY security-type
  710.         }
  711.  
  712. ProofOfDeliveryRequest ::= ENUMERATED{
  713.         proof-of-delivery-not-requested (0),
  714.         proof-of-delivery-requested     (1)}
  715.  
  716. -- Submission port parameter
  717. MessageSubmissionTime ::= Time
  718.  
  719. RedirectionHistory ::= SEQUENCE --ImpRes: SIZE(1..512)-- OF Redirection
  720.  
  721. Redirection ::= SEQUENCE{
  722.         intended-recipient-name IntendedRecipientName,
  723.         redirection-reason      RedirectionReason}
  724.  
  725. IntendedRecipientName ::= SEQUENCE{
  726.         or-address           ORAddressAndOptionalDirectoryName,
  727.         redirection-time     Time}
  728.  
  729. -- O/R names
  730. ORAddressAndOrDirectoryName       ::= ORName
  731.  
  732. ORAddressAndOptionalDirectoryName ::= ORName
  733.  
  734. ORName             ::= [APPLICATION 0] SEQUENCE {
  735.   standard-attributes             StandardAttributes,
  736.   domain-defined-attributes       DomainDefinedAttributes OPTIONAL,
  737.   extension-attributes            ExtensionAttributes OPTIONAL,
  738.   directory-name              [0] Name OPTIONAL
  739.   }
  740.  
  741. ORAddress          ::= SEQUENCE {
  742.   standard-attributes             StandardAttributes,
  743.   domain-defined-attributes       DomainDefinedAttributes OPTIONAL,
  744.   extension-attributes            ExtensionAttributes OPTIONAL
  745.   }
  746.  
  747. RedirectionReason  ::= ENUMERATED{
  748.         recipient-assigned-alternate-recipient   (0),
  749.         originator-requested-alternate-recipient (1),
  750.         recipient-MD-assigned-alternate-recipient(2)}
  751.  
  752. DLExpansionHistory ::= SEQUENCE --ImpRes: SIZE(1..512)-- OF DLExpansion
  753.  
  754. DLExpansion        ::= SEQUENCE {
  755.         dl-or-address        ORAddressAndOptionalDirectoryName,
  756.         dl-expansion-time    Time}
  757.  
  758. SupplementaryInformation        ::= PrintableString (SIZE(0..256))
  759.                                                  --ImpRes: (SIZE(1..ub))
  760.  
  761. -- Envelope fields
  762. OriginatorName                  ::= ORAddressAndOptionalDirectoryName
  763.  
  764. OriginalEncodedInformationTypes ::= EncodedInformationTypes
  765.  
  766. BuiltInContentType              ::= [APPLICATION 6] INTEGER{
  767.        unidentified                 (0),
  768.        b-external                   (1),
  769.        interpersonal-messaging-1984 (2),
  770.        interpersonal-messaging-1988 (22)}    --ImpRes: SIZE(0..32767)
  771.  
  772. ExtendedContentType ::= OBJECT IDENTIFIER
  773.  
  774. DeliveredContentType ::= CHOICE{
  775.        built-in [0]    BuiltInContentType,
  776.        external        ExtendedContentType}
  777.  
  778. ContentIdentifier ::= [APPLICATION 10] PrintableString (SIZE(0..16))
  779.                                                  --ImpRes: (SIZE(1..ub))
  780.  
  781. Priority             ::= [APPLICATION 7] ENUMERATED{
  782.    normal-priority     (0),
  783.    non-urgent          (1),
  784.    urgent              (2)}
  785.  
  786. MessageDeliveryTime  ::= Time
  787.  
  788. DeliveryFlags ::= BIT STRING{
  789.        b-implicit-conversion-prohibited (1)}
  790.        (SIZE(0..16))
  791.  
  792. OriginallyIntendedRecipientName  ::= ORAddressAndOrDirectoryName
  793.  
  794. OtherRecipientNames ::= SEQUENCE OF OtherRecipientName
  795.  
  796. OtherRecipientName ::= ORAddressAndOrDirectoryName
  797.  
  798. ThisRecipientName ::= ORAddressAndOrDirectoryName
  799.  
  800. ConvertedEncodedInformationTypes ::= EncodedInformationTypes
  801.  
  802. -- Domain-defined attributes
  803. DomainDefinedAttributes ::= SEQUENCE --ImpRes: SIZE(1..4) --
  804.         OF DomainDefinedAttribute
  805.  
  806. DomainDefinedAttribute  ::= SEQUENCE{
  807.      d-type  PrintableString (SIZE(0..8)),       --ImpRes: (SIZE(1..ub))
  808.      d-value PrintableString (SIZE(0..128))}     --ImpRes: (SIZE(1..ub))
  809.  
  810. -- Extension attributes
  811. ExtensionAttributes ::= SET -- ImpRes: SIZE(1..256) --
  812.         OF ExtensionAttribute
  813.  
  814. ExtensionAttribute  ::= SEQUENCE {
  815.   extension-attribute-type   [0] INTEGER,
  816.   extension-attribute-value  [1] ANY DEFINED BY extension-attribute-type
  817.                                  --% ANY_TABLE_REF (ExtAttValTab)
  818.   }
  819.  
  820. -- associate the list of types to be carried
  821. --% ExtAttValTab ANY_TABLE ::= {
  822. --%                 1     CommonName,
  823. --%                 2     TeletexCommonName,
  824. --%                 3     TeletexOrganizationName,
  825. --%                 4     TeletexPersonalName,
  826. --%                 5     TeletexOrganizationalUnitNames,
  827. --%                 6     TeletexDomainDefinedAttributes,
  828. --%                 7     PDSName,
  829. --%                 8     PhysicalDeliveryCountryName,
  830. --%                 9     PostalCode,
  831. --%                10     PhysicalDeliveryOfficeName,
  832. --%                11     PhysicalDeliveryOfficeNumber,
  833. --%                12     ExtensionORAddressComponents,
  834. --%                13     PhysicalDeliveryPersonalName,
  835. --%                14     PhysicalDeliveryOrganizationName,
  836. --%                15     ExtensionPhysicalDeliveryAddressComponents,
  837. --%                16     UnformattedPostalAddress,
  838. --%                17     StreetAddress,
  839. --%                18     PostOfficeBoxAddress,
  840. --%                19     PosteRestanteAddress,
  841. --%                20     UniquePostalName,
  842. --%                21     LocalPostalAttributes,
  843. --%                22     ExtendedNetworkAddress,
  844. --%                23     TerminalType
  845. --%            }
  846.  
  847. CommonName                              ::=PrintableString (SIZE(0..64))
  848.                                                  --ImpRes: (SIZE(1..ub))
  849. TeletexCommonName                       ::=TeletexString   (SIZE(0..64))
  850.                                                  --ImpRes: (SIZE(1..ub))
  851. TeletexOrganizationName                 ::=TeletexString   (SIZE(0..64))
  852.                                                  --ImpRes: (SIZE(1..ub))
  853. TeletexPersonalName                     ::= SET{
  854.        surname              [0] TeletexString (SIZE(0..40)),
  855.                                        -- ImpRes: (SIZE(1..ub))
  856.        given-name           [1] TeletexString (SIZE(0..16)) OPTIONAL,
  857.                                        -- ImpRes: (SIZE(1..ub))
  858.        initials             [2] TeletexString (SIZE(0..5))  OPTIONAL,
  859.                                        -- ImpRes: (SIZE(1..ub))
  860.        generation-qualifier [3] TeletexString (SIZE(0..3))  OPTIONAL}
  861.                                        -- ImpRes: (SIZE(1..ub))
  862.  
  863. TeletexOrganizationalUnitNames     ::= SEQUENCE
  864.                                        -- ImpRes: (SIZE(1..4))--
  865.                                        OF TeletexOrganizationalUnitName
  866.  
  867. TeletexOrganizationalUnitName      ::= TeletexString (SIZE(0..32))
  868.                                        -- ImpRes: (SIZE(1..ub))
  869.  
  870. TeletexDomainDefinedAttributes     ::= SEQUENCE
  871.                                        -- ImpRes: (SIZE(1..4))--
  872.                                        OF TeletexDomainDefinedAttribute
  873.  
  874. TeletexDomainDefinedAttribute      ::= SEQUENCE {
  875.     td-type  TeletexString (SIZE(0..8)),         --ImpRes: (SIZE(1..ub))
  876.     td-value TeletexString (SIZE(0..128))}       --ImpRes: (SIZE(1..ub))
  877.  
  878. PDSName                            ::=PrintableString (SIZE(0..16))
  879.                                             --ImpRes: (SIZE(1..ub))
  880.  
  881. PhysicalDeliveryCountryName        ::= CHOICE {
  882.        x121-dcc-code  NumericString(SIZE(0..3)),    --ImpRes: (SIZE(ub))
  883.        iso-3166-alpha2-code PrintableString (SIZE(0..2))}
  884.                                                     --ImpRes: (SIZE(ub))
  885.  
  886. PostalCode                         ::= CHOICE {
  887.        numeric-code   NumericString(SIZE(0..16)),--ImpRes: (SIZE(1..ub))
  888.        printable-code PrintableString (SIZE(0..16))}
  889.                                                  --ImpRes: (SIZE(1..ub))
  890.  
  891. PhysicalDeliveryOfficeName                ::= PDSParameter
  892. PhysicalDeliveryOfficeNumber              ::= PDSParameter
  893. ExtensionORAddressComponents              ::= PDSParameter
  894. PhysicalDeliveryPersonalName              ::= PDSParameter
  895. PhysicalDeliveryOrganizationName          ::= PDSParameter
  896. ExtensionPhysicalDeliveryAddressComponents::= PDSParameter
  897.  
  898. UnformattedPostalAddress                  ::= SET{
  899.         printable-address
  900.              SEQUENCE --ImpRes SIZE (1..6)-- OF
  901.              PrintableString (SIZE(0..30)) OPTIONAL,
  902.                                                  --ImpRes: (SIZE(1..ub))
  903.         teletex-string TeletexString (SIZE(0..180)) OPTIONAL}
  904.                                                  --ImpRes: (SIZE(1..ub))
  905.  
  906. --UnformattedPostalAddress ::= SET{
  907. --      printable-address SEQUENCE SIZE (1..ub) OF
  908. --           PrintableString (SIZE(1..ub)) OPTIONAL,
  909. --      teletex-string TeletexString (SIZE(1..ub)) OPTIONAL}
  910.  
  911. StreetAddress                             ::= PDSParameter
  912. PostOfficeBoxAddress                      ::= PDSParameter
  913. PosteRestanteAddress                      ::= PDSParameter
  914. UniquePostalName                          ::= PDSParameter
  915. LocalPostalAttributes                     ::= PDSParameter
  916.  
  917. PDSParameter ::= SET {
  918.         printable-string PrintableString (SIZE(0..30)) OPTIONAL,
  919.                                                  --ImpRes: (SIZE(1..ub))
  920.         teletex-string   TeletexString   (SIZE(0..30)) OPTIONAL}
  921.                                                  --ImpRes: (SIZE(1..ub))
  922.  
  923. ExtendedNetworkAddress  ::= CHOICE{
  924.         e163-4-address
  925.                SEQUENCE{
  926.                number      [0] NumericString (SIZE(0..15)),
  927.                                                  --ImpRes: (SIZE(1..ub))
  928.                sub-address [1] NumericString (SIZE(0..40)) OPTIONAL},
  929.                                                  --ImpRes: (SIZE(1..ub))
  930.         psap-address [0]       PresentationAddress }
  931.  
  932. TerminalType ::= INTEGER {
  933.       t-telex        (3),
  934.       t-teletex      (4),
  935.       t-g3-facsimile (5),
  936.       t-g4-facsimile (6),
  937.       t-ia5-terminal (7),
  938.       t-videotex     (8)}                            --ImpRes: (0..256)
  939.  
  940.  
  941.  
  942. -- ************
  943. -- FROM X.208 :
  944. -- ************
  945.  
  946. --VideotexString ::= [UNIVERSAL 21] IMPLICIT OCTET STRING
  947.  
  948. -- **********
  949. -- FROM DTAM:
  950. -- **********
  951.  
  952. ProtocolElement ::= ANY
  953.  
  954.  
  955. -- *********************************************
  956. -- FROM X.520 DIRECTORY SELECTED ATTRIBUTE TYPES
  957. -- *********************************************
  958.  
  959. PresentationAddress      ::= SEQUENCE {
  960.     pSelector     [0] OCTET STRING OPTIONAL,
  961.     sSelector     [1] OCTET STRING OPTIONAL,
  962.     tSelector     [2] OCTET STRING OPTIONAL,
  963.     nAddresses    [3] SEQUENCE --ImpRes: SIZE(1..MAX)-- OF OCTET STRING}
  964.  
  965.  
  966. -- ******************************************
  967. -- FROM X.501 DIRECTORY INFORMATION FRAMEWORK
  968. -- ******************************************
  969.  
  970. Name ::= CHOICE { --only one possibility for now --
  971.             rdn-sequence  RDNSequence}
  972.  
  973. RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
  974. RelativeDistinguishedName ::= SET OF AttributeValueAssertion
  975. AttributeValueAssertion   ::= SEQUENCE {
  976.       attribute-type     AttributeType,
  977.       attribute-value    AttributeValue}
  978. AttributeType             ::= OBJECT IDENTIFIER
  979. AttributeValue            ::= ANY
  980.  
  981.  
  982. -- *********************************************
  983. -- FROM X.509 DIRECTORY AUTHENTICATION FRAMEWORK
  984. -- *********************************************
  985.  
  986. AlgorithmIdentifier      ::= SEQUENCE{
  987.       algorithm          OBJECT IDENTIFIER,
  988.       parameters         ANY DEFINED BY algorithm OPTIONAL
  989.          }
  990.  
  991.  
  992. END      -- of IPMSInformationObjects
  993.