-- Module EDIMSInformationObjects (X.435:06/1999)
-- See also ITU-T X.435 (06/1999)
-- See also the index of all ASN.1 assignments needed in this document
EDIMSInformationObjects {joint-iso-itu-t mhs(6) edims(7) modules(0)
information-objects(2) version(2)} DEFINITIONS IMPLICIT TAGS ::=
BEGIN
-- Prologue
-- Exports everything
IMPORTS
-- EDIMS Upper bounds
ub-application-reference, ub-authorization-information,
ub-authorization-information-qualifier, ub-communications-agreement-id,
ub-edi-application-security-elements, ub-edi-message-type,
ub-identification-code, ub-identification-code-qualifier,
ub-interchange-control-reference, ub-local-reference,
ub-processing-priority-code, ub-reason-code, ub-recipient-reference,
ub-recipient-reference-qualifier, ub-routing-address, ub-syntax-identifier,
ub-syntax-version
--==
FROM EDIMSUpperBounds {joint-iso-itu-t mhs(6) edims(7) modules(0)
upper-bounds(5)}
-- EDIMS Object Identifiers
id-bp-edifact-ISO646, id-edi-compression, id-edi-compression-v42bis,
id-ext-invalid-assembly-instructions, id-ext-submission-options,
id-for-action
--==
FROM EDIMSObjectIdentifiers {joint-iso-itu-t mhs(6) edims(7) modules(0)
object-identifiers(0) version(2)}
-- MTS Upper Bounds
ub-bit-options, ub-integer-options, ub-supplementary-info-length
--==
FROM MTSUpperBounds {joint-iso-itu-t mhs(6) mts(3) modules(0)
upper-bounds(3) version-1999(1)}
-- MTS Abstract Service
MessageDeliveryTime, ORName, OtherMessageDeliveryFields,
ContentIntegrityCheck, Content
--==
FROM MTSAbstractService {joint-iso-itu-t mhs(6) mts(3) modules(0)
mts-abstract-service(1) version-1999(1)}
-- IPM Information Objects
ExtendedBodyPart, IPMBodyPartTable
--==
FROM IPMSInformationObjects {joint-iso-itu-t mhs(6) ipms(1) modules(0)
information-objects(2) version-1999(1)}
-- IPM Compression Parameter
CompressionParameter
--==
FROM IPMSFileTransferBodyPartType {joint-iso-itu-t mhs(6) ipms(1)
modules(0) file-transfer-body-part-type(9)}
-- MS Abstract Service
SequenceNumber
--==
FROM MSAbstractService {joint-iso-itu-t mhs(6) ms(4) modules(0)
abstract-service(1) version-1999(1)};
-- END Imports
-- ABSTRACT INFORMATION OBJECTS
-- Overview
InformationObject ::= CHOICE {edim [0] EDIM,
edin [1] EDIN
}
-- Common data types
-- EDIM Identifier
EDIMIdentifier ::= SET {
user [0] ORName,
user-relative-identifier [1] LocalReference
}
LocalReference ::= PrintableString(SIZE (0..ub-local-reference))
-- Extensions
ExtensionField ::= SEQUENCE {
type [0] EDIM-EXTENSION.&id,
criticality [1] Criticality DEFAULT FALSE,
value [2] EDIM-EXTENSION.&Type DEFAULT NULL:NULL
}
Criticality ::= BOOLEAN
-- EDIM Extension information object class
EDIM-EXTENSION ::= CLASS {
&id OBJECT IDENTIFIER UNIQUE,
&criticality BOOLEAN DEFAULT FALSE,
&Type DEFAULT NULL
}
WITH SYNTAX {
[VALUE &Type,]
[CRITICALITY &criticality]
IDENTIFIED BY &id
}
-- EDI Messages
EDIM ::= SEQUENCE {heading Heading,
body Body
}
-- Heading Field Component Types
-- Interchange Recipient/Sender
-- Identification Code
IdentificationCode ::= TeletexString(SIZE (1..ub-identification-code))
-- Identification Code Qualifier
IdentificationCodeQualifier ::=
TeletexString(SIZE (1..ub-identification-code-qualifier))
-- Routing Address
RoutingAddress ::= TeletexString(SIZE (1..ub-routing-address))
-- Heading Fields
Heading ::= SEQUENCE {
this-EDIM [1] ThisEDIMField,
originator [2] OriginatorField OPTIONAL,
recipients [3] RecipientsField OPTIONAL,
edin-receiver [4] EDINReceiverField OPTIONAL,
responsibility-forwarded [5] ResponsibilityForwarded DEFAULT FALSE,
edi-bodypart-type
[6] EDIBodyPartType DEFAULT {id-bp-edifact-ISO646},
incomplete-copy [7] IncompleteCopyField DEFAULT FALSE,
expiry-time [8] ExpiryTimeField OPTIONAL,
related-messages [9] RelatedMessagesField OPTIONAL,
obsoleted-EDIMs [10] ObsoletedEDIMsField OPTIONAL,
edi-application-security-elements
[11] EDIApplicationSecurityElementsField OPTIONAL,
cross-referencing-information
[12] CrossReferencingInformationField OPTIONAL,
-- Begin Fields from EDIFACT Interchange
edi-message-type [13] EDIMessageTypeField OPTIONAL,
service-string-advice [14] ServiceStringAdviceField OPTIONAL,
syntax-identifier [15] SyntaxIdentifierField OPTIONAL,
interchange-sender [16] InterchangeSenderField OPTIONAL,
date-and-time-of-preparation
[17] DateAndTimeOfPreparationField OPTIONAL,
application-reference [18] ApplicationReferenceField OPTIONAL,
-- End Fields from EDIFACT
heading-extensions [19] HeadingExtensionsField OPTIONAL
}
-- This EDIM
ThisEDIMField ::= EDIMIdentifier
-- Originator
OriginatorField ::= ORName
-- Recipients
RecipientsField ::= SET OF RecipientsSubField
RecipientsSubField ::= SEQUENCE {
recipient [1] RecipientField,
action-request
[2] ActionRequestField DEFAULT {id-for-action},
edi-notification-requests-field [3] EDINotificationRequestsField OPTIONAL,
responsibility-passing-allowed
[4] ResponsibilityPassingAllowedField DEFAULT FALSE,
-- Begin Fields from EDIFACT UNB
interchange-recipient [5] InterchangeRecipientField OPTIONAL,
recipient-reference [6] RecipientReferenceField OPTIONAL,
interchange-control-reference
[7] InterchangeControlReferenceField OPTIONAL,
processing-priority-code [8] ProcessingPriorityCodeField OPTIONAL,
acknowledgement-request
[9] AcknowledgementRequestField DEFAULT FALSE,
communications-agreement-id
[10] CommunicationsAgreementIdField OPTIONAL,
test-indicator [11] TestIndicatorField DEFAULT FALSE,
-- End Fields from EDIFACT UNB
-- Begin Fields from ANSIX12 ISA
authorization-information [12] AuthorizationInformationField OPTIONAL,
-- End Fields from ANSIX12 ISA
recipient-extensions [13] RecipientExtensionsField OPTIONAL
}
-- Recipient
RecipientField ::= ORName
-- Action Request
ActionRequestField ::= OBJECT IDENTIFIER
-- EDI Notification Requests
EDINotificationRequestsField ::= SEQUENCE {
edi-notification-requests [0] EDINotificationRequests DEFAULT {},
edi-notification-security [1] EDINotificationSecurity DEFAULT {},
edi-reception-security [2] EDIReceptionSecurity DEFAULT {}
}
EDINotificationRequests ::= BIT STRING {pn(0), nn(1), fn(2)
}(SIZE (0..ub-bit-options))
EDINotificationSecurity ::= BIT STRING {proof(0), non-repudiation(1)
}(SIZE (0..ub-bit-options))
EDIReceptionSecurity ::= BIT STRING {proof(0), non-repudiation(1)
}(SIZE (0..ub-bit-options))
-- Interchange recipient
InterchangeRecipientField ::= SEQUENCE {
recipient-identification [0] IdentificationCode,
identification-code-qualifier [1] IdentificationCodeQualifier OPTIONAL,
routing-address [2] RoutingAddress OPTIONAL
}
-- Recipient reference
RecipientReferenceField ::= SEQUENCE {
recipient-reference [0] RecipientReference,
recipient-reference-qualifier [1] RecipientReferenceQualifier OPTIONAL
}
RecipientReference ::= TeletexString(SIZE (1..ub-recipient-reference))
RecipientReferenceQualifier ::=
TeletexString(SIZE (1..ub-recipient-reference-qualifier))
-- Recipient Extensions
RecipientExtensionsField ::= SET OF RecipientExtensionsSubField
RecipientExtensionsSubField ::= ExtensionField
-- EDIN receiver
EDINReceiverField ::= SEQUENCE {
edin-receiver-name [0] ORName,
original-edim-identifier [1] EDIMIdentifier OPTIONAL,
first-recipient [2] FirstRecipientField OPTIONAL
}
-- Responsibility Forwarded indication
ResponsibilityForwarded ::= BOOLEAN -- default FALSE
-- EDI Body Part Types - identifies EDI Standard, Character set and encoding
EDIBodyPartType ::= OBJECT IDENTIFIER -- default EDIFACT-ISO646
-- EDI message type
EDIMessageTypeField ::= SET OF EDIMessageTypeFieldSubField
EDIMessageTypeFieldSubField ::= TeletexString(SIZE (1..ub-edi-message-type))
-- Responsibility Passing Allowed
ResponsibilityPassingAllowedField ::= BOOLEAN -- Default FALSE
-- Incomplete Copy
IncompleteCopyField ::= BOOLEAN -- default FALSE
-- Expiry time
ExpiryTimeField ::= UTCTime
-- Related Messages
RelatedMessagesField ::= SEQUENCE OF RelatedMessageReference
RelatedMessageReference ::= CHOICE {
edi-message-reference [0] EDIMIdentifier,
external-message-reference [1] EXTERNAL-MESSAGE-REFERENCE.&id
}
EXTERNAL-MESSAGE-REFERENCE ::= TYPE-IDENTIFIER
-- Obsoleted EDIMs
ObsoletedEDIMsField ::= SEQUENCE OF ObsoletedEDIMsSubfield
ObsoletedEDIMsSubfield ::= EDIMIdentifier
-- EDI Application Security Elements
EDIApplicationSecurityElementsField ::= SEQUENCE {
edi-application-security-element
[0] EDIApplicationSecurityElement OPTIONAL,
edi-encrypted-primary-bodypart [1] BOOLEAN OPTIONAL,
edi-application-security-extensions
[2] EDIApplicationSecurityExtensions OPTIONAL
}
EDIApplicationSecurityElement ::=
BIT STRING(SIZE (0..ub-edi-application-security-elements))
EDIApplicationSecurityExtensions ::= SET OF EDIApplicationSecurityExtension
EDIApplicationSecurityExtension ::= ExtensionField
-- Cross Referencing Information
CrossReferencingInformationField ::= SET OF CrossReferencingInformationSubField
CrossReferencingInformationSubField ::= SEQUENCE {
application-cross-reference [0] ApplicationCrossReference,
message-reference [1] MessageReference OPTIONAL,
body-part-reference [2] BodyPartReference
}
ApplicationCrossReference ::= OCTET STRING
MessageReference ::= EDIMIdentifier
-- Service String Advice
ServiceStringAdviceField ::= SEQUENCE {
component-data-element-separator [0] ComponentDataElementSeparator,
data-element-separator [1] DataElementSeparator,
decimal-notation [2] DecimalNotation,
release-indicator [3] ReleaseIndicator OPTIONAL,
reserved [4] Reserved OPTIONAL,
segment-terminator [5] SegmentTerminator
}
ComponentDataElementSeparator ::= OCTET STRING(SIZE (1))
DataElementSeparator ::= OCTET STRING(SIZE (1))
DecimalNotation ::= OCTET STRING(SIZE (1))
ReleaseIndicator ::= OCTET STRING(SIZE (1))
Reserved ::= OCTET STRING(SIZE (1))
SegmentTerminator ::= OCTET STRING(SIZE (1))
-- Syntax Identifier
SyntaxIdentifierField ::= SEQUENCE {
syntax-identifier SyntaxIdentifier,
syntax-version SyntaxVersion
}
SyntaxIdentifier ::= TeletexString(SIZE (1..ub-syntax-identifier))
SyntaxVersion ::= PrintableString(SIZE (1..ub-syntax-version))
-- Interchange sender
InterchangeSenderField ::= SEQUENCE {
sender-identification [0] IdentificationCode,
identification-code-qualifier [1] IdentificationCodeQualifier OPTIONAL,
address-for-reverse-routing [2] RoutingAddress OPTIONAL
} -- EDIFACT Routing
-- Information
-- Date and Time of preparation
DateAndTimeOfPreparationField ::= UTCTime
-- Interchange control reference
InterchangeControlReferenceField ::=
TeletexString(SIZE (1..ub-interchange-control-reference))
-- Application reference
ApplicationReferenceField ::= TeletexString(SIZE (1..ub-application-reference))
-- Processing Priority Code
ProcessingPriorityCodeField ::=
TeletexString(SIZE (1..ub-processing-priority-code))
-- Acknowledgement Request
AcknowledgementRequestField ::= BOOLEAN -- default FALSE
-- Communications Agreement Id
CommunicationsAgreementIdField ::=
TeletexString(SIZE (1..ub-communications-agreement-id))
-- Test indicator
TestIndicatorField ::= BOOLEAN -- default FALSE
-- Authorization Information
AuthorizationInformationField ::= SEQUENCE {
authorization-information [0] AuthorizationInformation,
authorization-information-qualifier
[1] AuthorizationInformationQualifier OPTIONAL
}
AuthorizationInformation ::=
TeletexString(SIZE (1..ub-authorization-information))
AuthorizationInformationQualifier ::=
TeletexString(SIZE (1..ub-authorization-information-qualifier))
-- Heading Extensions
HeadingExtensionsField ::= SET OF HeadingExtensionsSubField
HeadingExtensionsSubField ::= ExtensionField -- {{HeadingExtensions}}
HeadingExtensions EDIM-EXTENSION ::=
{primary-body-part-compression-indication, ...}
primary-body-part-compression-indication EDIM-EXTENSION ::= {
VALUE CompressionParameter, -- as defined for IPM File Transfer Body
-- Part
CRITICALITY TRUE
IDENTIFIED BY id-edi-compression
}
COMPRESSION-ALGORITHM ::= CLASS {
&id OBJECT IDENTIFIER UNIQUE,
&Type OPTIONAL
}WITH SYNTAX {[VALUE &Type]
IDENTIFIED BY &id
}
v42BisCompression COMPRESSION-ALGORITHM ::= {
VALUE V42BisCompressionParameter
IDENTIFIED BY id-edi-compression-v42bis
}
V42BisCompressionParameter ::= SEQUENCE {
dictionary-size [0] INTEGER DEFAULT 12,
largest-compressed-chain [1] INTEGER DEFAULT 512,
last-entries-to-delete [2] INTEGER DEFAULT 256
}
-- EDIM body
Body ::= SEQUENCE {
primary-body-part PrimaryBodyPart,
additional-body-parts OtherBodyParts OPTIONAL
}
PrimaryBodyPart ::= CHOICE {
edi-body-part [0] EDIBodyPart,
forwarded-EDIM [1] EDIMBodyPart
}
OtherBodyParts ::= SEQUENCE OF EDIM-ExtendedBodyPart
-- EDI body part
EDIBodyPart ::= OCTET STRING
-- Forwarded EDIM body part
EDIMBodyPart ::= SEQUENCE {
parameters [0] MessageParameters OPTIONAL,
data [1] MessageData
}
MessageParameters ::= SET {
delivery-time [0] MessageDeliveryTime OPTIONAL,
delivery-envelope [1] OtherMessageDeliveryFields OPTIONAL,
other-parameters [2] EDISupplementaryInformation OPTIONAL
}
-- MessageDeliveryTime and OtherMessageDeliveryFields shall both be present or both be
-- absent.
-- EDISupplementaryInformation is used for the EDI auto-forward auto-action; see 18.7.1
MessageData ::= SEQUENCE {heading Heading,
body BodyOrRemoved
}
BodyOrRemoved ::= SEQUENCE {
primary-or-removed PrimaryOrRemoved,
additional-body-parts AdditionalBodyParts OPTIONAL
}
PrimaryOrRemoved ::= CHOICE {
removed-edi-body [0] NULL,
primary-body-part [1] EXPLICIT PrimaryBodyPart
}
AdditionalBodyParts ::=
SEQUENCE OF
CHOICE {external-body-part [0] EDIM-ExtendedBodyPart,
place-holder [1] BodyPartPlaceHolder
} -- For Body Part Removal
BodyPartPlaceHolder ::=
EDIM-ExtendedBodyPart -- Only the data portion of the Extended Body
-- shall be removed. See text in 8.3.2.
-- EDIM Externally Defined Body Parts
EDIM-ExtendedBodyPart ::= SEQUENCE {
body-part-reference [0] BodyPartReference OPTIONAL,
extended-body-part
[1] ExtendedBodyPart{{IPMBodyPartTable}}-- from IPMS --
}
BodyPartReference ::= INTEGER -- shall be unique within a EDIM
-- Supplementary Info
EDISupplementaryInformation ::=
TeletexString(SIZE (1..ub-supplementary-info-length))
-- EDI Notifications (EDINs)
EDIN ::= CHOICE {
positive-notification [0] PositiveNotificationFields,
negative-notification [1] NegativeNotificationFields,
forwarded-notification [2] ForwardedNotificationFields
}
-- Common fields
CommonFields ::= SEQUENCE {
subject-edim [1] SubjectEDIMField,
edin-originator [2] EDINOriginatorField,
first-recipient [3] FirstRecipientField OPTIONAL,
notification-time [4] NotificationTimeField,
notification-security-elements [5] SecurityElementsField OPTIONAL,
edin-initiator [6] EDINInitiatorField,
notifications-extensions [7] NotificationExtensionsField OPTIONAL
}
-- Subject EDIM Identifier
SubjectEDIMField ::= EDIMIdentifier
-- EDI Notification Originator
EDINOriginatorField ::= ORName
-- First Recipient
FirstRecipientField ::= ORName
-- Notification Time
NotificationTimeField ::= UTCTime
-- Security Elements
SecurityElementsField ::= SEQUENCE {
original-content [0] Content OPTIONAL,
original-content-integrity-check [1] ContentIntegrityCheck OPTIONAL,
edi-application-security-elements
[2] EDIApplicationSecurityElementsField OPTIONAL,
security-extensions [3] SecurityExtensionsField OPTIONAL
}
SecurityExtensionsField ::= SET OF SecurityExtensionsSubField
SecurityExtensionsSubField ::= ExtensionField
-- EDIN Initiator
EDINInitiatorField ::= ENUMERATED {
internal-ua(0), external-ua(1), internal-ms(2)}
-- Notification Extensions
NotificationExtensionsField ::= SET OF NotificationExtensionsSubField
NotificationExtensionsSubField ::= ExtensionField
-- Positive Notification fields
PositiveNotificationFields ::= SEQUENCE {
pn-common-fields [0] CommonFields,
pn-supplementary-information [1] EDISupplementaryInformation OPTIONAL,
pn-extensions [2] PNExtensionsField OPTIONAL
}
-- Positive Notification Extensions
PNExtensionsField ::= SET OF PNExtensionsSubField
PNExtensionsSubField ::= ExtensionField
-- Negative notification fields
NegativeNotificationFields ::= SEQUENCE {
nn-common-fields [0] CommonFields,
nn-reason-code [1] NNReasonCodeField,
nn-supplementary-information [2] EDISupplementaryInformation OPTIONAL,
nn-extensions [3] NNExtensionsField OPTIONAL
}
-- Negative Notification Reason Codes
NNReasonCodeField ::= CHOICE {
nn-ua-ms-reason-code [0] NNUAMSReasonCodeField,
nn-user-reason-code [1] NNUserReasonCodeField,
nn-pdau-reason-code [2] NNPDAUReasonCodeField
}
-- Negative Notification Reason Codes from an EDI-UA or EDI-MS
NNUAMSReasonCodeField ::= SEQUENCE {
nn-ua-ms-basic-code [0] NNUAMSBasicCodeField,
nn-ua-ms-diagnostic [1] NNUAMSDiagnosticField OPTIONAL
}
-- Negative Notification Basic Reason Codes from an EDI-UA or EDI-MS. These codes are
-- those specified in Annex B of ITU-T Rec. F.435 | ISO/IEC 10021-8
-- for the element of service "EDI Notification Request".
NNUAMSBasicCodeField ::= INTEGER {
unspecified(0),
cannot-deliver-to-user(1), -- the EDI Interchange can not be passed on to the
-- user
delivery-timeout(2), -- the EDI Interchange could not be passed on to the
-- user within a specified time limit
message-discarded(3), -- the UA/MS discarded the message before handoff to
-- user
subscription-terminated(4), -- recipient's subscription terminated after delivery
-- but before handoff to user
forwarding-error(5), -- EDI Forwarding was attempted, but failed
security-error(6) -- security error
-- physical delivery errors indicated by "cannot-deliver-to-user"
}(0..ub-reason-code)
-- Negative Notification Diagnostic Codes from an EDI-UA or EDI-MS
NNUAMSDiagnosticField ::= INTEGER {
-- This field may be used to further specify the error signalled in nn-ua-ms
-- basic-code.
-- Additional information may be indicated in nn-supplementary-information general
-- diagnostic codes
protocol-violation(1), -- used if the UA detects a protocol error
edim-originator-unknown(2), edim-recipient-unknown(3),
edim-recipient-ambiguous(4), -- used if the EDIM recipients or originator are
-- not valid
action-request-not-supported(5), -- used when the action requested by the
-- recipient is not performed
edim-expired(6), -- used when the expiry date of the received
-- EDIM occurred before the subject EDIM was
-- successfully passed to the user or forwarded
-- by the EDI-UA
edim-obsoleted(7), -- used when the EDIM Identifier of the received
-- EDIM was contained in the Obsoleted EDIM
-- field of a previously received EDIM
duplicate-edim(8), -- used when the same EDIM is received more than
-- once from the same originator
unsupported-extension(9), -- used if the EDIM contains an extension which
-- is not supported by the UA
incomplete-copy-rejected(10), -- used if the EDI-UA does not accept EDIMs with
-- the Incomplete Copy Indication true
edim-too-large-for-application(11), -- used if the EDIM cannot be delivered to the
-- user due to length constraints
-- FORWARDING ERROR DIAGNOSTIC CODES
forwarded-edim-not-delivered(12), -- used when an Non-Delivery Report is received
-- for forwarded EDIM
forwarded-edim-delivery-time-out(13), -- used when no Delivery Report is received
-- within a given period
forwarding-loop-detected(14), -- used if the UA receives an EDIM which
-- contains a previously forwarded EDIM
unable-to-accept-responsibility(15), -- used if the EDI-UA cannot accept or forward
-- responsibility
-- INTERCHANGE HEADER DIAGNOSTIC CODES
interchange-sender-unknown(16), -- used when the UA does not recognize the
-- interchange-sender of the EDI interchange
interchange-recipient-unknown(17), -- used when the UA cannot find a valid
-- interchange recipient in the Recipient
-- Specifier
invalid-heading-field(18), invalid-bodypart-type(19),
invalid-message-type(20),
invalid-syntax-id(21),
-- SECURITY ERROR DIAGNOSTIC CODES
message-integrity-failure(22), forwarded-message-integrity-failure(23),
unsupported-algorithm(24), decryption-failed(25), token-error(26),
unable-to-sign-notification(27), unable-to-sign-message-receipt(28),
authentication-failure(29), security-context-failure(30),
message-sequence-failure(31), message-security-labelling-failure(32),
repudiation-failure(33), proof-service-failure(34),
compression-unsupported(35)
-- the received compression is not supported--}(1..ub-reason-code)
-- Negative Notification Reason Codes from a user
NNUserReasonCodeField ::= SEQUENCE {
nn-user-basic-code [0] NNUserBasicCodeField,
nn-user-diagnostic [1] NNUserDiagnosticField OPTIONAL
}
-- Negative Notification Basic Reason Codes from a user
NNUserBasicCodeField ::= INTEGER {
unspecified(0),
syntax-error(1), -- used when the user discovers a syntax error
-- within the EDI interchange
interchange-sender-unknown(2),
interchange-recipient-unknown(3), -- used when the UA cannot find a valid
-- interchange recipient in the Recipient
-- Specifier
invalid-heading-field(4), invalid-bodypart-type(5), invalid-message-type(6),
functional-group-not-supported(7),
subscription-terminated(8), -- unknown to EDIMS-User service
no-bilateral-agreement(9), user-defined-reason(10)}(0..ub-reason-code)
-- Negative Notification Diagnostic Codes from a user
NNUserDiagnosticField ::= INTEGER {
compression-unsupported(1) -- the received compression is not supported --
}(1..ub-reason-code)
-- Contains reason passed by user when the value of nn-user-basic-code is
-- user-defined-reason.
-- Additional information may be indicated in nn-supplementary-information
-- Negative Notification Reason Codes from a PDAU
NNPDAUReasonCodeField ::= SEQUENCE {
nn-pdau-basic-code [0] NNPDAUBasicCodeField,
nn-pdau-diagnostic [1] NNPDAUDiagnosticField OPTIONAL
}
-- Negative Notification Basic Reason Codes from a PDAU
NNPDAUBasicCodeField ::= INTEGER {
unspecified(0),
undeliverable-mail(1),
-- used if the PDAU determines that it cannot perform physical delivery of the
-- EDIM
physical-rendition-not-performed(2)
-- used if the PDAU cannot perform the physical rendition of the EDIM --}
(0..ub-reason-code)
-- Negative Notification Diagnostic Codes from a PDAU
NNPDAUDiagnosticField ::= INTEGER {
-- This field may be used to further specify the error signalled in
-- nn-pdau-basic-code
-- Additional information may be indicated in the nn-supplementary-information
undeliverable-mail-physical-delivery-address-incorrect(32),
undeliverable-mail-physical-delivery-office-incorrect-or-invalid(33),
undeliverable-mail-physical-delivery-address-incomplete(34),
undeliverable-mail-recipient-unknown(35),
undeliverable-mail-recipient-deceased(36),
undeliverable-mail-organization-expired(37),
undeliverable-mail-recipient-refused-to-accept(38),
undeliverable-mail-recipient-did-not-claim(39),
undeliverable-mail-recipient-changed-address-permanently(40),
undeliverable-mail-recipient-changed-address-temporarily(41),
undeliverable-mail-recipient-changed-temporary-address(42),
undeliverable-mail-new-address-unknown(43),
undeliverable-mail-recipient-did-not-want-forwarding(44),
undeliverable-mail-originator-prohibited-forwarding(45),
physical-rendition-attributes-not-supported(31)}(1..ub-reason-code)
-- Negative Notification Extension Field(s)
NNExtensionsField ::= SET OF NNExtensionsSubField
NNExtensionsSubField ::= ExtensionField
-- Forwarded Notification Fields
ForwardedNotificationFields ::= SEQUENCE {
fn-common-fields [0] CommonFields,
forwarded-to [1] ForwardedTo,
fn-reason-code [2] FNReasonCodeField,
fn-supplementary-information [3] EDISupplementaryInformation OPTIONAL,
fn-extensions [4] FNExtensionsField OPTIONAL
}
-- Forwarded To
ForwardedTo ::= ORName
-- Forwarded Reason Code
FNReasonCodeField ::= CHOICE {
fn-ua-ms-reason-code [0] FNUAMSReasonCodeField,
fn-user-reason-code [1] FNUserReasonCodeField,
fn-pdau-reason-code [2] FNPDAUReasonCodeField
}
-- Forwarding Notification Reason Codes from an EDI-UA or EDI-MS
FNUAMSReasonCodeField ::= SEQUENCE {
fn-ua-ms-basic-code [0] FNUAMSBasicCodeField,
fn-ua-ms-diagnostic [1] FNUAMSDiagnosticField OPTIONAL,
fn-security-check [2] FNUAMSSecurityCheckField DEFAULT FALSE
}
-- Forwarding Notification Basic Reason Codes from an EDI-UA or EDI-MS
FNUAMSBasicCodeField ::= INTEGER {
unspecified(0),
onward-routing(1),
-- used whenever the UA decides to re-route the subject EDIM for local reasons
edim-recipient-unknown(2), edim-originator-unknown(3), forwarded-by-edi-ms(4)
}(0..ub-reason-code)
-- Forwarding Notification Diagnostic Reason Codes from an EDI-UA or EDI-MS
FNUAMSDiagnosticField ::= INTEGER {
-- This field may be used to further specify the error signalled in
-- fn-ua-ms-basic-code.
-- Additional information may be indicated in fn-supplementary-information.
recipient-name-changed(1), recipient-name-deleted(2)}(1..ub-reason-code)
-- Forwarding Notification Security Check Codes from an EDI-UA or EDI-MS.
-- This field may be used, with a value of TRUE, to indicate that all security
-- features present have been validated, with a value of FALSE, to indicate that
-- the security features have not been validated.
FNUAMSSecurityCheckField ::= BOOLEAN
-- Forwarding Notification Reason Codes from a user
FNUserReasonCodeField ::= SEQUENCE {
fn-user-basic-code [0] FNUserBasicCodeField,
fn-user-diagnostic [1] FNUserDiagnosticField OPTIONAL
}
-- Forwarding Notification Basic Reason Codes from a user
FNUserBasicCodeField ::= INTEGER {
unspecified(0), forwarded-for-archiving(1), forwarded-for-information(2),
forwarded-for-additional-action(3), subscription-changed(4),
heading-field-not-supported(5), bodypart-type-not-supported(6),
message-type-not-supported(7), syntax-identifier-not-supported(8),
interchange-sender-unknown(9), user-defined-reason(10)}(0..ub-reason-code)
-- Forwarding Notification Diagnostic Reason Codes from a user
FNUserDiagnosticField ::= INTEGER(1..ub-reason-code)
-- Contains reason passed by user when value of fn-user-basic-code is
-- user-defined-reason.
-- Additional information may be indicated in fn-supplementary-information.
-- Forwarding Notification Reason Codes from a PDAU
FNPDAUReasonCodeField ::= SEQUENCE {
fn-pdau-basic-code [0] FNPDAUBasicCodeField,
fn-pdau-diagnostic [1] FNPDAUDiagnosticField OPTIONAL
}
-- Forwarding Notification Basic Reason Codes from a PDAU
FNPDAUBasicCodeField ::= INTEGER {
unspecified(0), forwarded-for-physical-rendition-and-delivery(1)
}(0..ub-reason-code)
-- Forwarding Notification Diagnostic Codes from a PDAU
FNPDAUDiagnosticField ::= INTEGER(1..ub-reason-code)
-- Forwarded Notification Extensions
FNExtensionsField ::= SET OF FNExtensionsSubField
FNExtensionsSubField ::= ExtensionField
-- Message Store realization
edi-submission-options EDIM-EXTENSION ::= {
VALUE EDISubmissionOptions,
IDENTIFIED BY id-ext-submission-options
}
EDISubmissionOptions ::= SET {assembly-instructions [0] BodyPartSpecifiers
}
BodyPartSpecifiers ::= SEQUENCE OF BodyPartSpecifier
BodyPartSpecifier ::= CHOICE {
stored-entry [0] SequenceNumber,
submitted-body-part [2] INTEGER(1..MAX),
stored-body-part
[3] SEQUENCE {message-entry SequenceNumber,
body-part-number INTEGER(1..MAX)}
}
EDISubmissionErrors EDIM-EXTENSION ::=
{invalid-assembly-instructions, ... -- For future extension additions --}
invalid-assembly-instructions EDIM-EXTENSION ::= {
VALUE BodyPartSpecifiers,
IDENTIFIED BY id-ext-invalid-assembly-instructions
}
END -- of EDIMSInformationObjects
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D