Строки каждой таблицы, описывающей блоки информации, определяют реквизиты, которые, при переходе к стандартному описанию с использованием металингвистических конструкций, встречались бы в этом описании в одном из представлений: как обязательный, как необязательный, как условно-обязательный или как предписанный реквизит.
Обязательный реквизит - это реквизит, который должен обязательно присутствовать в файле и иметь не пустое значение.
Необязательный реквизит - это реквизит, который может как присутствовать, так и отсутствовать в файле.
Условно-обязательный реквизит - это реквизит, присутствие которого в файле обусловлено значениями, наличием или отсутствием других реквизитов этого же файла. В случае выполнения условия присутствия (УП) условно-обязательный реквизит по всем своим свойствам приравнивается к обязательному, а в случае невыполнения - отсутствует.
Предписанный реквизит - это реквизит, код которого должен обязательно присутствовать в файле, в то время как значения может и не быть.
Предписанный реквизит имеет следующую структуру:
<код реквизита> <двоеточие> (<содержание реквизита> | <пустой оператор>).
Последовательность реквизитов в блоке совпадает с их последовательностью в табличном представлении блока:
При этом для любого i (1 i N, N - число строк в разделе таблицы) представление реквизита определяется следующим образом:
"представление реквизита i>::= <обязательный реквизит i> |
<необязательный реквизит i> |
<условно-обязательный реквизит i>|
<предписанный реквизит i>
<обязательный реквизит i>::= <реквизит i>
<необязательный реквизит i>::= [<реквизит i>]
<условно-обязательный реквизит i>::= <реквизит i> |?УПi [<реквизит i>]
<предписанный реквизит i>::= <реквизит i>
Порядок следования реквизитов в файле принимается в соответствии с описанием формата.