В этом разделе описываются особенности иерархической структуры. Абстрактная структура иерархических файлов, включая простые форматы двухмерных и неструктурированных файлов, определяется в стандарте, используя нотации АСН.1 в блоке данных БДДФ (Блок данных доступа к файлу) - FADU (File Access Data Unit) ГОСТ Р 34.980.1-92 модуля нотаций АСН.1 (см. п.7.2). Иерархическая структура имеет следующие особенности:
а) структура доступа к файлу является упорядоченной древовидной структурой;
б) узлу назначается один блок данных (или ни одного блока данных);
в) каждый узел в данной структуре предоставляет доступ к своему поддереву. Блок доступа (т.е. поддерево) известен как блок данных доступа к файлу БДДФ (FADU) и состоит из структурированных узлов поддерева и блоков данных, содержащихся в этом поддереве. Корневой узел древовидной структуры предоставляет доступ ко всему файлу;
г) узел имеет назначенное ему имя, но это необязательно;
д) не накладываются ограничения на количество уровней, на длину дуги и на количество дуг, исходящих из каждого узла;
Примечания:
1. Соответствующие наборы ограничений могут содержать ограничения, накладываемые на максимальный уровень и на допустимую длину дуги.
2. Древовидная структура доступа представлена на черт.2, на котором с целью упрощения каждый узел уникально идентифицирован буквами от А до F.
Древовидная структура доступа
Черт.2
Примечание. Идентифицируются следующие части древовидной структуры (поддеревья идентифицируются своим корневым узлом):
Корневой узел дерева: узел R.
Упорядоченная последовательность обхода: узлы R, А, В, С, D, Е, F.
Порядок обхода: слева направо.
Упорядоченная последовательность обхода представляет собой специфическую последовательность узлов в древовидной структуре. Она устанавливается с помощью выполнения обхода поддерева, которое соответствует целому файлу. Обход поддерева выполняется добавлением корневого узла поддерева к концу установленной последовательности обхода до тex пор, и, кроме того, для каждого порождения поддерева в порядке его появления, пока выполняется обход этого поддерева.
Примечание. Алгоритм описывает абстрактную конструкцию последовательности, которая используется при установлении идентификации блока данных БДДФ (FADU), определяя операции "Определение местоположения" и устанавливая порядок передачи. В настоящем стандарте не определено, как должен быть реализован этот алгоритм.
Блоки данных доступа к файлу, соответствующие некоторым поддеревьям, могут быть определены таким же образом, как эти поддеревья (т.е. с помощью их корневых узлов). Подобно этому блоки данных всегда связаны с узлом и могут быть идентифицированы с помощью идентификации этого узла. Общая иерархическая структура может отображать широкий ряд различных практических структур файла. Однако реальные системы могут обеспечивать только ограниченный ряд структур, и эти ограничения, накладываемые на передаваемые файлы, могут быть модифицированы. Чтобы выразить это более ясно, вводится концепция набора ограничений. Набор ограничений определяет ограничения, накладываемые на ряд допустимых структур, и определяет способ, по которому базисные действия доступа к файлу могут модифицировать эту структуру. Наборы ограничений, отражающие определенные общие типы файлов, описываются в настоящем стандарте (см. приложение А).
Примечание. Предполагается, что для обслуживания реестра наборов ограничений будет установлена санкция на регистрацию.