Приказ ФСФР РФ от 10.11.2004 N 04-908/пз
ФЕДЕРАЛЬНАЯ СЛУЖБА ПО ФИНАНСОВЫМ РЫНКАМ
ПРИКАЗ
от 10 ноября 2004 г. N 04-908/пз
ОБ УТВЕРЖДЕНИИ ТРЕБОВАНИЙ
К ФОРМАТУ ЭЛЕКТРОННЫХ ДОКУМЕНТОВ С ЭЛЕКТРОННОЙ
ЦИФРОВОЙ ПОДПИСЬЮ, ПРЕДОСТАВЛЯЕМЫХ В ФЕДЕРАЛЬНУЮ СЛУЖБУ
ПО ФИНАНСОВЫМ РЫНКАМ
В соответствии с пунктом 13 статьи 42 Федерального закона от 22.04.96 N 39-ФЗ "О рынке ценных бумаг" (Собрание законодательства Российской Федерации, 1996, N 17, ст. 1918), Стандартами эмиссии ценных бумаг и регистрации проспектов ценных бумаг, утвержденными Постановлением ФКЦБ России от 18.06.2003 N 03-30/пс (зарегистрировано в Министерстве юстиции Российской Федерации 29.08.2003, регистрационный N 5032), Положением о раскрытии информации эмитентами эмиссионных ценных бумаг, утвержденным Постановлением ФКЦБ России от 02.07.2003 N 03-32/пс (зарегистрировано в Министерстве юстиции Российской Федерации 18.09.2003, регистрационный N 5084), Положением об отчетности профессиональных участников рынка ценных бумаг, утвержденным Постановлением ФКЦБ России и Минфина России от 11.12.2001 N 33/109н (зарегистрировано в Министерстве юстиции Российской Федерации 25.12.2001, регистрационный N 3125), Приказом ФСФР России от 01.09.2004 N 04-442/пз-н "О предоставлении в Федеральную службу по финансовым рынкам электронных документов с электронной цифровой подписью" (зарегистрирован в Министерстве юстиции Российской Федерации 19.10.2004, регистрационный N 6069), приказываю:
1. Утвердить прилагаемые Требования к формату электронных документов с электронной цифровой подписью, предоставляемых в Федеральную службу по финансовым рынкам.
2. Управлению общественных связей, взаимодействия и координации (Кудинова О.Л.) обеспечить размещение Требований, утвержденных настоящим Приказом, на сайте Федеральной службы по финансовым рынкам (www.fsfm.gov.ru).
3. Контроль за исполнением настоящего Приказа возложить на заместителя руководителя Федеральной службы по финансовым рынкам Харламова С.К.
Руководитель
О.В.ВЬЮГИН
Утверждены
Приказом
Федеральной службы
по финансовым рынкам
от 10.11.2004 N 04-908/пз
ТРЕБОВАНИЯ
К ФОРМАТУ ЭЛЕКТРОННЫХ ДОКУМЕНТОВ
С ЭЛЕКТРОННОЙ ЦИФРОВОЙ ПОДПИСЬЮ, ПРЕДОСТАВЛЯЕМЫХ
В ФЕДЕРАЛЬНУЮ СЛУЖБУ ПО ФИНАНСОВЫМ РЫНКАМ
1. Общие положения
Настоящие Требования устанавливают единые требования к формату электронных документов с электронной цифровой подписью, предоставляемых в Федеральную службу по финансовым рынкам в соответствии с Приказом ФСФР России от 01.09.2004 N 04-442/пз-н "О предоставлении в Федеральную службу по финансовым рынкам электронных документов с электронной цифровой подписью".
2. Назначение
Настоящие Требования предназначены для описания состава, структуры и характеристик элементов XML-документов. Они позволяют формировать экранное (дерево навигации, содержащее ссылки на экранные формы, предназначенные для ввода и коррекции значений элементов и собственно экранные формы), электронное (XML) и бумажное (заполненные формы, определенные нормативными актами Федеральной службы по финансовым рынкам) представление документов, а также осуществлять контроль вводимых значений элементов.
3. Документы
Минимальной самостоятельной смысловой единицей передаваемой информации является документ в ХМL-формате (XML-документ).
XML-документ является поименованной структурированной последовательностью символов. XML-документы имеют строго иерархическую структуру, состоящую из элементов с неограниченной степенью вложенности.
Рис. 1. Модель документа.
Элементы описываются при помощи специальных последовательностей - тэгов. Тэгом называется последовательность символов <TAG>, где TAG - имя элемента. Все элементы представляются парой тэгов <TAG></TAG> - открывающим и закрывающим тэгами соответственно.
Элементы делятся на простые и составные. Простой элемент не может содержать внутри себя других элементов. Составной элемент может содержать произвольное количество в общем случае любых элементов. Имя элемента в начальном тэге должно в точности (с учетом регистра) соответствовать имени в соответствующем конечном тэге. Текст, содержащийся между тэгами простого элемента, является значением элемента. Составные элементы должны быть строго вложены друг в друга. Перекрестные ссылки внутри документа не допускаются.
На верхнем уровне документа должен находиться ровно один элемент. Такой элемент называется корневым. Перед корневым элементом в документе должно быть объявление XML, имеющее стандартный XML-синтаксис:
<?xml version="1.0".?>
Кроме объявления XML перед корневым элементом могут располагаться комментарии.
Имя корневого элемента документа совпадает с именем шаблона, задающего его структуру и состав.
Открывающий тэг документа в качестве обязательных параметров должен включать в свой состав номер версии шаблона и дату его создания, а также наименование документа. Таким образом, открывающий тэг корневого элемента должен быть построен по следующим правилам:
<NAME TYPE="DOCUMENT" VERSION="01" DATACREATE="2002-04-16" TITLE="Документ">,
где NAME - имя корневого элемента = имени шаблона;
TYPE - тип корневого элемента;
VERSION - номер версии шаблона;
DATACREATE - дата создания шаблона в формате ГГГГ-ММ-ДД;
TITLE - наименование документа.
Комментарии должны иметь следующий синтаксис:
<!--Комментарий-->
и располагаться в общем случае в любом месте документа, кроме тэгов элементов.
Для вызова внешних процедур, предназначенных для обработки элементов, служат инструкции по обработке, содержащие имя приложения, которым будет обрабатываться элемент, а также совокупность параметров, определяющих исходные данные, которые должны быть обработаны. Инструкция может распространяться как на весь документ в целом, так и на конкретный элемент. В любом случае инструкция должна быть помещена внутри элемента. Синтаксис инструкции следующий:
<?NAME_P [Param_1][Param_2]...?>,
где NAME_P - имя приложения;
Param_i - параметры.
4. Шаблоны
XML-документ в процессе и/или результате его формирования может иметь экранное и бумажное представление. Экранное представление XML-документа - это сформированный специальными программными средствами набор экранных форм, предназначенный для его создания, изменения и просмотра. Бумажное представление XML-документа - это также сформированный специальными программными средствами набор форм, содержащий значения элементов XML-документа.
Описание состава и структуры документа, сделанное с помощью Требований, называется шаблоном документа. Описание состава и структуры любой части документа называется шаблоном фрагмента документа. Шаблоны фрагментов документов могут быть объединены в коллекции и храниться в отдельном файле. Любой шаблон является только описанием соответствующего объекта и не содержит значений простых элементов. Совокупность шаблонов, полностью определяющих структуру и состав документа, называется формой XML-документа.
Правила формирования шаблонов аналогичны правилам формирования документов, описанным выше. Отличие заключается в том, что открывающие тэги элементов шаблона содержат атрибуты элементов (параметры), интерпретируемые как характеристики классов, что является принципиальным отличием от атрибутов элементов, определяющих свойства экземпляров. Параметры служат как для формирования экранных и бумажных форм представления XML-документов, так и для контроля вводимых значений конкретных экземпляров и не являются характеристиками элементов.
Для идентификации формы, с помощью которой сформирован документ, служат имя и номер версии шаблона документа (см. описание корневого элемента документа), а также все имена шаблонов фрагментов документов и версии их коллекций, на которые ссылается шаблон документа. Имя файла, в котором сохраняется шаблон, должно состоять из имени корневого элемента, знака подчеркивания и номера версии.
Кроме этого, при формировании шаблонов разрешены внешние ссылки. С этой целью в шаблоне документа выделяются идентичные фрагменты. Если идентичные фрагменты используются только в одном шаблоне документа, они могут быть расположены в нем же. В случае если шаблоны фрагментов предназначены для их последующего использования в других шаблонах документов, они могут быть сохранены в отдельном файле.
Рис. 2. Модель формы.
5. Описание языка
5.1. Алфавит
Алфавит языка - множество символов, используемых для представления экранного, электронного и бумажного представления документов. Алфавит языка состоит из терминальных, нетерминальных символов и разделителей.
Терминальные символы - совокупность символов, используемых для представления конструкций языка. К терминальным символам относятся: строчные и прописные буквы латинского алфавита, цифры, _ (подчеркивание), < (меньше), > (больше), ! (восклицательный знак), ? (вопросительный знак), : (двоеточие), + (плюс), - (дефис), . (точка), " (двойные кавычки), / (правый слэш), = (равно).
Нетерминальные символы - расширение набора терминальных символов, используемое для представления значений параметров конструкций языка и описываемых данных наряду с терминальными символами. К нетерминальным символам относятся: строчные и прописные буквы русского алфавита, прочие символы, имеющие графическое представление и не входящие в совокупность терминальных символов, кроме символа & (амперсанд), а также группы символов подстановки, используемые для замены терминальных символов:
Разделители - символы, используемые для разделения конструкций языка. К разделителям относятся: пробел, символ табуляции, символ перевода строки. Любая последовательность разделителей является разделителем.
Используемая кодировка символов - Windows 1251.
5.2. Конструкции языка
Конструкции языка служат для создания элементов шаблонов и документов.
В последующих описаниях используются следующие обозначения: в круглых скобках обозначены литералы. Разделитель обозначается <D>. Пустая последовательность символов обозначается *.
<элемент>::=<открывающий тэг><значение элемента><закрывающий тэг>
<элемент>::=<одиночный тэг>
<открывающий тэг>::=(<)<имя элемента><D><список параметров>(>)
<закрывающий тэг>::=(</)<имя элемента>(>)
<одиночный тэг>::=(<)<имя элемента><D><список параметров>(/>)
<имя элемента>::=<имя>
<имя>::=<буква латинского алфавита>|(_)
<имя>::=(_)
<имя>::=<имя><буква латинского алфавита>
<имя>::=<имя><цифра>
<имя>::=<имя>(_)
<значение элемента>::=<значение простого элемента>|<содержимое составного элемента>
<значение простого элемента>::=*
<значение простого элемента>::=<последовательность символов>
<последовательность символов>::=<терминальный символ>
<последовательность символов>::=<нетерминальный символ>
<последовательность символов>::=<D>
<последовательность символов>::=<последовательность символов><терминальный символ>
<последовательность символов>::=<последовательность символов><нетерминальный символ>
<последовательность символов>::=<последовательность символов><D>
<содержимое составного элемента>::=<элемент>
<содержимое составного элемента>::=<содержимое составного элемента><элемент>
5.3. Параметры элементов шаблонов
Параметры элементов служат для управления обработкой значения элемента, описания ограничений, накладываемых на значения элементов, описания способа отображения элементов в электронном, бумажном и экранном представлениях документов. Параметры элемента могут располагаться в произвольной последовательности, которая служит для идентификации типов элементов.
<список параметров>::=<параметр TYPE>
<список параметров>::=<параметр><D><список параметров>
<список параметров>::=<список параметров><D><параметр>
<параметр>::=<имя параметра>(=")<значение параметра>(")
<параметр TYPE>::=(ТУРЕ=")<тип элемента>(")
<тип элемента>::=<тип простого элемента>
<тип элемента>::=<тип элемента форматирования>
<тип элемента>::=<тип элемента подстановки>
<тип элемента>::=<тип составного элемента>
<тип простого элемента>::=(BOOLEAN)|(DATE)|(INTEGER)|(REAL)|(STRING)
<тип элемента форматирования>::=(FORMAT)
<тип элемента подстановки>::=(REFERENCE)|(REFTITLEPAGE)
Таблица 1. Допустимые параметры
для каждого из типов элементов языка
Условные обозначения:
- X - параметр обязателен для элемента данного типа;
- O - параметр используется для элемента данного типа, но его наличие не обязательно;
- Y - параметр обязателен для элемента данного типа при выполнении определенных условий (в зависимости от контекста использования).
5.4. Простые элементы
Исключения
В простых элементах внутри TABLE игнорируются значения следующих параметров: TITLE; SKIPS; SKIPD; SKIPF; POSTITLE; POSFIELD; PAGE; NOSHOW; SIZEF.
Элементы типа BOOLEAN
Элементы данного типа могут иметь только два значения - "Истина" и "Ложь"
<значение элемента типа BOOLEAN>::=(1)|(0)
1 - интерпретируется как "Истина", 0 - как "Ложь"
<список параметров элемента типа BOOLEAN>::=(TYPE="BOOLEAN")<D><параметр NOSHOW>[<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр CAULK>][<D><параметр DEFAULT>][<D><параметр EDIT>][<D><параметр FONTSIZET>][<D><параметр FONTSIZEV>][<D><параметр INDENT>][<D><параметр MEANVOC>][<D><параметр MODELF>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSFIELD>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPF>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
Если параметр DEFAULT не используется, то, по умолчанию, исходное значение элемента - "0".
Элементы типа DATE
Элементы данного типа имеют значение, интерпретируемое как дата. По умолчанию значение элемента интерпретируется как "гггг-мм-дд".
<список параметров элемента типа DATE>::=(TYPE="DATE")<D><параметр NOSHOW>[<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр CAULK>][<D><параметр DEFAULT>][<D><параметр EDIT>][<D><параметр FILLABILITY>][<D><параметр FONTSIZET>][<D><параметр FONTSIZEV>][<D><параметр INDENT>][<D><параметр MEANVOC>][<D><параметр MODELF>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSFIELD>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPF>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
Элементы типа INTEGER
Элементы данного типа имеют значение, интерпретируемое как целое число в интервале от - 9223372036854775807 до 9223372036854775807.
<значение элемента типа INTEGER>::=*|<цифра>|(-)<цифра>|<значение элемента типа INTEGER><цифра>
<список параметров элемента типа INTEGER>::=(TYPE="INTEGER")<D><параметр NOSHOW>[<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр ALIGNV>][<D><параметр CAULK>][<D><параметр DEFAULT>][<D><параметр EDIT>][<D><параметр FILLABILITY][<D><параметр FONTSIZET>][<D><параметр FONTSIZEV>][<D><параметр INDENT>][<D><параметр LENGTH>][<D><параметр MAXVAL>][<D><параметр MEANVOC>][<D><параметр MINVAL>][<D><параметр MODELF>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSFIELD>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZE>][<D><параметр SIZEF>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPF>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
Элементы типа REAL
Элементы данного типа имеют значение, интерпретируемое как десятичное число с дробной частью в интервале от -9223372036854775808 до 9223372036854775808.
<значение элемента типа REAL>::=*|<цифра>|<целая часть>(,)<дробная часть>|(-)<цифра>|(-)<целая часть>(,)<дробная часть>
<целая часть>::=<цифра>|<целая часть><цифра>
<дробная часть>::=<цифра>|<дробная часть><цифра>
<список параметров элемента типа REAL>::=(TYPE="REAL")<D><параметр NOSHOW> [<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр ALIGNV>][<D><параметр CAULK>][<D><параметр DEFAULT>][<D><параметр DIMENTION>][<D><параметр EDIT>][<D><параметр FILLABILITY>][<D><параметр FONTSIZET>][<D><параметр FONTSIZEV>][<D><параметр INDENT>][<D><параметр LENGTH>][<D><параметр MAXVAL>][<D><параметр MEANVOC>][<D><параметр MINVAL>][<D><параметр MODELF>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSFIELD>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZEF>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPF>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
Элементы типа STRING
Элементы данного типа имеют значение, интерпретируемое как строка длиной не более 65535 символов, принадлежащих алфавиту языка. По умолчанию размер строки составляет 65535 символов.
<значение элемента типа STRING>::=*|<последовательность символов>
<список параметров элемента типа STRING>::=(TYPE="STRING")<D><параметр NOSHOW> [<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр ALIGNV>][<D><параметр ALFABET>][<D><параметр CAULK>][<D><параметр COLUMND>][<D><параметр COLUMNS>][<D><параметр DEFAULT>][<D><параметр EDIT>][<D><параметр ELEMREF>][<D><параметр FILLABILITY][<D><параметр FONTSIZET>][<D><параметр FONTSIZEV>][<D><параметр FULLPATH>][<D><параметр INDENT>][<D><параметр LENGTH>][<D><параметр MASK>][<D><параметр MEANVOC>][<D><параметр MODEL>][<D><параметр MODELF>][<D><параметр NOTITLE>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSFIELD>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZE>][<D><параметр SIZEF>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPF>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
В случае использования параметра MASK значения параметров LENGTH и SIZE игнорируются. Если используется FULLPATH, то COLUMNS и COLUMND должны быть не пустыми, а значения параметров ALPHABET, LENGTH, SIZE и SIZEF игнорируются.
5.5. Элементы форматирования
Элементы типа FORMAT
Элементы типа FORMAT служат для объединения параметров, которые описывают стиль представления содержимого и значений элементов, а также параметра TITLE на бумажном носителе. Элементы типа FORMAT состоят из одиночного тэга и содержат параметры, определяющие:
- размер шрифта;
- выравнивание;
- начертание;
- отступ красной строки.
Включение параметров, входящих в состав тэга элемента типа FORMAT, в открывающий тэг элемента производится с помощью параметра PRINTSTYLE.
Элемент типа формат всегда находится на один уровень ниже элементов типа DOCUMENT и COLLECTION, в состав которых он включен.
<список параметров элемента типа FORMAT>::=(TYPE="FORMAT")[<D><параметр ALIGNP>][<D><параметр FONTSIZET>][<D><параметр FONTSIZEV>][<D><параметр INDENT>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
5.6. Элементы подстановки
Элементы типа REFERENCE
Элементы типа REFERENCE состоят из одиночного тэга и используются для включения в шаблон содержимого шаблона фрагмента документа (элемент типа FRAGMENT), хранящегося либо в отдельном файле, либо в тексте формируемого шаблона документа. Имя файла определяется значением параметра MODEL. Его отсутствие означает, что шаблон фрагмента документа находится в тексте формируемого шаблона документа. Путь от корневого элемента до элемента, содержащего включаемый шаблон фрагмента документа, определяется значением параметра FULLPATH.
В составных элементах типа DOCUMENT, FRAGMENT, ARRAY, STRUCTURE и TABLE любая последовательность элементов, входящая в их содержимое, может быть заменена элементом типа REFERENCE.
Элементы, являющиеся содержимым элемента типа FRAGMENT, переносятся в формируемый шаблон и располагаются там в том порядке, в котором они находились в элементе типа FRAGMENT. Включение или невключение конкретного элемента, являющегося содержимым элемента типа FRAGMENT, в формируемый шаблон определяется параметром REFNAME.
<список параметров элемента типа REFERENCE>::=(TYPE="REFERENCE")<D><параметр FULLPATH>[<D><параметр MODEL>][<D><параметр REFNAME>]
В момент формирования шаблона документа вместо элемента типа REFERENCE подставляется содержимое или значение элемента типа FRAGMENT, на который указывают параметры MODEL и FULLPATH.
Элементы типа REFTITLEPAGE
Элементы типа REFTITLEPAGE состоят из одиночного тэга и используются для ссылки на элемент, использующийся для формирования титульного листа документа. Элемент, на который указывает элемент типа REFTITLEPAGE, хранится либо в отдельном файле, либо в тексте формируемого шаблона документа. Имя файла определяется значением параметра MODEL. Его отсутствие означает, что элемент, на который указывает элемент типа REFTITLEPAGE, находится в тексте формируемого шаблона документа. Путь от корневого элемента до элемента, на который указывает элемент типа REFTITLEPAGE, определяется значением параметра FULLPATH. Значение параметра NOSHOW определяет необходимость отображения элемента, на который указывает элемент типа REFTITLEPAGE, в экранной форме.
<список параметров элемента типа REFTITLEPAGE>::=(TYPE="REFTITLEPAGE")<D><параметр FULLPATH><D><параметр NOSHOW> [<D><параметр MODEL>]
В момент формирования шаблона документа вместо элемента типа REFTITLEPAGE подставляется содержимое или значение элемента, на который указывают параметры MODEL и FULLPATH.
5.7. Составные элементы
5.7.1. Служебные элементы
Элементы типа DOCUMENT
Элементы типа DOCUMENT используются для описания корневого элемента документа.
Содержимое элемента представляет собой один или несколько элементов любых типов кроме элементов типа DOCUMENT и COLLECTION.
<содержимое элемента типа DOCUMENT>::=<простой элемент>
<содержимое элемента типа DOCUMENT>::=<составной элемент, допустимый для DOCUMENT>
<содержимое элемента типа DOCUMENT>::=<содержимое элемента типа DOCUMENT><простой элемент>
<содержимое элемента типа DOCUMENT>::=<содержимое элемента типа DOCUMENT><составной элемент, допустимый для DOCUMENT>
<составной элемент, допустимый для DOCUMENT>::=<элемент типа ARRAY>|<элемент типа CASE>|<элемент типа FRAGMENT>|<элемент типа IF>|<элемент типа STRUCTURE>|<элемент типа TABLE>|<элемент типа VOCABULARY>|<элемент типа REFERENCE>|<элемент типа FORMAT>
<список параметров элемента типа DOCUMENT>::=(TYPE="DOCUMENT")<D><параметр DATACREATE><D><параметр VERSION> [<D><параметр TITLE>]
Элементы типа COLLECTION
Элементы типа COLLECTION используются в качестве корневого элемента шаблона, объединяющего шаблоны фрагментов документов или словари, хранящиеся в одном файле.
Содержимое элемента данного типа представляет собой один или несколько элементов типа FRAGMENT, VOCABULARY и FORMAT.
<содержимое элемента типа COLLECTION>::=<элемент типа FRAGMENT>|<элемент типа VOCABULARY>|<элемент типа FORMAT>
<содержимое элемента типа COLLECTION>::=<содержимое элемента типа COLLECTION><элемент типа FRAGMENT>
<содержимое элемента типа COLLECTION>::=<содержимое элемента типа COLLECTION><элемент типа VOCABULARY>
<содержимое элемента типа COLLECTION>::=<содержимое элемента типа COLLECTION><элемент типа FORMAT>
<список параметров элемента типа COLLECTION>::=(TYPE="COLLECTION")<D><параметр DATACREATE><D><параметр VERSION> [<D><параметр TITLE>]
Элементы типа FRAGMENT
Элементы типа FRAGMENT представляют собой шаблоны фрагментов документов, используемые для описания одинаковых частей различных документов. Включение содержимого элемента типа FRAGMENT в формируемый шаблон документа производится с помощью элемента типа REFERENCE. Содержимое элемента представляет собой один или несколько элементов любых типов, кроме элементов типа DOCUMENT, FRAGMENT, COLLECTION или VOCABULARY.
<содержимое элемента типа FRAGMENT>::=<простой элемент>
<содержимое элемента типа FRAGMENT>::=<составной элемент, допустимый для FRAGMENT>
<содержимое элемента типа FRAGMENT>::=<содержимое элемента типа FRAGMENT><простой элемент>
<содержимое элемента типа FRAGMENT>::=<содержимое элемента типа FRAGMENT><составной элемент, допустимый для FRAGMENT>
<составной элемент, допустимый для FRAGMENT>::=<элемент типа ARRAY>|<элемент типа CASE>|<элемент типа IF>|<элемент типа REFERENCE>|<элемент типа STRUCTURE>|<элемент типа TABLE>
<список параметров элемента типа FRAGMENT>::=(TYPE="FRAGMENT") [<D><параметр DATACREATE>][<D><параметр TITLE>]
Элементы типа VOCABULARY
Элементы типа VOCABULARY описывают словари, используемые либо для присвоения простому элементу значения, выбираемого из значений, содержащихся в словаре, либо для выбора, по значению, содержащемуся в словаре, и последующего включения в документ элемента из группы элементов, являющихся содержимым элемента типа CASE, каждому из которых поставлена в соответствие одна или несколько словарных строк. Содержимое элемента данного типа представляет собой один или несколько элементов типа STRUCTURE, каждый из которых описывает словарную строку и должен содержать хотя бы один простой элемент. Количество простых элементов в каждом из элементов типа STRUCTURE должно быть одинаково. Также должны быть одинаковы имена и типы соответственно расположенных простых элементов.
<содержимое элемента типа VOCABULARY>::=<элемент типа STRUCTURE словарный>
<содержимое элемента типа VOCABULARY>::=<содержимое элемента типа VOCABULARY>
<элемент типа STRUCTURE словарный>
<элемент типа STRUCTURE словарный>::=<открывающий тэг><содержимое элемента STRUCTURE словарный><закрывающий тэг>
<содержимое элемента STRUCTURE словарный>::=<простой элемент>
<содержимое элемента STRUCTURE словарный>::=<содержимое элемента STRUCTURE словарный><простой элемент>
<список параметров элемента типа VOCABULARY>::=(TYPE="VOCABULARY")<D><параметр DATACREATE>[<D><параметр TITLE>]
5.7.2. Структурные элементы
Элементы типа ARRAY
Элементы типа ARRAY используются для указания на то, что элемент или группа элементов могут быть повторены в документе один или несколько раз. Указанный элемент или группа элементов с заполненными значениями образуют реализацию содержимого элемента типа ARRAY. Содержимое элемента данного типа представляет собой один или несколько элементов любых типов, кроме элементов типа COLLECTION, DOCUMENT, FRAGMENT или VOCABULARY.
<содержимое элемента типа ARRAY>::=<простой элемент>
<содержимое элемента типа ARRAY>::=<составной элемент, допустимый для ARRAY>
<содержимое элемента типа ARRAY>::=<содержимое элемента типа ARRAY><простой элемент>
<содержимое элемента типа ARRAY>::=<содержимое элемента типа ARRAY><составной элемент, допустимый для ARRAY>
<составной элемент, допустимый для ARRAY>::=<элемент типа ARRAY>|<элемент типа CASE>|<элемент типа IF>|<элемент типа STRUCTURE>|<элемент типа TABLE>
<список параметров элемента типа ARRAY>::=(TYPE="ARRAY")<D><параметр NAMECOL><D><параметр NAMEFIELD><D><параметр NOSHOW><D><параметр PORTION> [<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр FONTSIZET>][<D><параметр INDENT>][<D><параметр MEANVOC>][<D><параметр MODELF>][<D><параметр NOTITLE>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
Элементы типа STRUCTURE
Элементы типа STRUCTURE используются для объединения нескольких элементов. Содержимое элемента данного типа представляет собой один или несколько элементов любых типов, кроме элементов типа COLLECTION, DOCUMENT, FRAGMENT или VOCABULARY.
<содержимое элемента типа STRUCTURE>::=<простой элемент>
<содержимое элемента типа STRUCTURE>::=<составной элемент, допустимый для STRUCTURE>
<содержимое элемента типа STRUCTURE>::=<содержимое элемента типа STRUCTURE><простой элемент>
<содержимое элемента типа STRUCTURE>::=<содержимое элемента типа STRUCTURE><составной элемент, допустимый для STRUCTURE>
<составной элемент, допустимый для STRUCTURE>::=<элемент типа ARRAY>|<элемент типа CASE>|<элемент типа IF>|<элемент типа STRUCTURE>|<элемент типа TABLE>
<список параметров элемента типа STRUCTURE>::=(TYPE="STRUCTURE")<D><параметр NOSHOW> [<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр APPENDIX>][<D><параметр FONTSIZET>][<D><параметр INDENT>][<D><параметр MEANVOC>][<D><параметр MODELF>][<D><параметр NODE>][<D><параметр NOTITLE>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SECTION>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>][<D><параметр USE>]
Элементы типа TABLE
Элементы типа TABLE используются для объединения нескольких элементов, соответствующих строке или строкам таблицы. В зависимости от значения параметра SET элемент может определять либо одну строку, либо неограниченное число строк, имеющих одинаковый состав, описанный содержимым элемента. Одну таблицу описывает не разрываемая элементами других типов (с учетом подстановки, выполненной с помощью элементов типа REFERENCE) последовательность элементов типа TABLE. Содержимое элемента данного типа представляет собой один или несколько простых элементов.
<содержимое элемента типа TABLE>::=<простой элемент>
<содержимое элемента типа TABLE>::=<содержимое элемента типа TABLE><простой элемент>
Количество простых элементов в содержимом элемента типа TABLE должно соответствовать, с учетом объединения ячеек в строке таблицы, количеству описаний ширины столбца в параметре PORTION.
<список параметров элемента типа TABLE>::=(TYPE="TABLE")<D><параметр NOSHOW> [<D><параметр PAGE>]<D><параметр PORTION> [<D><параметр SET>]
5.7.3. Элементы управления
Элементы типа CASE
Элементы типа CASE используются для включения в документ элемента, выбираемого из нескольких элементов, представляющих собой содержимое элемента типа CASE. Выбор осуществляется в зависимости от значений, содержащихся в словаре (см. Элементы типа VOCABULARY), определенном параметром FULLPATH первого простого элемента, расположенного непосредственно после элемента типа CASE. Далее следуют один или несколько элементов любых типов, кроме элементов типа COLLECTION, DOCUMENT, FRAGMENT, VOCABULARY или REFERENCE. Первый элемент в содержимом элемента типа CASE может быть любой простой элемент, кроме элемента типа BOOLEAN, является управляющим и определяет, какой из последующих элементов будет включен в формируемый документ.
<содержимое элемента типа CASE>::=<управляющий элемент><заполняемый элемент>
<заполняемый элемент>::=<простой элемент>
<заполняемый элемент>::=<составной элемент, допустимый для CASE>
<заполняемый элемент>::=<содержимое элемента типа CASE><простой элемент>
<заполняемый элемент>::=<содержимое элемента типа CASE><составной элемент, допустимый для CASE>
<управляющий элемент>::=<элемент типа DATE>|<элемент типа REAL>|<элемент типа INTEGER>|<элемент типа STRING>
<составной элемент, допустимый для CASE>::=<элемент типа ARRAY>|<элемент типа CASE>|<элемент типа IF>|<элемент типа STRUCTURE>
<список параметров элемента типа CASE>::=(TYPE="CASE")<D><параметр NOSHOW>[<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр FONTSIZET>][<D><параметр INDENT>][<D><параметр LEADER>][<D><параметр MEANVOC>][<D><параметр MODELF>][<D><параметр NOTITLE>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
Наличие параметра LEADER показывает, что элемент типа CASE подчинен другому, определяющему элементу того же типа, то есть оба элемента используют один и тот же словарь, и значение, выбранное при заполнении определяющего элемента, формирует выбор, производимый подчиненным элементом. Значение параметра LEADER определяет полный путь от корневого элемента шаблона до определяющего элемента типа CASE. Определяющий элемент должен находиться на уровне не ниже управляемого.
При наличии параметра LEADER параметры COLUMND, COLUMNS, FULLPATH и MODEL игнорируются. При отсутствии параметра LEADER параметры COLUMND и COLUMNS являются обязательными.
Элементы, содержащиеся в элементе типа CASE, должны обязательно иметь параметр MEANVOC, кроме управляющего.
Элементы типа IF
Элементы типа IF используются для включения в документ, в зависимости от значения, принимаемого назначающим элементом одного из двух других элементов. Содержимое элемента типа IF представляет собой, в общем случае, три элемента. Первый элемент (типа BOOLEAN) является назначающим и определяет, какой из последующих двух элементов будет включен в формируемый документ. Второй элемент используется в том случае, если значение назначающего - "Истина", третий - в том случае, когда значение назначающего - "Ложь". Наличие третьего элемента не является обязательным. В случае его отсутствия в документ ничего не включается.
<содержимое элемента типа IF>::=<элемент типа BOOLEAN><элемент, заполняемый по значению "true">[<элемент, заполняемый по значению "false">]
элемент, заполняемый по значению "true">::=<простой элемент>|<составной элемент, допустимый для IF>
элемент, заполняемый по значению "false">::=<простой элемент>|<составной элемент, допустимый для IF>
<составной элемент, допустимый для IF">::=<элемент типа ARRAY>|<элемент типа CASE>|<элемент типа IF>|<элемент типа STRUCTURE>
<список параметров элемента типа IF>::=(TYPE="IF")<D><параметр NOSHOW>[<D><параметр ALIGN>][<D><параметр ALIGNP>][<D><параметр FONTSIZET>][<D><параметр INDENT>][<D><параметр LEADER>][<D><параметр MEANVOC>][<D><параметр MODELF>][<D><параметр NOTITLE>][<D><параметр NUMPOINT>][<D><параметр PAGE>][<D><параметр POSTITLE>][<D><параметр PRINTSTYLE>][<D><параметр SIZET>][<D><параметр SKIPD>][<D><параметр SKIPS>][<D><параметр TITLE>][<D><параметр TITLEP>][<D><параметр TRASINGT>][<D><параметр TRASINGV>]
Наличие параметра LEADER показывает, что элемент типа IF подчинен другому, определяющему элементу того же типа, то есть оба элемента используют один и тот же назначающий элемент типа BOOLEAN, и значение, выбранное при заполнении назначающий элемент типа BOOLEAN, определяющего элемента, формирует выбор, производимый подчиненным элементом. Значение параметра LEADER определяет полный путь от корневого элемента шаблона до определяющего элемента типа IF. Определяющий элемент должен находиться на уровне не ниже управляемого.
5.8. Параметры элементов
5.8.1. Служебные параметры
Параметр DATACREATE
Параметр определяет дату создания соответствующего шаблона или словаря. Значение параметра интерпретируется как "гггг-мм-дд".
Параметр VERSION
Параметр определяет номер версии шаблонов документов или коллекции шаблонов фрагментов документов. Параметр используется для формирования формы документа.
<значение параметра VERSION>::=<цифра><цифра>
5.8.2. Параметры контроля вводимых значений
Параметр ALPHABET
Параметр определяет набор допустимых символов, используемых для записи значения простого элемента типа STRING. Набор допустимых символов может быть задан условным обозначением.
<значение параметра ALPHABET>::=<последовательность символов>|<условное обозначение алфавита>
<значение параметра ALPHABET>::=<условное обозначение алфавита>(+)<последовательность символов>
<условное обозначение алфавита>::=<условное обозначение алфавита>(+)<условное обозначение алфавита>
<условное обозначение алфавита>::=($$LATIN)|($$RUS)|($$NUMBER)|($$PUNCTUATION)
"$$LATIN" - интерпретируется как все строчные и прописные буквы латинского алфавита и разделители.
"$$RUS" - интерпретируется как все строчные и прописные буквы русского алфавита и разделители.
"$$NUMBER" - интерпретируется как все цифры.
"$$PUNCTUATION" - интерпретируется как общепринятые знаки пунктуации(.,:;!?"-)
Если параметр отсутствует, то по умолчанию используются все символы языка.
Параметр DIMENTION
Параметр определяет максимальное количество разрядов, допустимое для представления дробной части числа, являющегося значением элемента типа REAL. Если параметр отсутствует, то по умолчанию используется значение 5.
<значение параметра DIMENTION>::=<цифра>
<значение параметра DIMENTION>::=<значение параметра DIMENTION><цифра>
Область допустимых значений параметра определяется областью допустимых значений элемента.
Параметр LENGTH
Параметр LENGTH определяет:
- в элементах типа INTEGER - максимальное количество разрядов, допустимое в представлении числа, являющегося значением элемента. Если параметр отсутствует, то по умолчанию используется значение 19;
- в элементах типа REAL - максимальное количество разрядов, допустимое для представления целой части числа, являющегося значением элемента. Если параметр отсутствует, то по умолчанию используется значение 20;
- в элементах типа STRING - максимальное допустимое количество символов в строке, являющейся значением элемента. Если параметр отсутствует, то по умолчанию используется значение 65535.
При одновременном использовании с параметром SIZE параметр LENGTH игнорируется.
<значение параметра LENGTH>::=<цифра>
<значение параметра LENGTH>::=<значение параметра LENGTH><цифра>
Область допустимых значений параметра определяется областью допустимых значений элемента.
Параметр MASK
Параметр определяет структуру и ограничения, накладываемые на последовательность символов, являющихся значением простого элемента типа STRING.
<значение параметра MASK>::=<последовательность символов маски>
Каждый символ маски определяет символ или группу символов, разрешенных для представления определенного символа значения элемента. Используются следующие символы маски:
- "0" - любая цифра;
- "9" - любая цифра или пробел;
- "L" - любой символ латинского алфавита;
- "I" - любой символ латинского алфавита или пробел;
- "R" - любой символ русского алфавита;
- "r" - любой символ русского алфавита или пробел;
- "V" - любой символ алфавита языка;
- "\<любой символ алфавита языка>" - в соответствующей позиции значения элемента всегда устанавливается символ, непосредственно следующий за обратной косой чертой.
По заполнении значения элемента, определяемого маской, в нем отбрасываются лидирующие пробелы, завершающие пробелы, любая последовательность пробелов заменяется одним пробелом, кроме пробелов, определенных как "\".
Символы маски должны определять только то подмножество символов, которое принадлежит к множеству символов, определяемых параметром ALPHABET или используемых по умолчанию в случае его отсутствия.
В случае если в элементе используется параметр DEFAULT, его значение должно соответствовать маске. В противном случае значение параметра DEFAULT игнорируется.
Параметр MAXVAL
Параметр определяет число, являющееся максимально возможным для значения элемента типа INTEGER или REAL.
<значение параметра MAXVAL>::=<цифра>|<целая часть>(,)<дробная часть>|(-)<цифра>|(-)<целая часть>(,)<дробная часть>
<целая часть>::=<цифра>|<целая часть><цифра>
<дробная часть>::=<цифра>|<дробная часть><цифра>
В случае отсутствия параметра наибольшее число определяется максимальным количеством разрядов, допустимым в представлении числа, являющегося значением элемента. При наличии параметра параметры DIMENTION, SIZE и LENGTH игнорируются.
Параметр MINVAL
Параметр определяет число, являющееся минимально возможным для значения элемента типа INTEGER или REAL.
<значение параметра MINVAL>::=<цифра>|<целая часть>(,)<дробная часть>|(-)<цифра>|(-)<целая часть>(,)<дробная часть>
<целая часть>::=<цифра>|<целая часть><цифра>
<дробная часть>::=<цифра>|<дробная часть><цифра>
В случае отсутствия параметра наименьшее число определяется максимальным количеством разрядов, допустимым в представлении числа, являющегося значением элемента. При наличии параметра параметры DIMENTION, SIZE и LENGTH игнорируются.
Параметр SIZE
Параметр SIZE определяет:
- в элементах типа INTEGER - точное количество разрядов, используемое в представлении числа, являющегося значением элемента;
- в элементах типа STRING - точное количество символов в строке, являющейся значением элемента.
При одновременном использовании параметров SIZE и LENGTH параметр LENGTH игнорируется.
Если параметр SIZE отсутствует, то используются ограничения на значение, определяемые параметром LENGTH.
<значение параметра SIZE>::=<цифра>
<значение параметра SIZE>::=<значение параметра SIZE><цифра>
Область допустимых значений параметра определяется областью допустимых значений элемента.
Параметр TYPE
Параметр определяет тип элемента.
5.8.3. Параметры управления обработкой
Параметр ELEMREF
Параметр используется в простых элементах типа STRING для подстановки значения простого элемента, введенного в другом месте формы. Параметр определяет полный путь от корневого элемента до элемента, значение которого необходимо подставить.
При наличии значения параметра значение параметра EDIT="false".
<значение параметра ELEMREF>::=<имя элемента>
<значение параметра ELEMREF>::=<значение параметра ELEMREF>(.)<имя элемента>
Параметр COLUMND
Параметр используется в простых элементах в том случае, когда его значение определяется по словарю. Параметр определяет имя простого элемента, в элементах типа STRUCTURE, описывающих строки словаря в содержимом элемента типа VOCABULARY. Значение элемента из выбранной словарной строки, имеющего заданное параметром имя, заполняет значение простого элемента в XML-документе. В элементах типа CASE значения элемента из выбранной словарной строки, имеющего заданное параметром имя, используется в параметре MEANVOC элементов, входящих в состав элемента типа CASE. Имя используемого словаря должно быть задано параметром FULLPATH. Параметр является обязательным в случае использования параметра FULLPATH. В противном случае параметр игнорируется.
<значение параметра COLUMND>::=<имя>
Параметр COLUMNS
Параметр используется в простых элементах в том случае, когда его значение определяется по словарю. Параметр определяет имя простого элемента, в элементах типа STRUCTURE, описывающих строки словаря в содержимом элемента типа VOCABULARY. Имя используемого словаря должно быть задано параметром FULLPATH. Значение элемента, имеющего заданное параметром имя, используется для выбора требуемой строки словаря в экранном представлении документа. Параметр является обязательным в случае использования параметра FULLPATH. В противном случае параметр игнорируется.
<значение параметра COLUMNS>::=<имя>
Параметр DEFAULT
Параметр используется в простых элементах. Параметр определяет значение простого элемента, присваиваемое ему по умолчанию при создании нового документа. Значение параметра в этом случае определяется типом элемента и значением параметра ALPHABET.
Параметр EDIT
Параметр определяет возможность изменения значения элемента в экранном представлении документа.
<значение параметра EDIT>::=(true)|(false)
Значение false интерпретируется как запрет на изменение значения элемента.
Значение true интерпретируется как разрешение на изменение значения.
Если параметр отсутствует, то по умолчанию используется значение true.
Параметр FILLABILITY
Параметр определяет, должен ли простой элемент иметь значение.
<значение параметра FILLABILITY>::=(OPTIONAL)|(REQUIRED)|(PROHIBITED)
Значение OPTIONAL означает, что наличие значения элемента не обязательно.
Значение REQUIRED означает, что наличие значения для данного элемента является обязательным.
Значение PROHIBITED означает, что элемент значения не имеет.
В случае если FILLABILITY="PROHIBITED", значение параметра DEFAULT игнорируется.
Если параметр отсутствует, то по умолчанию используется значение OPTIONAL. Может быть использован для всех простых элементов, кроме элемента типа BOOLEAN.
Параметр FULLPATH
Параметр определяет полный путь от корневого элемента до шаблона фрагмента документа или словаря (элементы типа FRAGMENT или VOCABULARY) в файле, имя которого определено параметром MODEL, либо в тексте формируемого шаблона документа.
<значение параметра FULLPATH>::=<имя элемента>
<значение параметра FULLPATH>::=<значение параметра FULLPATH>(.)<имя элемента>
Параметр LEADER
Параметр определяет путь от корневого элемента до элемента типа CASE или IF в текущем файле, являющегося управляющим.
<значение параметра LEADER>::=<имя>
<значение параметра LEADER>::=<значение параметра LEADER>(.)<имя>
Управляющие элементы, входящие в состав элементов типа IF и CASE, содержащие параметр LEADER, на экран не выводятся.
Запрещается ссылаться на элементы, входящие в состав элемента типа ARRAY.
Параметр MEANVOC
Параметр является обязательным в элементах, входящих в состав элементов типа CASE.
Параметр определяет, при каких значениях элемента словарной строки, описанного параметром FULLPATH элемента CASE, включаются в документ соответствующие элементы. Имя элемента словаря, значения которого используются в параметре MEANVOC, определяется значением параметра COLUMND элемента CASE.
<значение параметра MEANVOC>::=<значение простого элемента>
<значение параметра MEANVOC>::=<значение параметра MEANVOC>(|)<значение простого элемента>
<значение параметра MEANVOC>::=(DEFAULT)
Первая конструкция используется в том случае, когда соответствующий элемент выбирается по значению элемента одной словарной строки.
Вторая конструкция используется в том случае, когда соответствующий элемент выбирается по значениям элемента нескольких словарных строк.
Третья конструкция используется тогда, когда соответствующий элемент выбирается для всех значений элемента словарных строк, не указанных явно в других элементах, входящих в состав элементов типа CASE.
Параметр MODEL
Параметр определяет имя файла, в котором содержится требуемый шаблон фрагмента документа или словарь. Если параметр отсутствует, то по умолчанию используется текущий файл шаблона документа.
Параметр MODELF
Параметр определяет имя файла, в котором содержится требуемый элемент типа FORMAT. Если параметр отсутствует, то по умолчанию используется текущий файл шаблона документа.
Параметр NODE
Параметр определяет форму отображения элементов типа STRUCTURE в экранном представлении документа.
<значение параметра NODE>::=(true)|(false)
Значение false указывает, что в экранном представлении документа содержимое соответствующего составного элемента отображается в той же экранной форме, что и элементы, находящиеся с ним на том же уровне иерархии.
Значение true указывает, что в экранном представлении документа содержимое соответствующего составного элемента отображается в виде отдельной экранной формы, а сам составной элемент изображается в экранном представлении в виде ссылки на эту форму как в дереве навигации, так и в экранной форме.
Если параметр отсутствует, то по умолчанию используется значение true.
Параметр REFNAME
Параметр определяет перечень имен элементов, расположенных на первом уровне содержимого элемента типа FRAGMENT, на который указывает элемент типа REFERENCE.
<значение параметра REFNAME>::=<имя элемента>
<значение параметра REFNAME>::=<значение параметра REFNAME>(,)<имя элемента>
В случае отсутствия параметра по умолчанию выбираются все элементы, входящие в состав элемента типа FRAGMENT.
Параметр USE
Параметр используется только в элементах типа STRUCTURE, входящих в содержимое элемента типа VOCABULARY. Параметр определяет, доступны ли значения элементов соответствующей словарной строки, описанной элементом типа STRUCTURE в экранном представлении документа при заполнении простого элемента или выборе группы элементов, описанных элементом типа CASE. При отображении уже сформированного документа используются все словарные строки без изъятий.
<значение параметра USE>::=(true)|(false)
Значение false означает, что значения элементов соответствующей словарной строки не доступны в экранном представлении документа при его формировании.
Значение true означает, что значения элементов соответствующей словарной строки доступны в экранном представлении документа и используются при его формировании.
Если параметр отсутствует, то по умолчанию используется значение true.
5.8.4. Параметры формирования экранных и бумажных форм
Параметр ALIGN
Параметр определяет выравнивание заголовка, определяемого параметром TITLE.
<значение параметра ALIGN>::=(LEFT)|(CENTER)|(RIGHT)
В случае отсутствия параметра по умолчанию его значение равно LEFT.
Параметр ALIGNP
Параметр определяет выравнивание заголовка и значения простого элемента или заголовка составного элемента на бумажном носителе.
<значение параметра ALIGNP>::=(LEFT)|(CENTER)|(RIGHT)
Значение LEFT означает, что выравнивание осуществляется по левому краю абзаца.
Значение CENTER означает, что выравнивание осуществляется по центру абзаца.
Значение RIGHT означает, что выравнивание осуществляется по правому краю абзаца.
В случае отсутствия параметра по умолчанию его значение равно LEFT. Для всех элементов, входящих в абзац, кроме первого, параметр игнорируется.
Параметр ALIGNV
Параметр определяет выравнивание значения элемента типа REAL, INTEGER и STRING в экранном поле ввода.
<значение параметра ALIGNV>::=(LEFT)|(CENTER)|(RIGHT)
В случае отсутствия параметра по умолчанию его значение для элементов типа REAL и INTEGER равно RIGHT, для элемента типа STRING - LEFT.
Параметр APPENDIX
Параметр используется только в элементах типа STRUCTURE. Параметр определяет, будет ли данный элемент вместе с его содержимым сформирован в бумажном представлении документа в виде приложения.
<значение параметра APPENDIX>::=(true)|(false)
Значение true указывает, что данный элемент и его содержимое в бумажном представлении документа будет сформирован в виде приложения.
Значение false указывает, что данный элемент и его содержимое в бумажном представлении документа будет сформирован в основном корпусе текста документа.
Если параметр отсутствует, то по умолчанию используется значение false.
Параметр CAULK
Параметр используется в простых элементах, объединенных составным элементом типа TABLE и описывающих ячейку таблицы. Параметр определяет, будет или нет данная ячейка в бумажном и экранном представлении документа объединена по вертикали с ячейкой, находящейся над ней и описанной предыдущим элементом TABLE. Параметр игнорируется при использовании его в элементах вне описания таблиц.
<значение параметра CAULK>::=(true)|(false)
Значение false интерпретируется как объединение ячеек по вертикали.
Значение true интерпретируется как отсутствие объединения ячеек по вертикали.
Если параметр отсутствует, то по умолчанию используется значение true.
Значение параметра CAULK="true" игнорируется в следующих случаях:
- в первой строке таблицы;
- в элементах, у которых SET="true", а также у следующего;
- в элементе, у которого значение параметра EDIT не равно предыдущему;
- в элементе, у которого значение параметра FILLABILITY не равно предыдущему;
- в элементе, у которого значение ширины не равно предыдущему.
Параметр FONTSIZET
Параметр определяет размер шрифта в пунктах значения параметра TITLEP или TITLE на бумажном носителе.
<значение параметра FONTSIZET>::=<цифра>|<цифра><цифра>
В случае отсутствия параметра по умолчанию его значение равно 10.
Параметр FONTSIZEV
Параметр определяет размер шрифта значения в пунктах простого элемента на бумажном носителе.
<значение параметра FONTSIZEV>::=<цифра>|<цифра><цифра>
Область допустимых значений параметра: 1 - 1638. В случае отсутствия параметра по умолчанию его значение равно 10.
Параметр INDENT
Параметр определяет размер отступа красной строки от левого края абзаца в точках заголовка и значения простого элемента или заголовка составного элемента на бумажном носителе.
<значение параметра IDENT>::=<цифра>|(-)<цифра>|<значение элемента типа IDENT><цифра>
Область допустимых значений параметра: -1584 - 1584. В случае отсутствия параметра по умолчанию его значение равно 0. Для всех элементов, входящих в абзац, кроме первого, параметр игнорируется.
Параметр NAMECOL
Параметр определяет наименования столбцов для элемента типа ARRAY, выводимых в родительской форме.
<значение параметра NAMECOL>::=<наименование столбца>
<значение параметра NAMECOL>::=<значение параметра NAMECOL>(:)<наименование столбца>
<наименование столбца>::=<последовательность символов>
Параметр NAMEFIELD
Параметр определяет наименования элементов, значения которых используются для заполнения столбцов элемента типа ARRAY, выводимых в родительской форме.
<значение параметра NAMEFIELD>::=<перечень элементов>
<значение параметра NAMEFIELD>::=<значение параметра NAMEFIELD>(:)<перечень элементов>
<перечень элементов>::=<набор элементов>
<перечень элементов>::=<перечень элементов>(|)<набор элементов>
<набор элементов>::=<полное имя элемента>
<набор элементов>::=<набор элементов>(,)<полное имя элемента>
<полное имя элемента>::=<имя элемента>
<полное имя элемента>::=<полное имя элемента>(.)<имя элемента>
Символ ":" используется для разделения перечней имен элементов, значения которых используются для заполнения одного столбца. Символ "|" используется для разделения наборов элементов, определяемых в зависимости от количества альтернатив, определяемых в свою очередь элементом типа IF или CASE первого уровня. Символ "," используется для разделения имен элементов, значения которых выводятся в соответствующем столбце через пробел.
Имена элементов, разделенные символом ".", начинаются с имени первого элемента, являющегося прямым потомком элемента типа ARRAY.
Запрещается использовать для заполнения столбцов значения простых элементов, которые входят в состав элементов типа ARRAY и TABLE, являющихся в свою очередь содержимым отображаемого элемента.
Параметр NOSHOW
Параметр определяет, должен ли выводиться на экран и на бумагу заголовок элемента, определяемый параметром TITLE, и содержимое или значение элемента.
<значение параметра NOSHOW>::=(false)|(screen)|(paper)|(true)
Значение false означает, что заголовок элемента и его содержимое или значение выводится на экран и на бумагу.
Значение screen означает, что заголовок элемента и его содержимое или значение не выводится на экран.
Значение paper означает, что заголовок элемента и его содержимое или значение не выводится на бумагу.
Значение true означает, что заголовок элемента и его содержимое или значение не выводится на экран и на бумагу.
Если параметр отсутствует, то по умолчанию используется значение false.
Параметр NOTITLE
Параметр определяет, должен ли выводиться в бумажном представлении документа заголовок элемента, определяемый значением параметра TITLE.
<значение параметра NOTITLE>::=(true)|(false)
Значение false означает, что заголовок элемента в бумажном представлении документа должен быть выведен.
Значение true означает, что заголовок элемента в бумажном представлении документа не выводится.
Если параметр отсутствует, то по умолчанию используется значение false.
Параметр NUMPOINT
Параметр определяет номер раздела документа и используется в элементах типа STRUCTURE и ARRAY.
<значение параметра NUMPOINT>::=<цифра>
<значение параметра NUMPOINT>::=<значение параметра NUMPOINT><цифра>
<значение параметра NUMPOINT>::=<значение параметра NUMPOINT>(.)<значение параметра NUMPOINT>
Значение параметра всегда конкатенируется со значением либо параметра TITLE, либо параметра TITLEP.
Параметр PAGE
Параметр определяет, отображается ли соответствующий элемент в бумажном представлении документа с новой страницы.
<значение параметра PAGE>::=(true)|(false)
Значение false означает, что соответствующий элемент выводится в бумажном представлении вслед за предыдущим элементом без перехода на новую страницу.
Значение true означает, что соответствующий элемент выводится в бумажном представлении с начала новой страницы.
Если параметр отсутствует, то по умолчанию используется значение false.
Параметр PORTION
Параметр определяет количество столбцов, без учета объединения соседних ячеек в одной строке, в элементах типа TABLE и ARRAY, возможность объединения соседних ячеек в одной строке для элементов типа TABLE, а также, какую часть (в процентном отношении) от экранного представления соответствующей таблицы занимает данный столбец. Сумма всех частей не обязательно должна составлять 100%. В случае превышения 100% размер описываемой таблицы, соответственно указанному числу, шире размера экрана и при отображении объекта в экранном представлении используется полоса горизонтальной прокрутки. Если суммарный размер всех частей меньше 100%, то таблица по ширине занимает соответственную указанному числу часть экрана.
<значение параметра PORTION>::=<описание ширины столбца>
<описание ширины столбца>:=<цифра>|<цифра><цифра>
<значение параметра PORTION>::=<значение параметра PORTION>(:)<описание ширины столбца>
<значение параметра PORTION>::=<значение параметра PORTION>(+)<описание ширины столбца>
Литерал ":" используется для разделения описаний ширины столбцов в том случае, если соответствующие ячейки не объединены.
Литерал "+" используется для разделения описаний ширины столбцов в том случае, если соответствующие ячейки объединены со своими соседями слева в элементе типа TABLE.
Запрещается использовать литерал "+" для элементов, у которых параметр EDIT="true".
Во всех элементах типа TABLE, определяющих одну таблицу, описания ширины соответствующих по порядку столбцов должны быть одинаковы.
Параметр POSFIELD
Параметр определяет позицию (в % от ширины части экрана, предназначенной для вывода формы) вывода в экранную форму поля ввода значения элемента.
<значение параметра POSFIELD>::=<цифра>|<цифра><цифра>
В случае отсутствия параметра по умолчанию его значение равно 1.
Параметр POSTITLE
Параметр определяет позицию (в % от ширины части экрана, предназначенной для вывода формы) вывода в экранную форму заголовка элемента, определенного параметром TITLE.
<значение параметра POSTITLE>::=<цифра>|<цифра><цифра>
В случае отсутствия параметра по умолчанию его значение равно 1.
Параметр PRINTSTYLE
Параметр определяет полный путь от корневого элемента до элемента типа FORMAT в файле, имя которого определено параметром MODELF либо в тексте формируемого шаблона документа.
<значение параметра PRINTSTYLE>::=<имя>
<значение параметра PRINTSTYLE>::=<значение параметра PRINTSTYLE>(.)<имя>
Параметр SECTION
Параметр используется только в элементах типа STRUCTURE. Параметр определяет, войдет ли содержимое данного элемента в титульный лист бумажного представления документа.
Значение параметра SECTION указывает, в какой части титульного листа располагается содержимое элемента в бумажном представлении документа по следующим правилам:
- Тор - в верхней головной части титульного листа;
- LeftUp - в левой верхней области листа;
- RightUp - в правой верхней области листа;
- CrossHeader - в подзаголовочной части листа;
- SubHeader - в средней части листа;
- LeftDown - в левой нижней части листа;
- RightDown - в правой нижней части листа;
- UnderLine - в нижней части листа;
- Bottom - в подвальной части листа.
Примечание. В центральной области листа выводится заголовок документа - значение параметра TITLE элемента типа DOCUMENT.
Параметр SET
Параметр определяет, описывает ли соответствующий элемент типа TABLE одну строку или группу строк одинаковой структуры, повторяющихся неограниченное число раз.
<значение параметра SET>::=(true)|(false)
Значение false означает, что значение элемента описывает одну строку таблицы.
Значение true означает, что значение элемента описывает строку таблицы, повторяемую неограниченное число раз.
Если параметр отсутствует, то по умолчанию используется значение false.
Параметр SIZEF
Параметр определяет размер поля ввода значения элемента в процентном отношении от экранного представления формы.
<значение параметра SIZEF>::=<цифра>|<цифра><цифра>
Параметр SIZET
Параметр определяет размер поля, отводимого для вывода на экран заголовка, определяемого параметром TITLE, в процентном отношении от экранного представления формы.
<значение параметра SIZET>::=<цифра>|<цифра><цифра>
В случае отсутствия параметра по умолчанию его значение равно 96.
Параметр SKIPD
Параметр используется в простых элементах, а также в элементах типа ARRAY, IF, STRUCTURE и CASE. Параметр определяет количество переносов строк в бумажном представлении относительно предыдущей строки.
<значение параметра SKIPD>::=<цифра>|<цифра><цифра>
Значение параметра SKIPD="0" означает, что элемент размещается в текущей строке бумажного представления элемента.
Если параметр отсутствует, то размещение элемента производится в следующей строке (SKIPD="1"). Элемент, в котором значение параметра отлично от "0", является началом абзаца.
Параметр SKIPF
Параметр используется в простых элементах. Параметр определяет количество переносов строк в экранной форме относительно предыдущей строки для поля, в которое вводится значение.
<значение параметра SKIPF>::=<цифра>|<цифра><цифра>
Значение параметра SKIPF="0" означает, что поле размещается в текущей строке экранной формы.
Если параметр отсутствует, то размещение поля производится в следующей строке (SKIPF="1").
Параметр SKIPS
Параметр используется в простых элементах, а также в элементах типа ARRAY, IF, STRUCTURE и CASE. Параметр определяет количество переносов строк в экранной форме относительно предыдущей строки.
<значение параметра SKIPS>::=<цифра>|<цифра><цифра>
Значение параметра SKIPS="0" означает, что элемент размещается в текущей строке экранной формы.
Если параметр отсутствует, то размещение экранного элемента производится в следующей строке (SKIPS="1").
Параметр TITLE
Параметр определяет заголовок, выводимый в экранном представлении соответствующего элементу объекта. Если параметр отсутствует, то заголовок не выводится.
<значение параметра TITLE>::=<последовательность символов>
Параметр TITLEP
Параметр определяет заголовок, выводимый в бумажном представлении соответствующего элементу объекта. Если параметр отсутствует, то выводится значение параметра TITLE.
<значение параметра TITLEP>::=<последовательность символов>
Параметр TRASINGT
Параметр определяет начертание значения параметра TITLEP или TITLE на бумажном носителе.
<значение параметра TRASINGT>::=(BOLD)|(ITALIC)|(UNDERLINE)
<значение параметра TRASINGT>::=(BOLD)(,)(ITALIC)
<значение параметра TRASINGT>::=(BOLD)(,)(ITALIC)(,)(UNDERLINE)
Значение BOLD означает полужирное начертание.
Значение ITALIC означает начертание курсивом.
Значение UNDERLINE означает подчеркивание.
В случае отсутствия параметра по умолчанию используется обычное начертание.
Параметр TRASINGV
Параметр определяет начертание значения простого элемента на бумажном носителе.
<значение параметра TRASINGV>::=(BOLD)|(ITALIC)|(UNDERLINE)
<значение параметра TRASINGV>::=(BOLD)(,)(ITALIC)
<значение параметра TRASINGV>::=(BOLD)(,)(ITALIC)(,)(UNDERLINE)
Значение BOLD означает полужирное начертание.
Значение ITALIC означает начертание курсивом.
Значение UNDERLINE означает подчеркивание.
В случае отсутствия параметра по умолчанию используется обычное начертание.
6. Инструкции обработки простых элементов
Инструкции обработки простых элементов в качестве параметров содержат полный путь от корневого элемента до простого элемента, значение которого используется в качестве параметра. Результат обработки становится значением простого элемента, внутри которого помещена инструкция.
7. Правила подстановки
При формировании в шаблоне имен элементов, полученных в результате подстановки содержимого (полного или выборочного, определяемого параметром REFNAME) элемента типа REFERENCE, имя элемента образуется из соответствующего имени элемента типа REFERENCE с присоединением через символ "_" (подчеркивание) имени элемента, входящего в содержимое шаблона фрагмента документа, на который ссылается элемент типа REFERENCE.
8. Правила формирования XML-документов
При формировании XML-документа в него попадают только те простые элементы, которые имеют значения, включая значения, которые получены из параметра DEFAULT.
Значения простых элементов, входящих в состав элемента типа ARRAY, включаются в документ вместе с именем элемента типа ARRAY, которое повторяется столько раз, сколько экземпляров простых элементов было сформировано.
Если в составной элемент входят только простые элементы, ни один из которых не имеет значения, такой элемент также не включается в XML-документ. Если в составной элемент входят простые и составные элементы, при этом ни один из простых элементов не имеет значения, тогда его включение в XML-документ зависит от того, включается ли в документ составной элемент.
Значение простого элемента считается отсутствующим в случае если:
- пользователь не ввел никакого символа в поле редактирования;
- в элементе присутствует параметр MASK, но пользователь также не ввел никакого символа в поле редактирования;
- элемент, у которого параметр EDIT равен false, даже если параметр DEFAULT имеет значение.
9. Правила формирования имен файлов
Имя файла шаблона формируется путем конкатенации: "имя элемента типа DOCUMENT" + "_" + "значение параметра VERSION" + "." + "smt".
Имя файла документа формируется путем конкатенации: "имя элемента типа DOCUMENT" + "." + "smc".