Skip to content
RDMessage.asn 115 KiB
Newer Older
RDMessage {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) retainedData(3) rdHeader(0) version29(29)}

DEFINITIONS IMPLICIT TAGS ::=

BEGIN

-- =============================
-- Object Identifier definitions
-- =============================

retainedDataDomainId OBJECT IDENTIFIER ::= {itu-t(0) identified-organization(4) etsi(0) securityDomain(2) retainedData(3)}

rdHeaderId OBJECT IDENTIFIER ::= {retainedDataDomainId rdHeader(0) version29(29)}

-- ======================================
-- Top level definitions for RDHI wrapper
-- ======================================

RetainedDataMessage ::= SEQUENCE
{
    rdHeaderId              [0] OBJECT IDENTIFIER,
    retainedDataHeader      [1] RetainedDataHeader,
    retainedDataPayload     [2] RetainedDataPayload,
    retainedDataDigest      [3] OCTET STRING OPTIONAL,
        -- The digitally signed hash of the combined fields above (retainedDataHeader and
        -- retainedDataPayload)
    ...
-- ==========================================================================
-- Definitions for Retained Data header information, present in every message
-- ==========================================================================

RetainedDataHeader ::= SEQUENCE
{
    requestID       [1] RequestID,
    cSPID           [2] CSPID,
    timeStamp       [3] GeneralizedTime,
    thirdPartyCSPID [4] CSPID OPTIONAL,
    ... ,
    requestType     [5] RequestType OPTIONAL,
    requestFlag     [6] RequestFlag OPTIONAL
        -- Optional parameter specifying additional information associated with the request.
    -- Unique identifier for the CSP that issued the request
RequestType ::= UTF8String
-- Description or reference of the type of Retained Data request

    -- Configuration information associated with the request
    countryCode                 [1] CountryCode,
    authorisedOrganisationID    [2] AuthorisedOrganisationID,
    requestNumber               [3] RequestNumber OPTIONAL,
        -- all messages except GetStatusMessage and StatusMessage have a request number
        -- (see clause 6.1.2)
    ...,
    externalIdentifier          [4] ExternalIdentifier OPTIONAL
        -- Optional identifier for the request, for correlation with warrant management systems.
}

CountryCode ::= UTF8String (SIZE(2))
-- A country code as per ISO 3166-1 [4]

AuthorisedOrganisationID::= UTF8String
-- A unique identifier for an Authorized Organization issuing a Retained Data request

RequestNumber ::= UTF8String
-- Unique within a given country and Authorized Organization

-- =================================================
-- Definitions for Retained Data payload information
-- =================================================

RetainedDataPayload ::= CHOICE
    -- Payload can be a request, response, error or acknowledgement
{
    requestMessage              [1] RequestMessage,
    requestAcknowledgement      [2] RequestAcknowledgement,
    responseMessage             [3] ResponseMessage,
    responseAcknowledgement     [4] ResponseAcknowledgement,
    errorMessage                [5] FurtherInformation,
    cancelMessage               [6] CancelMessage,
    cancelAcknowledgement       [7] CancelAcknowledgement,
    getstatusMessage            [8] GetStatusMessage,
    statusMessage               [9] StatusMessage,
    getResultsMessage           [10] GetResultsMessage,
    ...,
    supplementaryRequest        [11] SupplementaryRequest,
    supplementaryResponse       [12] SupplementaryResponse
}

-- ==================================================
-- Definitions of Request message and acknowledgement
-- ==================================================

RequestMessage ::= SEQUENCE
{
    requestPriority             [1] RequestPriority OPTIONAL,
    requestParameters           [2] RequestConstraints OPTIONAL,
        -- Optional only in case a warrant is transmitted independently of a request
    deliveryPointHIB            [3] DeliveryPointHIB OPTIONAL,
        -- pre-arranged set of delivery address(es) of that specific Authorized Organization
    maxHits                     [4] INTEGER OPTIONAL,
        -- Maximum number of records to be returned.
        -- On a national basis maximum numbers could be considered
        -- In case of maxHit a responseFailed message is sent and no data is sent
        -- This parameter shall not be used simultaneously with the numberOfRecordsLimit parameter.
        -- (see clause 6.3.3.2)
    nationalRequestParameters   [5] NationalRequestParameters OPTIONAL,
        -- To be defined on a national basis
        -- Only to be used in case the present document cannot fulfil the national requirements
        -- or to transmit a warrant.
    ...,
    maxRecordsPerBatch          [6] INTEGER OPTIONAL,
        -- Indicates that multi-part delivery shall be used and each ResponseMessage shall not
        -- contain more records than specified. (see clause 6.3.3.3)
    requestedData               [7] SEQUENCE OF UTF8String OPTIONAL,
        -- only to use in case of selective requests, it contains
        -- the path to the selected parameter in XPATH notation
    numberOfRecordsLimit        [8] INTEGER OPTIONAL
        -- Indicates the upper limit on the number of records to be provided by the CSP.
        -- This parameter shall not be used simultaneously with the maxHits parameter.
        -- (see clause 6.3.3.4)
}

DeliveryPointHIB ::= UTF8String

RequestConstraints ::= SEQUENCE
{
    equals                  [1] RetainedDataRecord OPTIONAL,
    notEqualTo              [2] RetainedDataRecord OPTIONAL,
    lessThan                [3] RetainedDataRecord OPTIONAL,
        -- For numerical values
    lessThanOrEqualTo       [4] RetainedDataRecord OPTIONAL,
        -- For numerical values
    greaterThan             [5] RetainedDataRecord OPTIONAL,
        -- For numerical values
    greaterThanOrEqualTo    [6] RetainedDataRecord OPTIONAL,
        -- For numerical values
    startsWith              [7] RetainedDataRecord OPTIONAL,
        -- For strings
    endsWith                [8] RetainedDataRecord OPTIONAL,
        -- For strings
    isAMemberOf             [9] SEQUENCE OF RetainedDataRecord OPTIONAL,
    ...
    -- Priority considerations are a matter for national implementation
    -- This standard makes no statement regarding how such priorities are represented or used
    suggestedCompletionTime     [1] GeneralizedTime OPTIONAL,
        -- Indicative time that results will be ready
        -- Purely informational, not binding for either party
    ...
}

-- ===================================================
-- Definitions of Response message and acknowledgement
-- ===================================================

    responseStatus              [1] ResponseStatus,
    responsePayload             [2] SEQUENCE OF ResponseRecord OPTIONAL,
        -- Clause 6 explains use of this field
        -- A responseUnavailable message shall not have a responsePayload (see clause 5.3.1)
        -- The responseComplete and responseIncomplete message shall have a responsePayload
        -- If there are no responses, the responsePayload is present but has zero entries
    nationalResponsePayload     [3] NationalResponsePayload OPTIONAL,
        -- to be defined on a national basis
        -- only to be used in case the present document cannot fulfil the national requirements
    ...,
    responseNumber              [4] INTEGER OPTIONAL,
        -- number to identify partial results within parallel multi-part delivery
    numberOfRecordsFound        [5] INTEGER OPTIONAL
        -- Indicates the total number of records found by the CSP when the value set in the
        -- numberOfRecordsLimit has been reached or exceeded.
        -- (see clause 6.3.3.4)
}

ResponseStatus  ::= CHOICE
{
    responseComplete        [1] NULL,
        -- No further results to come
    responseIncomplete      [2] NULL,
        -- There will be at least one further response message to come
    responseUnavailable     [3] NULL,
Loading full blame...