12.1.1 Продукцией "ELMDefinition" является:
ELMDefinition ::=
Moduleldentifier
LINK-DEFINITIONS
"::="
BEGIN
ELMModuleBody
END
12.1.2 В любом заданном приложении ECN должен быть точно один ELM, который определяет кодирование всех сообщений, используемых в этом приложении.
Примечание - Тип (типы) АСН.1, определяющие "сообщения", часто называют "типами верхнего уровня".
12.1.3 Продукция "Moduleldentifier" и ее семантика определены в ИСО/МЭК 8824-1, подраздел 13.1.
12.1.4 "Moduleldentifier" обеспечивает однозначную идентификацию любого модуля в совокупности всех модулей АСН.1, ELM и EDM.
12.1.5 Продукцией "ELMModuleBody" является:
ELMModuleBody ::=
Imports ?
EncodingApplicationList
EncodingApplicationList ::=
EncodingApplication
EncodingApplicationList ?
12.1.6 Продукция "Imports" и ее семантика определены в ИСО/МЭК 8824-1, пункты 13.1, 13.16 и 13.17 с учетом изменений из А.1.
12.1.7 Все справочные имена, используемые в "ELMModuleBody", импортируются в ELM.
Примечание - Это является более строгим требованием, чем предъявляемое к модулям АСН.1. В модулях АСН.1 внешние ссылки могут использоваться для типов и значений, которые не были импортированы. В модуле ELM (и в модуле EDM) внешние ссылки могут использоваться только для классов кодирования, которые были указаны в разделе импортов. Цель внешних ссылок - это устранение совпадений между импортируемыми именами и предопределенными именами либо между двумя идентичными именами, импортированными из разных модулей.
12.1.8 "Imports" делает доступным внутри ELM:
a) неявно генерируемые структуры кодирования из модуля АСН.1;
b) явно генерируемые структуры из модуля EDM.
Примечание - Когда ELM импортирует явно генерируемую структуру кодирования из EDM, разделы переименований в других EDM не влияют на кодирование этой структуры (см. 15.2.4);
c) объекты и наборы объектов кодирования из модуля EDM.
12.1.9 "EncodingApplicationList" должен содержать по крайней мере одно "EncodingApplication", так как единственной функцией ELM является применение кодирования.