Dictionaries.asn

Dictionaries DEFINITIONS IMPLICIT TAGS ::=

BEGIN

EXPORTS

TelcoID,

TelcoList,

MoneyType,

DictionaryTask,

DictionaryReport;

IMPORTS DateAndTime

FROM Sorm

TAGGED,

sorm-request-dictionaries,

sorm-report-dictionary-telcos,

sorm-report-dictionary-post-offices

FROM Classification

ReportedAddress

FROM Addresses;

-- Идентификатор оператора связи или филиала

TelcoID ::= INTEGER (0 .. 65535)

--- список идентификаторов операторов связи или филиалов

TelcoList ::= SEQUENCE OF TelcoID

-- Запрос

DictionaryTask ::= SEQUENCE {

id TAGGED.&id ({DictionaryTaskVariants}),

data TAGGED.&Data ({DictionaryTaskVariants} {@id})

}

DictionaryTaskVariants TAGGED ::= { dictionaryTask }

dictionaryTask TAGGED ::= {

OID { sorm-request-dictionaries}

DATA ObjectDescriptor -- тип запрашиваемого

справочника (идентификатор отчета)

}

-- ObjectDescriptor принимает значение одно из:

-- sorm-report-dictionary-telcos

-- sorm-report-dictionary-post-offices

-- sorm-report-dictionary-doc-types

-- Отчет

DictionaryReport ::= SEQUENCE {

id TAGGED.&id ({DictionaryRecordsVariants}), ---

идентификатор записи справочника

data TAGGED.&Data({DictionaryRecordsVariants}{@id}) --- данные

записи справочника

}

DictionaryRecordsVariants TAGGED ::= {

telcosRecords --- операторы связи,

обслуживаемые ТС ОРМ

| postOfficeRecords --- узлы (отделения) почтовой

связи

| docTypesRecords --- типы документов,

удостоверяющие личность

}

--- операторы связи, обслуживаемые ТС ОРМ

telcosRecords TAGGED ::= {

OID {sorm-report-dictionary-telcos}

DATA SEQUENCE OF TelcosRecord }

TelcosRecord ::= SEQUENCE {

telco-id TelcoID, --- номер филиала или

оператора связи

begin-time DateAndTime, --- время начала

действия

end-time DateAndTime OPTIONAL, --- время

конца действия

description UTF8String (SIZE (1 .. 256)) -- описание

(наименование) оператора связи или филиала

}

--- размер платежа

MoneyType ::= SEQUENCE {

value REAL, --- сумма платежа

type-id PrintableString (SIZE (1 .. 3)) --- код валюты по ISO 4217

}

--- справочник узлов (отделений) почтовой связи

postOfficeRecords TAGGED ::= {

OID { sorm-report-dictionary-post-offices }

DATA SEQUENCE OF PostOfficeRecord }

PostOfficeRecord ::= SEQUENCE {

telco-id TelcoID, --- номер филиала или

оператора связи

index-post PrintableString (SIZE (6 .. 10)) OPTIONAL, --- индекс

узла/отделения почтовой связи

office-type ENUMERATED { --- тип узла/отделения

почтовой связи

international-point (0), --- международное место почтового

обмена

customs (1), --- место таможенного досмотра

regional-centre (2), --- региональный центр

simple (3) --- узел почтовой связи

},

begin-time DateAndTime, --- время начала

действия

end-time [0] DateAndTime OPTIONAL, ---

время конца действия

full-name [1] UTF8String (SIZE (1 .. 128)) OPTIONAL, --- полное

наименование отделения почтовой связи

office-address [2] ReportedAddress OPTIONAL, --- адрес

узла/отделения почтовой связи

contact [3] UTF8String (SIZE (1 .. 128)) OPTIONAL, --- контактные

телефоны

public-point-data [4] UTF8String (SIZE (1 .. 128)) OPTIONAL ---

информация о пункте коллективного доступа, расположенного в узле/отделении

почтовой связи

}

docTypesRecords TAGGED ::= {

OID {sorm-report-dictionary-doc-types}

DATA SEQUENCE OF DocTypesRecord

}

DocTypesRecord ::= SEQUENCE {

telco-id TelcoID, --- идентификатор

оператора связи или филиала

doc-type-id INTEGER (1 .. 65535), --- идентификатор

типа документа

begin-time DateAndTime, --- время начала

действия

end-time DateAndTime OPTIONAL, --- время конца

действия

description UTF8String (SIZE (1 .. 256)) --- описание

(наименование)

}

END