You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iec61850bean/asn1/iso-presentation-layer/iso-presentation-layer.asn

144 lines
4.7 KiB
Plaintext

8 years ago
ASN1 DEFINITIONS ::=
BEGIN
CP_type ::= SET {
mode_selector [0] IMPLICIT Mode_selector,
--x410_mode_parameters [1] IMPLICIT SET {
-- COMPONENTS OF Reliable_Transfer_APDUs.RTORQapdu
--} OPTIONAL,
--- Shall be used for X.410 mode only. Shall be bitwise
--- compatible with CCITT Recommendation X.410_1984.
--- This shall be the User data parameter of the CP PPDU1)
normal_mode_parameters [2] IMPLICIT SEQUENCE {
protocol_version [0] IMPLICIT Protocol_version DEFAULT {version_1},
calling_presentation_selector [1] IMPLICIT Calling_presentation_selector OPTIONAL,
called_presentation_selector [2] IMPLICIT Called_presentation_selector OPTIONAL,
presentation_context_definition_list [4] IMPLICIT Presentation_context_definition_list OPTIONAL,
default_context_name [6] IMPLICIT Default_context_name OPTIONAL,
presentation_requirements [8] IMPLICIT Presentation_requirements OPTIONAL,
user_session_requirements [9] IMPLICIT User_session_requirements OPTIONAL
-- shall not be present if equal to the Revised session
-- requirements parameter -- ,
user_data User_data OPTIONAL
} OPTIONAL
-- Shall be used for normal mode only.
-- Shall be the parameters of the CP PPDU.
}
CPA_PPDU ::= SET {
mode_selector [0] IMPLICIT Mode_selector,
--x410_mode_parameters [1] IMPLICIT SET {
-- COMPONENTS OF Reliable_Transfer_APDUs.RTOACapdu
--} OPTIONAL,
--- Shall be used for X.410 mode only. Shall be bitwise
--- compatible with CCITT Recommendation X.410_1984.
--- This shall be the User data parameter of the CPA PPDU1)
normal_mode_parameters [2] IMPLICIT SEQUENCE {
protocol_version [0] IMPLICIT Protocol_version DEFAULT {version_1},
responding_presentation_selector [3] IMPLICIT Responding_presentation_selector OPTIONAL,
presentation_context_definition_result_list [5] IMPLICIT Presentation_context_definition_result_list OPTIONAL,
presentation_requirements [8] IMPLICIT Presentation_requirements OPTIONAL,
user_session_requirements [9] IMPLICIT User_session_requirements OPTIONAL,
-- shall not be present if equal to the Revised session
-- requirements parameter --
user_data User_data OPTIONAL
} OPTIONAL
-- Shall be used for normal mode only.
}
Responding_presentation_selector ::= Presentation_selector
Presentation_context_definition_result_list ::= Result_list
Result_list ::= SEQUENCE OF SEQUENCE {
result [0] IMPLICIT Result,
transfer_syntax_name [1] IMPLICIT Transfer_syntax_name OPTIONAL,
provider_reason [2] IMPLICIT INTEGER {
reason_not_specified (0),
abstract_syntax_not_supported (1),
proposed_transfer_syntaxes_not_supported (2),
local_limit_on_DCS_exceeded (3)
} OPTIONAL
}
Result ::= INTEGER {
acceptance (0),
user_rejection (1),
provider_rejection (2)
}
Mode_selector ::= SET {
mode_value [0] IMPLICIT INTEGER { x410_1984_mode (0), normal_mode (1) }
}
User_data ::= CHOICE {
simply_encoded_data [APPLICATION 0] IMPLICIT Simply_encoded_data,
fully_encoded_data [APPLICATION 1] IMPLICIT Fully_encoded_data
}
-- Subclause 8.4 defines when each of the two alternatives shall be used.
Simply_encoded_data ::= OCTET STRING
-- See 8.4.1.
Fully_encoded_data ::= SEQUENCE OF PDV_list
-- contains one or more PDV_list values.
-- See 8.4.2.
PDV_list ::= SEQUENCE {
transfer_syntax_name Transfer_syntax_name OPTIONAL,
presentation_context_identifier Presentation_context_identifier,
presentation_data_values CHOICE {
single_ASN1_type [0] ANY,
-- Type corresponding to presentation context identifier
octet_aligned [1] IMPLICIT OCTET STRING,
arbitrary [2] IMPLICIT BIT STRING
}
-- Contains one or more presentation data values from the same
-- presentation context.
-- See 8.4.2.
}
Presentation_context_definition_list ::= Context_list
Context_list ::= SEQUENCE OF SEQUENCE {
presentation_context_identifier Presentation_context_identifier,
abstract_syntax_name Abstract_syntax_name,
transfer_syntax_name_list SEQUENCE OF Transfer_syntax_name
}
Presentation_context_identifier ::= INTEGER
Abstract_syntax_name ::= OBJECT IDENTIFIER
Transfer_syntax_name ::= OBJECT IDENTIFIER
Protocol_version ::= BIT STRING { version_1 (0) }
Calling_presentation_selector ::= Presentation_selector
Called_presentation_selector ::= Presentation_selector
Presentation_selector ::= OCTET STRING
Default_context_name ::= SEQUENCE {
abstract_syntax_name [0] IMPLICIT Abstract_syntax_name,
transfer_syntax_name [1] IMPLICIT Transfer_syntax_name
}
Presentation_requirements ::= BIT STRING { context_management (0), restoration (1) }
User_session_requirements ::= BIT STRING {
half_duplex (0),
duplex (1),
expedited_data (2),
minor_synchronize (3),
major_synchronize (4),
resynchronize (5),
activity_management (6),
negotiated_release (7),
capability_data (8),
exceptions (9),
typed_data (10),
symmetric_synchronize (11),
data_separation (12)
}
END