Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТАуправление-диссертация СПб.docx
Скачиваний:
8
Добавлен:
25.04.2019
Размер:
4.33 Mб
Скачать

2. Концептуальные основы построения информационных систем на основе формализма синтаксически вариантных лингвистических систем и метода метауправления

  1. Формальная модель синтаксически вариантной информационной системы

Поскольку в рамках настоящей работы синтаксически вариантные ин­формационные системы и рассматриваю гея как альтернатива синтаксически неизменным ИС без метауправления, построенным по "классической" мето­дологии, перед описанием формальной модели СВИС целесообразно сформи­ровать формальную модель ИС без метауправления.

Используя описания и обозначения, приведенные в п. 1.3 и п. 1.5, син­таксически неизменную ИС без метауправления можно определить как фор­мальную абстрактную систему (но не формально аксиоматическую - см. /205, 296/) ISC вида

lSc = (yA,A,o>,D) (2.1)

где у = уа и Yd - алфавит ИС, образуемый множеством уа идентификато­ров алгоритмов содержательной обработки данных уа. а также идентификато­рами структур хранения (представления) данных в БД уа (у* есть совокупность идентификаторов информационных сущностей, входящих в структуру БД, идентификаторов атрибутов этих сущностей, и идентификаторов отношений на множество сущностей, отображающих взаимосвязи информационных сущностей в структуре БД - см., например, /169,201,207/);

X ” X,j u X* - множество предложений на языке реализации функцио­нальности (то есть Хе LR(GR), где LR - ЯРФ, Gr - грамматика ЯРФ);

Xd - описание структуры БД, X*- { X | (X е Lr(Gr)) л (X е у/)};

λ- множество алгоритмических описаний процессов обработки дан­ных в интересах решения прикладных задач, реализованное на ЯРФ (можно считать, что каждое описание есть суперпозиция алгоритмов, каждый из ко­торых есть некая функция над данными, идентификаторы единиц хранения которых являются элементами Х^), то есть X» = { а | (а е Lr(Gr)) л (X е {уа* и Vt)) } (Приведенная формальная запись несколько некорректна, ибо не отра­жает взаимосвязи процедур, операторов, переменных и т. д., составляющих программную реализацию множества алгоритмов, каковой является Хл. Более строгое аннотирование А* при необходимости может быть выполнено с по­мощью какого-либо подхода из числа известных в теории программирования

  • например, операторных моделей по /208/, предикатных моделей (/79, 208 - 210/ и др.) и т. д. Однако подобная формализация в данном случае нецелесо­образна, так как для дальнейшего рассмотрения важен только факт наличия в ISc некоторого множества программно реализованных алгоритмов, которые могут использовать и изменять содержимое БД и идентификаторы которых входят в алфавит уа);

Л - автоматная модель управляющего алгоритма функциональных при­ложений (модель типа "воздействие - реакция", где "воздействие" есть собы­тие, обработка которого требует выполнения процесса содержательной обра­ботки данных, а ''реакция'1 - инициация выполнения соответствующего эле­мента v из числа Ха), которая в рамках данного описания не детализируется;

о) правила выполнения описаний процессов содержательной обработ­ки данных на множестве значений структур хранения данных в БД (на содер­жимом БД D), то есть правила выполнения машинных кодов, соответствую­щих программной реализации Я* в вычислительной среде ИС.

Модель А можно рассматривать как автоматную функцию A(t), значе­нием которой является элемент v € Ха, который подлежит выполнению как

реакция на событие, происшедшее в момент времени t (в качестве такого со­бытия будем рассматривать только определенные действия пользователя).

Следует отметить, что управляющий алгоритм функциональных прило­жений обычно стоятся как реализация цикла обработки событий, поэтому его формализация в виде модели А достаточно тривиальна. Имеются примеры формализации таких управляющих алгоритмов в виде специального графа /35/ и конечного автомата /163/, а доминирующим способом его программной реализации в современных технологиях программирования является задание объектно-событийной модели, в которой действия пользователя приводят к формированию сообщения, передаваемого соответствующему объекту для обработки - см., например, /162/.

Еще одной особенностью модели (2.1) является наличие взаимоодно­значного соответствия между Ха и у* - различие между этими множествами за­ключается в том, что первое из них образуют идентификаторы алгоритмов, а второе - программные реализации этих алгоритмов.

Процесс функционировать ИС вида ISC есть совокупность процессов решения прикладных задач (из числа Z), каждый из которых инициируется действиями пользователя, руководствующегося соответствующей методикой Zm, и представляет собой конечную последовательность этапов решения

Щ И л о,)]- d, Ка fill d2...d„, |-[а рЙ d„ . {2.2)

где Do - содержимое БД до начала процесса решения задачи;

Dj = <о( Л (tj), D,-.i) - результат каждого этапа решения задачи как резуль­тат выполнения Vj - A(tj) (1< i < n, Vj еА*), конечный результат решения зада­чи D, с DP;,

п - количество этапов решения задачи;

’(Яй - отношение "этап решения", связывающее состояния БД (оп­ределяемые как совокупность хранящихся в них данных) до и после выполнения

этапа решения, инициированного действиями пользователя в момент вре­мени

Таким образом, каждый этап решения в последовательности (2.2) опре­деляется как выполнение элемента v из множества X., выбранного управляю­щим алгоритмом Л в результате действий пользователя, причем во время вы­полнения v взаимодействие пользователя с алгоритмом А отсутствует. Иными словами, этапы отделяются друг от друга активными действиями пользовате­ля, приводящими к инициализации выполнения того или иного алгоритма из числа Ха-

Приведенное описание компонентов ИС и процесса ее функционирова­ния в ходе решения прикладных задач несколько идеализировано, так как на практике возможны реализации ИС, в которых:

БД может содержать не только предметные сведения, но и разного рода описания форм отчетов, тексты запросов на SQL и т. д. - то есть сведения са­мого различного характера, которые могут содержаться, нанример, в отдель­ных файлах;

пользователь может активизировать не программную реализацию алго­ритма v е X*. а се описание (например, скрипт на языке VisualBasic, Tel, Python и им подобных), подлежащее интерпретации соответствующими программ­ными средствами в составе ИС;

процесс решения задачи может выполняться параллельно (квазипарал­лельно) двумя и более пользователями;

база данных может быть распределенной, что вносит свою специфику в поиск, выборку и запись данных (см., например, /211/) и т. д.

Однако в рамках данной работы такая идеализация, явившаяся следст­вием стремления к построению максимально наглядной и обобщающей моде­ли, отвечающей целям исследования (а более конкретно - анализу влияния внедрения элементов метауправления в построение ИС на процессы их функ-

ционирования),

вполне допустима, поскольку конкретика реализации ИС с по­зиций описания и анализа семантической сложности ИС несущественна.

Поскольку в модели (2.1) отсутствуют механизмы синтаксической вари­антности и метауправления, в дальнейшем будем называть ИС вида ISC син­таксически неизменными ИС без метауправления (СНИС).

По аналогии с приведенным выше описанием СНИС» а также учитывая изложенное в п. 1.5, синтаксически вариантную информационную систему можно представить как формальную абстрактную систему (состав и взаимо­связи которой схематично показаны на рис. 2.1) вила

ISV=(Lc, Uc, Н, у, U А, (о, Lp, Rp, D) (2.3)

где Lc - язык представления метаинформации (ЯПМИ) (с грамматикой Gc), который можно рассматривать как ЯОФ данной ИС, фиксируемый при ее создании;

Uc - {iici, Uc2, •••* Ucm} - множество описаний на ЯОФ, каждое из которых представляет собой отдельный компонент метаинформации, являющийся предложением на Ц ((ViXl < i < m)(uCi е Ц));

Н = {Hi, Hi, Нз, Ht} и Rp - отображения, описанные ниже; у = Yd О -у* — алфавит СВИС на уровне ЯРФ, в котором у* определяется так же, как и для 1SU в (2.1), а уа представляет собой множество идентификато­ров "элементарных" алгоритмов, образующих алгоритмический базис решения прикладных задач я (то есть л - программная реализация алгоритмов, иден­тификаторы которых имеются в у*);

  • описание струюуры БД определяемое так же, как и для ISc в (2.1);

А - автоматная модель управляющего алгоритма функциональных при­ложений, отличающаяся от А в ISe тем, что значением A(t) является иденти­фикатор КМИ, который должен быть выполнен как реакция на некоторые со­бытия (определенные действия пользователя) в момент времени t, то есть A(t)

  • lie u« € U«;

правила выполнения КМИ, которые можно рассматривать как правила вывода на КМИ, образуемые правилами перевода КМИ сои и пра­вилами интерпретации результатов перевода на содержимом базы данных D -

©D-

Под переводом КМИ понимается процесс его преобразования в некото­рую форму» допускающую однозначную интерпретацию этого КМИ на мно­жестве предметных данных. Необходимость такого перевода, его содержание и особенности подробно рассматриваются в главе 3. Для представления ре­зультатов перевода необходим некий "промежуточный" язык - язык представ­ления результатов перевода (ЯПРП) Ц, со своей грамматикой Gp.

Помимо правил со важнейшую роль в СВИС играют отображения Н = {Hi, Нг, Нз, Hi} и отображение Rp, которые определяются следующим обра­зом:

Hi: Uc у - отображение содержимого КМИ на алфавит ЯРФ;

- отображение содержимого КМИ на структуру базы Дан­ных;

Нз: у “> Ad - отображение алфавита на структуру БД;

ЬЦ: Xj -> D — отображение структуры БД на содержащиеся в базе дан­ных сведения (такое отображение есть и в 1SC, однако в силу своей статично­сти и локальности использования оно исключено из модели (2.1));

Rp: Gp -> у - отображение грамматики языка представления результатов перевода на алфавит системы.

В отдельном комментарии нуждается и множество у* идентификаторов "элементарных" процедур обработки данных, составляющих алгоритмический базнс решения прикладных задач в ИС. "Элементарность" в данном случае не отвергает возможности использования одних процедур другими. Языковым конструктам (тем или иным синтаксическим единицам) в КМИ по Hi ставятся в соответствие идентификаторы процедур имеющегося алгоритмического ба­зиса, а во время и после перевода КМИ на ЯПРП это соответствие может быть найдено по отношению Rp.

Описание функционирования СВИС предполагает анализ содержания двух процессов - процесса решения прикладных задач и процесса адаптации СВИС. Описание этих процессов осложняется тем, что их реализации в кон­кретных СВИС могут достаточно сильно отличаться, поэтому ниже приведено некоторое обобщенное описание, общность которого в некоторых фрагментах достигнута в ущерб его детальности. Более подробное описание конкретных вариантов схем реализации метауправления приведено в п. 2.3 и главе 4.

По аналогии с описанием функционирования ИС без МУ процесс реше­ния прикладных задач в СВИС также может быть представлен как последова­тельность этапов решения задач вида (2.2), однако организация выполнения действий, приводящих к получению результатов этапов решения задачи, яв­ляется принципиально иной.

Каждый этап решения прикладной задачи в СВИС представляет собой последовательность действий, выполняемых как три такта.

На первом такте пользователь выполняет действия, воспринимаемые управляющим алгоритмом А как требование инициации выполнения некото­рого КМИ Uc ** A(t).

На втором такте по правилам о>и осуществляется перевод компонента и*, представленного на языке Ц, на язык Lp. Результатом перевода является некое предложение w € LP(GP). Данные действия можно рассматривать как вывод

©o(Uc RP) -> w. (2.4)

Следует учитывать, что в общем случае ЯПРП Lp не являегся языком реализации функциональности в том виде, в каком ЯРФ был определен в п. 1.4. Язык Lp - это язык представления неких цепочек \v, получаемых в резуль­тате перевода исходных КМИ и представляющих собой последовательность идентификаторов процедур алгоритмического базиса из числа уа с указанием данных (через идентификаторы из уа), для обработки которых эти процедуры должны быть вызваны (выполнены) в дальнейшем. Это, в частности, объясня­ет необходимость использования отношения Rp в ходе выполнения перевода по правилам 0)и, ибо именно это отношение дает возможность сопоставить синтаксическим единицам в тексте переводимого КМИ идентификаторы из у для реализации вычислительной семантики содержимого этого КМИ. Учиты­вая вышеизложенное, цепочку w можно рассматривать как конкатенацию це­почек WjW2...yvi (I > 0), для каждой из которых по Rp определяется пара вида (а,Ь), где а € уа, b € ул* (рис. 2.2).

На третьем такте предложение w обрабатывается (интерпретируется) по правилам о)р. Обработка заключается в последовательном выделении цепочек w . \v2,..., W| и выполнении вызовов, задаваемых этими цепочками. Вызывае­мые процедуры, идентификаторы которых определяются как элементы из уа по

отображению Rp, осуществляют собственно обработку данных в D, получая к ним доступ через описание структуры базы данных ул.

Весь процесс интерпретации цепочки w может быть записаи как

o>d(w,Rp> UD)^D', (2.5)

где D и D' - состояние БД до начала и после завершения интерпретации це­почки w соответственно.

Таким образом, процесс функционирования СВИС, соответствующий выполнению этапа решения задачи» может быть представлен как

[Db] |-[А (ti)]— Dj ] а [со» (©и (A(tj), Rp), Rp, Xd, Du) Dj 1. (2.6)

В приведенном описании функционирования ИС достаточно явно про­слеживается влияние применения МУ на процесс решения задач: оно заклю­чается в том» что пользователь путем инициации выполнения КМИ, представ­ленного на дескриптивном ЯОФ, определяег подлежащий выполнению алго­ритмический процесс содержательного преобразования данных в интересах решаемой задачи. Изменяя содержание КМИ, пользователь изменяет и потен­циальные возможности ИС с позиций возможных последовательностей импе­ративов обработки данных.

Существенно, что приведенное выше описание процесса решения задач нигде не предполагало изменения элементов алфавита ИС, и поэтому оно от­носится как к СВИС, так и к синтаксически неизменным информационным системам с метауправлением, то есть описанные закономерности характерны для любой ИС с метауправлением ее функциональностью. Таким образом, следует различать:

синтаксически неизменные информационные системы (СНИС), постро­енные по традиционной методологии и не предполагающие применения мета- управления;

синтаксически неизменные информационные системы с метауправлени­ем (СИМУ);

синтаксически вариантные информационные системы (то есть СВИС), для которых метауправление является необходимым элементом;

информационные системы с метауправлением (ИСМУ) - как объедине­ние СИМУ и СВИС.

С точки зрения формального анализа соотношения ИС с применением и без применения метауправления интерес представляет приведенная далее тео­рема.

Теорема 2.1. Для любой ИС без метауправления (то есть СНИС) можно построить ИС с метауправлением (то есть ИСМУ), которая при условии иден­тичности БД будет позволять получать идентичные результаты решения при­кладных задач.

Доказательство. Построим ИСМУ следующим образом:

поместим все элементы множества X, СПИС в множество уа (каждый элемент уа будет представлять собой процедуру с уникальным идентификато­ром);

сформируем множество КМИ так, чтобы выполнение каждого из них приводило к выполнению одной и только одной процедуры из у„, и между множествами Uc и у* было взаимооднозначное соответствие:

(Vk) (1 < k < !y»D (3j) (1< j < Ы) ((<t>i>(wu(uc), Rp) w) л (w = Y«k)).

При таком построении ИСМУ будут выполняться два отношения:

R,: X» -» уа,

R*: Uc ■» У*-

Тем самым можно определить отношение соответствия между алгорит­мами Ха в CI1ИС и КМИ Uc в ИСМУ R, вычисляемое как XaR Uc = XaRi Ri'1 Uc.

Тогда, если в СНИС выполнение i-ro этапа решения какой-либо задачи есть выполнение алгоритма v, = A(tj), v,- е X», то в ИСМУ существует КМИ, однозначно определяемый по R, выполнение которого приводит к выполне­нию этого же алгоритма.

При условии идентичности содержимого БД это приведет к равенству результатов выполнения алгоритма Vi е Хо и КМИ и*, если tic = R(vj), что и тре­бовалось доказать.

Следствием из теоремы 2.1 является следующее утверждение (приво­димое без формального доказательства): переход от СНИС к ИСМУ не приво­дит к потерям функциональных возможностей решения прикладных задач, так как любой алгоритм обработки данных, имеющийся в СНИС, может быть реа­лизован в ИСМУ.

Доказательство теоремы 2.1 также показывает, что является "платой" за применение метауправления: процесс решение задачи в ИС без МУ есть по­следовательность выполнения машинных кодов, представляющих собой эле­менты Ха, а в ИС с метауправлением - перевод КМИ на некий промежуточный язык и последующая интерпретация результатов перевода. Даже если резуль­таты перевода представляют собой текст программы на некотором языке про­граммирования, необходимо выполнил» ее трансляцию в машинные коды, а если результаты перевода есть совокупность машинных кодов, то затраты на перевод все равно остаются.

Таким образом, "платой" за использование МУ является снижение опе­ративности решения задач, которое в некоторых пределах может быть ком­пенсировано увеличение вычислительной мощности средств вычислительной техники. При современной индустрии вычислительной техники и с учетом ха­рактера функционирования ИС как системы обработки данных (управление данными - в отличие от систем реального времени, управляемых событиями с жестки временными офаничениями на длительность обработки этих событий) данный факт не яиляется принципиальным препятствием к применению МУ в ИС.

Проблема вычислительной эффективности характерна для любых язы­ков, предполагающих интерпретацию: "Языки сценариев менее эффективны, чем языки программирования систем - именно вследствие использования ин­терпретаторов вместо компиляторов, а также из-за того, что базовые понятия языка выбираются из соображений выразительной мощности и простоты,

а не в расчете на максимально эффективную проекцию на архитектуру компьюте­ра" (/187/, с. 12), однако интерес к таким языкам в последнее время постоянно возрастает (см., например, /137,187,192, 212/).

Кроме того, степень метауправления (как и степень синтаксической ва­риантности) может быть различной - она выбирается разработчиками ИС ис­ходя из требований к конкретной создаваемой системе.

Анализ содержания (2.6) позволяет утверждать, что состоятельность ИСМУ (см. определение состоятельности и функциональности в п. 1.3) в ре­шении прикладных задач определяется: данными, содержащимися в БД; содержанием компонентов мегаинформации;

множеством процедур, реализующим формальный смысл метаописаиий, каковыми являются КМИ;

множеством структур хранения данных, определяющими структуру БД. Возможность адаптации ИС за счет варьирования хранимых данных присуща любой ИС (см. п. 1.3).

Для ИС с мстауправлснием появляется возможность адаптации их функ­циональности путем варьирования содержимого КМИ в рамках неизменных структуры БД и алгоритмического базиса.

Для СВИС к указанным выше возможностям добавляется возможность варьирования синтаксиса ИС - то есть структуры БД и алгоритмическим бази­сом решения прикладных задач.

Процессы адаптации ИСМУ сводятся к внесению изменений в КМИ, причем только для СВИС эти изменения вызывают изменения и в других ком­понентах ИС. В силу наличия взаимосвязи компонентов ИС данные процессы приобретают характер цепочек изменений, показанных на рис. 2.3 (за исклю­чением варьирования данных в БД).

Завершая рассмотрение ИС с МУ, следует отметить, что синтаксическая вариантность в модели (2.3) обеспечивается возможностью варьирования ал­фавита у и механизмом реализации соответствующих изменений в отображе­нии Н|. Более строго, в СВИС при изменениях в КМИ» затрагивающих алфа­вит системы» поддержание отображения Hi в актуальном состоянии требует внесения соответствующих изменений в множества у*, y<j и в отношение Rp, а возможно -ив отношение Нз, а также содержимое БД.

Таким образом, формальная модель СНИС с МУ отличается от фор­мальной модели СВИС (то есть модели вида (2.3)) отсутствием отображения Нь ибо алфавит в этом случае неизменен, и соответственно - неизменно ото­бражение Rp, используемое в (Ои и <*>d.

    1. Логическая структура информационной системы с мета­управлением ее функциональностью

Одно из центральных мест в построении ИС с МУ занимает определе­ние ее логической структуры. Для каждой ИС логическая структура может иметь различные специфические особенности, но можно выделить и ряд об­щих струюурных свойств для множества ИС, в которых используются ком­поненты метаинформации и метауправление. Эти общие свойства обусловле­ны конечностью возможных вычислительных схем, которые могут быть при­няты при построении ИС с МУ.

По аналогии с /213/ под вычислительной схемой ИС с МУ будем пони­мать способ организации процесса функционирования ИС, в котором КМИ участвуют в выполнении этапов решения прикладных задач.

Соответственно, учитывая используемый уровень абстрактного рас­смотрения ИС с МУ, под логической структурой ИС с МУ будем понимать типовую вычислительную схему использования КМИ в осуществляемых вы­числительных процессах решения прикладных задач.

На организацию вычислительной схемы выполняемого процесса реше­ния задачи с использованием КМИ влияют следующие факторы, определяе­мые при создании ИС:

возможность варьирования содержимого КМИ (то есть формирования и ведения КVIИ со стороны пользователя во время эксплуатации ИС); способ выполнения перевода выполняемого КМИ на ЯПРП; особенности языка представления результатов перевода с позиций воз­можности дальнейшего использования переведенных КМИ; организация хранения результатов перевода КМИ; способ интерпретации результатов перевода КМИ.

Перечисленные факторы можно рассматривать как классификационные признаки вычислительных схем использования КМИ в ИС с МУ. Их вочмож- ные значения приведены в табл. 2.1 н описаны ниже.

Значения классификационных признаков вычислительных схем использования КМИ в ИС с мстауправленисм

Таблица 2.1

Наименование и обозначение классифи­кационного признака

Возможные значения классификационного признака

возможность изменения содержимого КМИ со стороны пользователя (г.)

  1. - без возможности изменения исходного множества КМИ

  2. - с возможностью формирования новых КМИ и измене­

ния содержания существующих

способ выполнения перевода выполняемого КМИ на ЯПРП (G) -

  1. - автоматический перевод

  2. - перевод, требующий участия пользователя

особенности языка представления результатов перевода (rj)

  1. - декларативный ЯПРП

  2. - процедурный машикоориентированный язык или язык

высокого уроння

  1. - машинные коды

организация хранения ре­зультатов перевода (г4)

  1. - без сохранения результатов перевода

  2. - с сохранением результатов перевода, позволяющим осуществлять их дальнейшее многократное использование

способ интерпретации ре­зультатов перевода

1

  1. - интерпретация содержимого результатов перевода

  2. - компиляция и выполнение результатов перевода

  3. - выполнение результатов перевода

В соответствии с первым признаком можно выделить ИС, в которых не предусмотрено формирование и изменение содержимого КМИ со стороны пользователя (то есть множество Uc в модели (2.3) является фиксированным), и ИС, в которых такие изменения допустимы. Очевидно, что СВИС относятся только ко второй группе, хотя сам по себе факт вхождения ИС в эту группу еще не означает ее синтаксической вариантности.

Второй признак определяется способом выполнения первого этапа вы­полнения КМИ, то есть его перевода. Перевод на ЯПРП может осуществлять­ся кик автоматически, так и автоматизировано. В последнем случае пользова­тель имеет возможность влиять на содержание результатов перевода непосредственно

в ходе его выполнения, а перевод без такого участия пользовате­ля выполнен быть не может (что означает наличие в исходном КМИ некото­рого недетерминизма, неопределенности, многозначности и т. д., которые мо­гут быть устранены только пользователем).

Третий признак зависит от характера языка, используемого для пред­ставления результатов перевода, с точки зрения возможности организации процесса дальнейшего использования этих результатов. Это может быть неал­горитмический язык, алгоритмический язык (высокого уровня или машино­ориентированный), или машинный язык (язык кодов машинных команд).

Значение четвертого признака зависит от наличия в ИС возможности сохранения результатов перевода для их последующего в общем случае мно­гократного использования. Если такое сохранение не предусмотрено, то это означает, что выполнение правил перевода и интерпретации логически объе­динено в единый процесс по классической схеме интерпретирующих систем /15, 179, 214/- перевод и немедленная интерпретация, и повторная интерпре­тация требует и повторного перевода. В противном случае единожды полу­ченные результаты перевода могут быть интерпретированы сколь угодно много раз, что с одной стороны в частных случаях несколько повышает опе­ративность решения задач, а с другой - порождает опасность использования "устаревших" результатов перевода, если в КМИ вносятся изменения.

Значение пятого признака тесно связано со значение третьего и харак­теризует способ интерпретации результатов перевода на множестве предмет­ных данных (то есть способ осуществления преобразования предметных дан­ный на основе содержимого результатов перевода). Это может быть интер­претация (в данном контексте - как способ организации выполнения про­грамм), компиляция и последующее выполнение, либо непосредственное вы­полнение. Последнее возможно только в том случае, если результаты перево­да представляют собой совокупность машинных команд.

Использование введенных выше признаков (п - Г5) позволяет поставить в соответствие каждой возможной логической структуре ИСМУ вычисли­тельную схему со своим характеристическим вектором г = < Г|, г*, г*, r.j, Г5>.

Ниже описаны типовые варианты логической структуры ИСМУ, опре­деляемые набором значений характеристического вектора.

Рис. 2.4. Логическая структура ИС со статичными ннтсриретирусмыми мстаописания.ми

Процесс выполнения КМИ: со (Л(1). Rp, X*, D) -> D'

ИС с двухступепчатой схемой интерпретации статичных метаописаний имеют характеристический вектор <0, 1, 1, 1, 1 > и отличаются от предыду­щих возможностью сохранения результатов перевода (рис. 2.5). В этом случае пользователь инициирует перевод одного из имеющихся и неизменных КМИ только тогда, когда интерпретация имеющихся результатов перевода не по­зволит получить требуемые результаты решения. Результаты перевода могут содержать и сведения о том, как именно был получен данный перевод, то есть какие действия предпринимал пользователь п процессе перевода для получения

ИС со статичными интерпретируемыми метаописаниями являются наи­более простым вариантом ИС с использованием метауправления и характери­стическим вектором <0,1, 1,0, 1> (рис. 2.4). В таких ИС пользователь может только инициировать выполнение одного из имеющихся КМИ, а процесс вы­полнения представляет собой совмещенное выполнение перевода и интерпре­тации.

и менно этого результата. Такие сведения позволяют пользователю ориен­тироваться в накопленном множестве результатов перевода, а также могут влиять на работу интерпретирующей программы.

Для ИС с порождением программ по статичным метаописаниям харак­терно формирование в качестве результатов перевода либо текста программы на алгоритмическом языке с его последующей компиляцией и выполнением (характеристический вектор <0, 1, 1,2, 2 >), либо программы в виде совокуп­ности машинных команд, которые могут быть непосредственно выполнены (характеристический вектор <0, 1, 1,3,3 >) (рис. 2.6).

ИС с двухступенчатой схемой интерпретации варьируемых метаописа­ний отличается от ИС с двухступенчатой схемой интерпретации статичных метаописаний наличием средств формирования и ведения (изменения, удале­ния) КМИ. Поскольку пользователь может достичь изменения процесса ре­шения задачи изменением содержимого выполняемых КМИ, его участие в процессе перевода в данном случае перестает быть обязательным, и характе­ристический вектор таких ИС может иметь вид <1, I, I, I, 1 > или <1,0, 1, I, I > (рис. 2.7).

А налогично, ИС с порождением программ по варьируемым метаописа- ниям отличаются от ИС с порождением программ по статичным метаописа­ниям наличием средств формирования и ведения КМИ, то есть имеют харак­теристический вектор < 1, 1, 1,2,2 >, < 1,1, 1, 3, 3 >, < 1,0, 1,2, 2 > или <1,0, 1,3,3> (рис. 2.8).

Рис. 2.8. Логическая it рут ура ИС с порождением программ по варьируемым мстаописаниям

Более детальное описание логических структур на концептуальном уровне рассмотрения ИСМУ нецелесообразно. В главе 4 приведены примеры конкретных ИСМУ, логическая структура которых соответствует приведен­ным выше типовым схемам. Роль логической структуры при построении ИСМУ заключается в том, что она определяет конструкцию создаваемой сис­темы с позиций функционального состава компонентов системы и их взаимо­связей в процессе функционирования ИС.

Кроме того, анализ возможных логических структур позволяет выде­лить вычислительный формализм, обеспечивающий хранение и обработку мстаоиисаний, формально описать его состав и определить множество моде­лей его компонентов, которые должны входить в методологию построения ИСМУ.

2.3. Концептуальная модель вычислительного формализма информаци­онной системы с метауправлением

Применение метауправления в ИС приводит к тому, что хранению и об­работке подлежат как предметные данные, так и метаданные. Последние со­ставляют совокупности метаописаний, функционально и конструктивно объ­единяемых в компоненты мстаинформации.

Такое деление данных на два взаимосвязанных уровня (из которых пер­вый, согласно парадигме метауправления, является управляющим по отноше­нию ко второму) фактически приводит к тому, что в ИС образуется своеоб­разная база знаний (по определению базы знаний, приведенному в /202/). Од­нако по сравнению со структурой базы знаний по С. С. Лаврову /215/, струк­тура базы знаний ИСМУ имеет некоторое расширение в части метаинформа­ции - рис. 2.9.

Рис. 2.9. Структура базы знаний ИС с метаунравденисм

Расширение заключается в том, что мстаикформация содержит как по­нятийное знание, отражающее предметную область и выступающее в качестве ее понятийной модели, так и сведения, определяющие вычислительный про­цесс обработки предметных знаний средствами алгоритмического базиса с целью получения требуемого результата решения прикладной задачи

Следует отметить, что наличие ба ш знаний не является основанием для того, чтобы отнести ИСМУ к интеллекгуальным информационным системам и к экспертным системам, так как в ИСМУ не предусматриваются сстесгасн- но-языковая форма общения с пользователем, механизм логического вызода на знаниях, механизм объяснений получаемых решений и другие неизменные атрибуты интеллектуальных и экспертных систем - /96. 190, 2! 6/ и др..

Сведения, определяющие вычислительный процесс обработки предмет­ных данных можно отнести к прикладным (в узком смысле) знаниям, ибо они и являются следствием применения ИС для решения тех или иных приклад­ных задач в некоторой предметной области. В частности, в КМИ могут со­держаться указания как на содержание подлежащих выполнению преобразо­ваний предметных данных, так и ка форму представления результатов этих преобразований - например, описание формы таблицы и правил заполнения ее ячеек. На концептуальном урозне, без рассмотрения вычислительной и де­нотационной семантики средств пределявления метаинформации, определить прикладные знания более точно не представляется возможным, однако грань между предметными и прикладными знаниями можно провести даже интуи­тивно ' предметные сведения отображают предметную область, а прикладные

  • решаемые задачи.

Исходя из вышеизложенного, можно предположить, что в ИСМУ как и системе, обеспечивающей хранение и обработку данных, имеются две состав­ляющих - по отношению к предметным данным и по отношению к метадан­ным (рис. 2.10).

Д ля предметных данных такая составляющая включает в себя базу дан­ных, систему управления базой данных и приложения, обеспечивающие под­держание базы данных в актуальном состоянии. Подобный набор средств дос­таточно традииионен для ИС - /91,99,103,118,217/ и др., и в случае ИСМУ к нему необходимо добавить процедуры, составляющие ес алгоритмический базис.

По отношению к метаданным, хранение и обработка которых больше тяготеет к методам хранения и обработки знаний, соответствующую состав­ляющую ИСМУ можно рассматривать как реализацию некоторого вычисли­тельного формализма представления метаинформации.

Целесообразность такого рассмотрения обусловлена тем, что использо­вание модели вычислительного формализма позволяет осуществить переход от эвристического описания процессов хранения и обработки метаданных к

теоретико-множественному и абстрактно-алгебраическому уропням их опи­сания, то есть достичь уровня абстракции описания ИСМУ, в рамках которого возможно построение формальных моделей представления, формирования, перевода и интерпретации метаинформации.

Взаимосвязь указанных выше составляющих осуществляется через ал­горитмы интерпретации компонентов метаинформацни, которые осуществ­ляют вызовы процедур алгоритмического базиса, а эти процедуры выполняют собственно обработку (преобразование) предметных данных.

В соответствии с /218/ вычислительный формализм (ВФ) представления знаний определяется как объединение дескриптивного языка представления знаний и обрабатывающей структуры, образованной множеством процедур, способных реализовать формальный смысл (вычислительную семантик)') опи­сания, составленного на дескрип тивном языке (согласно /190/ такой ВФ мож­но рассматривать как метод представления знаний).

Применительно к ИСМУ можно построить концептуальную модель ВФ представления метаинформации (далее — вычислительного формализма),. Концептуальность модели обусловлена ее собирательным, обобщающим ха­рактером, и находит свое отражение в степени детализации как структуры ВФ, так и описания образующих ее элементов и связей.

Учитывая специфику построения, программной реализации и функцио­нирования ИСМУ, приведенное выше определение ВФ следует несколько из­менить и расширить:

с точки зрения представления и хранения метаинформации первичным следует считать не язык, а модель представления метаинформации, ибо (и это показано в главе 3) для одной модели представления может быть предложено потенциально бесконечное множество языков представления;

в структуру ВФ следует ввести трехуровневую организацию, позво­ляющую разделить абстрактное описание процессов хранения и обработки

метаинформации, инвариантное к программной реализации, и собственно программную реализацию, определяющую внешнее и внутреннее представле­ние метаипформации и выполняемые над ней операции.

Учитывая вышеизложенное, состав концептуальной модели ВФ можно определить как совокупность взаимосвязанный моделей представления и об­рабатывающей структуры, декомпозируемых но трем уровням: общения, ло­гическому и внутреннему (рис. 2.11) (можно провести аналогию между этими уровнями и внешними, промежуточными н внутренними языками, подробно описанными в/219/для человеко-машинных систем).

Уровень модели общения составляют модель отображения (визуализа­ции) метаинформации и операционный базис модели общения, понятие и компоненты которой в общем виде рассмотрены, например, в /216Л По сути, в первом приближении модель общения определяет, что увидит на экране мо­нитора пользователь при работе с метаинформацией, и какие действия со сто­роны пользователя могут быть выполнены. Основным средством формализа­ции и реализации операционного базиса модели общения являются типовые элементы диалога, каждый из которых можно рассматривать как единую са­мостоятельную операцию, существенную для остальных уровней ВФ.

Внутренний уровень (уровень внутреннего представления) образует собственно программная реализация ИС, то есть этот уровень составляют аб­страктные структуры хранения метаданных в терминах используемых языков программирования, и процедуры обработки этих данных.

Логический уровень (уровень абстрактного представления) является цетральным (определяющим) уровнем ВФ, образуемым формальными моде­лями представления метаинформации и процессов ее формирования и веде­ния, перевода и интерпретации.

Существенно, чю уровень модели общения и внутренний уровень опре­деляются программной реализацией ИС - при неизменном содержании логи­ческого уровня внутреннее содержание и внешнее представление ИСМУ мо­жет варьироваться в широчайших пределах, и конкретная реализация зависит как от конструктивных требований к ИС, так и профессионального мастерст­ва разработчиков.

Компоненты всех трех уровней ВФ взаимосвязаны, причем межуровне- вые связи обуславливают тождественность данных и операций различных уровней, что может быть описано формально - например, так, как показано на рис. 2.12 и описано ниже.

Рис. 2.12. Схема взаимосвязей компонентов различных уровней ВФ при выполнен ни операций

Введем следующие обозначения:

$а — состояние мета информации, под которым понимается структура и значения метаданных в рамках используемой модели представления мстаин- формации, на логическом уровне;

Sr - состояние мегаинформации, под которым понимается совокупность значений абсчрактных структур логической модели данных на внутреннем уровне (очевидно, что между множествами значений Sa и S, имеет место взаи­мооднозначное соответствие, определяемое выбранным способом представле­ния логической модели данных в используемом языке программирования Х„

S,-Xr ($»)).

• При рассмотрении операций уровня модели общения, логического и внутреннего уровней как множеств функций F0, F, и Fr соответственно, можно записать

где Sa — состояние метаипформации до выполнения функции Г0;

Sa' - состояние метаинформации после выполнения функции f0; fc - одна из функций множества F0с е F0).

Очевидно, что выполнение f0 над средой S, приводит к выполнению од- ной или нескольких функций fa € F„ а каждой нз последних соответствует выполнение одной или нескольких функций fr е Fr. Тогда имеет место

где f0 - функция, соответствующая выполняемой операции уровня мо­дели общения;

fa(k> — композиция к функций множества Р, (f0(k) с F,+, k > 0, Fa* — тран­зитивное замыкание множества F»);

fr(,) — композиция I функций множества Fr (fr111 е Fr+, 1 > 0, Fr+ — транзи­тивное замыкание множества F).

Пусть М0 - отображение элементов множества Fc на композиции (це­почки) элементов множестпа Fn, Мг - отображение цепочек элементов множе­ства Fa на композиции (тючки) элементов множества Fr:

Me: Fo -> Fa+, Mr: Ft+ -► F*, то есть M0 и Mr задают эквивалентное соответствие на множествах опе­раций различных уровней.

Тогда = Mo (f0), fr(l> = Mf (£***) ■ Mr (M0(f0)), и выполнение операции Г0 можно записать как преобразования Sr' = fr(l) (Sf) = fr(l) (Xr(Sr)) на внутреннем уровне, приводящие к изменениям вида Sa 1 = М0 (foX^a)= X/^S,')

на логическом уровне и отображаемые для пользователя как изменения Х0 (Sd) Хо (Sa'), где Хо -способ отображения метаинформации, выбранный в реализованной модели общения.

При условии инвариантности множества F„ (как множества операций логического уровня) построение ИСМУ предполагает:

определение внутреннего уровня - как отображения М, и множества Fr (Fr = M,(F*)) и способа представления данных Х„ обеспечивающего Sf Xf(Sa);

определение уровня модели общения - как отображения Mo'1 и множе­ства F0 (F0 — Mo'^Fa)) и способа визуализации метаинформацня Хп.

Данное положение демонстрирует первичность логического уровня и возможность изменения реализации ИСМУ при неизменном логическом уровне (например, при изменении версии программной реализации, связан­ной с изменением операционной среды, вычислительной платформы и т. д.), и дает возможность перейти к рассмотрению содержания процесса создания ИСМУ.

Однако перед описанием процесса создания ИСМУ необходимо ввести понятие схемы формализации, в дальнейшем широко используемое в настоя­щей работе.

По аналогии с понятием формализации на основе типовых математиче­ских схем /218, 219/ под схемой формализации будем понимать принятый способ структуризации и формализации сведений, то есть способ формирова­ния описания в виде совокупности спецификаций, определяющий некую но­тацию представления спецификаций и правила их соотнесения с объектами, явлениями и процессами описываемой области (системы). Более подробно понятие спецификаций и схемы формализации, а также примеры конкретных схем и их применения приведены в главе 4. Здесь же следует отметить, что каждый КМИ создается на основе некоторой схемы формализации в рамках общей модели представления метаинформации.

Для неформальной демонстрации соотношения схемы формализации и модели представления на рис. 2.13 приведен элементарный пример представ­ления сведений, описывающих неориентированный конечный граф в рамках одной модели представления (в данном случае - с использованием единст­венного предиката Р), но разных схем формализации. Для первой схемы предикат

P(x,y,z) интерпретируется как наличие дуги z между вершинами х и у, а для второй предикат Р(х,у) интерпретируется как факт инцидентности дуги х вершине у.

.

Рис. 2.13. Пример описания структуры графа с использованием двух схем формализации

Таким образом, выбираемая модель представления должна обеспечи­вать применение требуемой схемы формализации, а схема формализации оп­ределяет применение модели представления для конкретных приложений (в интересах конкретных описаний).

Па концептуальном уровне общая последовательность создания ИСМУ может быть представлена в виде совокупности действий, сгруппированных в три этапа работ, предполагающих наличие типовых моделей логического уровня ВФ ИСМУ. В данном контексте рассматриваемые этапы не связыва­ются с какими-либо этапами работ по созданию автоматизированных работ, предусмотренными ГОСТ или иными стандартами. Кроме того, в приведен­ном ниже перечне работ сознательно опущены вопросы создания составляю­щей ИС в части предметных данных, а также технологические аспекты процесса

создания, так как главная цель приводимого описания - демонстрация взаимосвязи элементов концептуальных основ построения ИСМУ, описание которых приведено выше в данной главе

На этапе формирования замысла ('концепции') осуществляются: выбор уровня семантической сложности создаваемой системы — синтак­сически неизменная или синтаксически вариантная ИС;

определение степени синтаксической вариантности и области функций ИС, реализация которых будет основана на метауправлении;

определение классификационных признаков вычислительной схемы ис­пользования метаинформации и логической структуры создаваемой ИСМУ.

На этапе проектирования ИС формирование проектных решений пред­полагает:

определение номенклатуры и классификации КМИ, которые будут ис­пользоваться в создаваемой системе;

выбор (разработку) схем формализации для каждого типа КМИ; адаптацию модели представления метаинформации, обеспечивающую применение выбранных схем формализации, и уточнение ее вычислительной семантики;

адаптацию (уточнение, упрощение или развитие) формальных моделей процессов формирования, перевода и интерпретации КМИ с учетом исполь­зуемых схем формализации и принятой модели представления метаинформа­ции;

проектирование компонентов модели общения (интерфейса пользовате­ля, типовых элементов диалога и т. д.) и внутреннего уровня как проекции моделей и средств логического уровня на уровень общения и внутренний уро­вень ВФ соответственно.

На этапе реализации ИС осуществляется собственно создание компо­нентов уровня модели общения и внутреннего уровня, завершающееся созданием­

базы данных, алгоритмического базиса и соответствующих им началь­ного варианта множества КМИ.

Основываясь на приведенном перечне действий, составляющих содер­жание процесса создания ИСМУ, можно утверждать, что методология по­строения ИСМУ, с одной стороны, должна включать в себя некие базовые ва­рианты модели представления метаинформации и процессов ее обработки, пригодные к их последующему применению в конкретных проектах ИСМУ путем расширения используемых видов КМИ, схем формализации метаин­формации, языков представления метаинформации и использования частных моделей обработки, учитывающих специфику выполненного расширения. С другой стороны, методология не должна ограничивать возможной реализации уровня модели общения и внугрсннего уровня, возможные решения в этой части создания ИСМУ должны носить характер рекомендаций.

Таким образом, в рамках методологии построения ИСМУ необходимо и достаточно разработать формальные модели представления мстаинформации, а также процессов формирования, перевода и интерпретации компонентов метаинформации. Наличие указанных моделей является необходимым атри­бутом ВФ любой ИСМУ, а их содержание инвариантно к конкретной реали­зации.

Вариант указанных выше моделей, разработанных в рамках настоящего исследования, описан в главе 3.

Выводы no второй главе

  1. В рамках разработанной формальной модели информационной сис­темы с метауправлением вычислительный процесс решения прикладных за­дач предполагает выполнение компонентов метаинформации, которое заклю­чается в переводе компонента в форму, допускающую его детерминирован- ную интерпретацию, и собственно интерпретацию на текущем содержимом базы данных.

  2. Применение метауправления требует осуществления перевода и ин­терпретации метаинформации, что, по сравнению с "традиционными" ИС ве­дет к некоторому снижению оперативности решения задач, которое может быть компенсировано увеличением производительности используемых средств вычислительной техники. В то же время наличие синтаксической ва­риантности позволяет сократить затраты на возможную модернизацию ИС.

  3. Предложена таксономия вычислительных схем использования ком­понентов метаипформации. позволившая выделить типовые вычислительные схемы и основанные на них логические структуры ИС с метауправлением.

  4. Для формального описания процессов хранения и обработки метаин­формации предложено использовать вычислительный формализм представ­ления метаинформации, расширенный в части средств представления и уров­ней своей структуры. Из введенных уровней (уровень модели общения, логи­ческий уровень и уровень внутреннего представления) определяющим явля­ется логический уровень, для которого в рамках методологии построения ИС с метауправлением должны быть разработаны модель представления метаин­формации и формальные модели процессов формирования, перевода и интер­претации компонентов метаипформации.

  1. Модели и методы построения средств представления, формирования и обработки метаинформации в синтаксически вариантных информационных системах

    1. Базовая модель представления метаинформации на основе ие­рархической сети фреймов с вариантной структурой

Модель представления метаинформации (МПМИ) является частью ло­гического уровня вычислительного формализма ИСМУ (см. п. 2.3) и играет важнейшую роль, так как выбранные способы и средства представления ме­таинформации оказывают существенное влияние на остальные компоненты логического уровня, а через них - и на все компоненты остальных уровней.

Поскольку метаинформация (МИ) представляет собой совокупность декларативных описаний, определяющие (отображающие) структуру пред­метных знаний и (или) процессы обработки предметных данный (см. п. 2.3), для решения задачи представления’ МИ естественно выбрать какую-либо из известных моделей представления знаний и адаптировать ее к требованиям, предъявляемым к представлению МИ в интересах метауправления.

Согласно /191/, существует четыре основных типа моделей представле­ния знаний: лошческне, продукционные, фреймовые и сетевые (семантиче­ские сети), а довольно большое множество разработанных моделей составля­ют те или иные модификации соответствующего типа /190,191, 193,216,220

  • 222/. Выбор конкрегной модели представления знаний определяется специ­фикой подлежащих хранению и обработке знаний, которая, в свою очередь, зависит от целей создания вычислительного формализма и задач, подлежа­вших решению с его использованием.

Создание описанной ниже МПМИ происходило во многом эвристиче­ски, то есть задача синтеза МПМИ в формальном виде не ставилась. Изначально

были выбраны четыре основополагающих требования к создаваемой МПМИ:

возможность достижения относительно высокой вычислительной эф­фективности хранения и обработки данных;

широкий диапазон способов определения вычислительной семантики (формального смысла) и выполнения интерпретации МИ;

возможность применения моделей и методов теории синтаксического анализа, перевода и компиляции для построения средств формирования и об­работки компонентов метаинформации;

обеспечение вариантности структуры метаописаний.

Если первое и второе требование были продиктованы практикой, а тре­тий - имевшимися знаниями и практическим опытом (см., например, /36, 80, 223, 224/), то четвертое требование специфично для представления МИ в ин­тересах метауправления.

В соответствии с формальной моделью ИСМУ, приведенной в п. 2.1, метаинформация определяет вычислительный процесс обработки предметных данных, и очевидно, что варьирование МИ позволяет получать различные реализации этих процессов обработки. Однако вариаций можно добиться вы­бором различных КМИ, изменением имеющихся в них значений (что изменя­ет протекание и конечные результаты порождаемого процесса обработки, но не его реализацию), а также изменением структуры подлежащего выполне­нию КМИ. Последнее позволяет при наличии одного исходного КМИ полу­чать существенно разные реализации процесса обработки предметных дан­ных, что предпочтительнее, чем использование множества КМИ, каждый из которых порождает один и только один процесс обработки.

Можно провести некую аналогию с И/ИЛИ-графами в продукционных системах, для которых каждый И-остов будет определять одно решение /221, 225/. Пользуясь этим подходом, для достижения вариантности структуры ка­ждый

КМИ также можно строить как некий И/ИЛИ-граф. Тогда перевод КМИ (по п. 2.1 - перевод КМИ в форму, допускающую его однозначную интерпре­тацию) можно рассматривать как получение И-остова.

Таким образом, неформально вариантность структуры метаописаний означает возможность выбора некоторой части исходного метаонисания для последующей интерпретации. Такая выбираемая часть далее называется кон- кретизованной (что дает возможность говорить о конкретизованном КМИ), а процесс ее получения - конкретизацией.

Исходя из перечисленных выше требований был разработан ряд моде­лей представления для различных приложений метауправления, что позволи­ло в конечном итоге сформировать базовую модель представления метаин­формации.

В основу базовой МПМИ положены основные принципы сетевого и фреймового подходов к представлению знаний /190, 191, 216, 221, 226/, а также понятийной модели автоматизированного специфицирования, приве­денной в 19/. По способу представления знаний базовая модель представления метаинформации (БМПМИ) наиболее близка к неоднородным дискретным иерархическим семантическим сетям /216, 227/, весьма широко используе­мым при создании разного рода понятийных моделей предметных областей /226, 228,229/. Однако специфика использования БМПМИ - отсутствие логи­ческого вывода на знаниях и необходимость вариантной структуры метаопи­сания - привела к созданию уникальной модели.

Дескриптивные знания в БМПМИ представляются в виде иерархически организованной сети понятий (дерева понятий). В качестве понятий выступа­ют сущности (объекты), атрибуты, значения атрибутов и отношения.

Каждое простое (неделимое, атомарное) понятие в БМПМИ представи­мо информационным элементом (ИЭ), а сложное (составное) - информацион­ной секцией (ИиС).

ИЭ является парой вида (N*Zc), где Nc - имя ИЭ, Zc - содержание ИЭ. Имя ИЭ фиксирует отображаемое попятие, а содержание ИЭ может быть кон­стантой или ссылкой.

ИнС является тройкой вида (N$,VS,MS), где Ns - имя ИнС (фиксирует отображаемое понятие), Vs - правило конкретизации ИнС (V, е {’’все из", "одно из", "несколько из", "повтор из", "необязательно"}), Ms - множество элементов секции, каждый из которых может быть константой, ссылкой или переходом. Для правил конкретизации (роль и применение которых описаны в п. 3.3) альтернативными обозначениями являются "И", "ИЛИ", "МИЛИ", "ГГ и "Н" соответственно, что позволяет говоршь об информационных сек­циях типа "И", тина "ИЛИ" и т. д.

В фреймовой нотации каждому ИЭ соответствует фрейм-ИЭ, а каждой ИнС - фрейм-ИнС, структура которых приведена на рис. 3.1. Единственный слот фрейма-ИЭ хранит содержание ИЭ и является слотом-значением. Слоты фрейма-ИнС соответствуют элементам ИнС и могут быть слотами- значениями или слотами-переходами. В свою очередь, слот-значение может быть константой (конкрстизованной или неконкретизованной) или ссылкой. Классификационная схема слотов фреймов приведена на рис. 3.2.

Рисунок 3.1

Рис. 3.2. Классификационная схема слотов фреймов

Значением конкретизованнот слота-коистанты является цепочка сим­волов (в общем случае - произвольная), которая может быть и пустой (обо­значается как"[]").

Поскольку неконкретшованная константа (обозначается как "?") пред­полагает в последующем присвоение ей некоторого значения, что требует выполнения определенной процедуры действий, она далее также называется вызовом, то есть в фрейме может быть слот-вызов.

Слот-переход служит для отображения иерархической структуры поня­тий, основанной на использовании отношения "целое - часть целого" (PART- OF) или "это есть" (IS-A) /219/. Значением слота-перехода является указатель на другой фрейм, то есть слоты-переходы позволяют объединять фреймы в иерархическую сеть фреймов (ИСФ).

Древовидная организация сети предполагает, в частности, что в сети есть ровно один корневой фрейм (корень) и, соответственно, один корневой Ю или одна корневая ИнС.

Пример ИСФ в сетевой и в фреймовой нотации приведен на рис. 3.3 и рис. 3.4 соответственно

Ссылка представляет собой указание на наличие отношения, огличнош от отношений иерархического порядка, между двумя компонентами ИСФ, и определяется как "а ссылка Ь" (а ссылается на Ь), где а - владелец ссылки (имя фрейма, содержащего ссылку), b - объект ссылки (имя фрейма или со­держимое слота-значения). Если владелец и объект ссылки принадлежат од­ной ИСФ, то ссылка является внутренней, а если различным - то внешней. В случае, когда объектом ссылки является слот-ссылка, имеет место "ссылка на ссылку" или "вложенная ссылка". Ограничений на длину цепочек вложенных ссылок не накладывается.

Исходя из приведенного выше описании ЬМПМИ, каждый компонент метаинформации в ИСМУ (uci (1 < i < m) в модели (2.3)) формально может быть представлен как

uCi “(Vi, Dj), V, - Va, v Vzj. D, = Dq u DajVj Dn„ Dnj = Dvjvj De„

где Vi - множество вершим сети фреймов;

D, - множество дуг сети фреймов;

Va; - множество вершин, соответствующих именам фреймов;

Vz; - множество вершин, соответствующих слотам-константам;

DCj - связи между именами фреймов и составляющими эти фреймы сло- тами-константам и;

Da, - связи типа "переход" между именем фрейма, содержащего слот- переход, и именем фрейма, указанным в качестве значения слота-перехода;

Diij - связи типа "ссылка" между именем фрейма, содержащего слот- ссылку. и объектом ссылки;

Dvj - внутренние связи типа "ссылка";

Пе, - внешние связи типа "ссылка".

Множества дуг Dc, Da, Dv и De можно рассматривать как отображение бинарных отношений, заданных на соответствующих множествах:

DCj: Va; Vzj,

Пусть Sa; € Va; - имя корневого фрейма (корневое имя). С учетом вве­денных обозначений можно сформулировать следующие формальные требо­вания к представлению метаинформации с помощью ИСФ:

  1. (VSi)(B v)((v e Vaj) л (v = SaO л ((Vu)(u e Va, л u t- v) u^Sa*))), то есть для любой ИСФ всегда существует одна и только одна корневая вершина.

  2. Пусть и дост v, если (u,v)€ Da; или (u.v)€ l)Cj, тогда (VuX(u € Va,) a (v * Sa,)) (Sa, дост4 v), то есть каждая вершина достижима из корневой верши­ны посредством дуг множеств Da; и Dcj.

  3. Пусть S’i “ (Va„ Dcj u Da;), тогда S'j - дерево с корнем Sa* е Va'j, то есть при устранении дуг, соответствующих ссылкам, любая ИСФ становится деревом.

  4. Пусть v дост Э|, а| дост а:,.ар дост и, тогда vai ... anu - путь от v к и, обо­значаемый как nyTb(u.v), и iiy rb(v)=nyTL(Sj,v).

  5. Поскольку S', - дерево, то fVv) ((v е Va() л (v * Sa,))(3 путь(у) л |{путь(у)}| > 1), то есть в любой ИСФ для любой вершины существует единственный путь, причем ,r;yTb(Sa., Saj)| = 0.

  6. Пусть v внутренняя ссылка и, если (v,u)eDvj. Тогда и г путь(у), то есть объект внутренней ссылки из вершины v не может быть элементом пути к вершине v.

  7. Пусть v внешняя ссылка и , если (v,u)eDe„ v е V|, u е Vj н i Ф j. Тогда v внешне достижима x , если (3u)((v внешняя ссылка x) л (Э путь(и,х)).

11риведенные требования затрагивают только структурные аспекты по- сгросиия ИСФ и не накладывают каких-либо ограничений на семантику и прагматику представления знаний посредством ИСФ.

Операционный базис как множество операций, определенных на опи­санной выше БМПМИ, подробно описан в п. 3.3 - 3.5.

Базовый характер описанной выше МПМИ обусловлен возможностью ее применения в качестве основы для создания МПМИ в конкретных ИСМУ.

Основными способами адаптации БМПМИ в интересах различных при­ложений являются:

введение типов фреймов по отображаемым этими фреймами понятиям (например: сущности, атрибуты, отношения, значения);

введение фиксированного множества возможных типов КМИ, форми­руемых и (или) обрабатываемых (используемых) по различным правилам (на­пример: шаблоны, формы, спецификаторы и т. д.);

использование различных способов определения вычислительной се­мантики, в том числе для различных типов КМИ;

ограничения на используемые правила конкретизации или использова­ние комбинаций этих правил;

определение видов и способов представлений значений слотов (включая ссылки), а также способа идентификации элементов ИСФ.

Все перечисленные выше способы так или иначе используются в мето­диках построения типовых систем обработки данных на основе метауправле- ния, описанных в главе 4, что и объясняет высокую степень детальности при­веденного выше описания БМПМИ.

  1. Лингвистические средства представления метаипформации

  1. Базовый язык и текстовая нотация представления мета­информации

Для программной реализации процессов хранения и обработки метаин­формации ее необходимо представить в некоторой специальной форме, пред­ставляющей собой запись ИСФ на некотором языке, позволяющем отобразить структуру и содержание компонентов ИСФ в виде линейной последователь­ности символов определенного алфавита.

Простейшим языком представления МИ в рамках БМПМИ может слу­жить язык, правила продукции грамматики которого отображают правила композиции элементов ИСФ в сеть. Данный язык также можно считать базо­вым - по аналогии с базовостыо МПМИ. а также благодаря его инвариантно­сти к визуализации и внутреннему представлению МИ в программных реали­зациях ИСМУ.

На рис. 3.5 приведены правила продукции базового языка представле­ния метаинформации (далее - базового языка), в которых неконкретизованная константа обозначена символом значение конкретизованной константы - как "[текст]”, а значение ссылки - как терминальный символ "значениессыл- кн". При конкретной реализации диалектов БЯ эти символы могут представ­лять собой достаточно сложные конструкции - например, неконкретизован­ная константа может содержать идентификатор процедуры, подлежащей вы­зову для конкретизации ее значения, а для представления значения ссылки трсбуется определение правил идентификации элементов ИСФ, которые мо­гут зависеть даже от правил записи идентификаторов файлов с КМИ в той или иной операционной среде. Полное описание грамматики базового языка с примером возможного доопределения правил записи ссылок приведено в приложении I.

Разработанный базовый язык (БЯ) весьма примитивен, и его адаптация к конкретным приложениям может потребовать внесения существенных до­полнений.

<понятие> -> <инфэлемент> | <инфсекция>

<инфэлсмснт> ( <имя> <содержаиие> )

<имя> <текст>

<текст> [текст]

<содсржание> -> <текст> 1 <ссылка> ! ?

<ссылка> значениессылки

<инфсекция> <одно из> | <все из> | <иесколько из>| <повтор>

| <необязательно>

<одно из> (ИЛИ <имя> «"множество элементов>)

<все из> -> (И <имя> <мЕЮжество злементов> )

<несколько из> (МИЛ VI <"имя> <множество элементов?*)

<повтор из> (П <имя> <элемент>)

<необязательно> (Н <имя> <элемент>)

<множество элемспгов> <элемент>

<элемент> <миожество элементов>

<элемент> ( <понятне>) | <содсржание>

Рис. 3.5. Правила продукции грамматики базового языка

С другой стороны, для БЯ существует грамматика предшествования (см. приложение 1) , что позволяет реализовать однопроходовый лексический и синтаксический анализатор, и в терминах БЯ достаточно наглядно могут быть приставлены описания процедур формирования, перевода и интерпретации КМИ. В относительно простых приложениях БЯ может быть использован не­посредственно в том виде, в котором он приведен в приложении 1, а любые его расширения только дополнят приведенные выше правила грамматики.

Запись КМИ непосредственно на БЯ весьма специфична. Так, для при­мера, приведенного на рис. 3.3 она будет иметь следующий вид:

(И [Пациент) (И [Учетные данные) ([фамилия] [Иванов]) ([имя] [Сергей]) ([отчест­во) [Петрович])) ([Диагноз] ?) (ИЛИ [Вид обращения] [первичное] (И [вторичное) ([дата первпчного обращения] 7) ))).

Для наглядной визуализации содержимого КМИ целесообразно исполь­зовать текстовое (внешнее, документальное) представление, правила которого также приведены в приложении 1. Определяемая ими нотация древовидного представления была использована в верхней части рис. 3.3 и применяется да­лее практически во всех примерах содержания КМИ.

  1. Компоненты метаинформации как XML-приложения

Поскольку любая модификация БЯ весьма трудоемка, так как требует внесения соответствующих изменений в лексический и синтаксический ана­лизаторы, особый интерес вызывает возможность применения в качестве аль­тернативы базовому языку языка XML.

Язык XML (extensible Markup Language, "Расширяемый язык размет­ки1') - это компактное упрощенное подмножество языка SGML, разработанное Консорциумом W3C /230,231/.

Занимая промежуточное место между SGML и HTML, язык XML пред­назначен для описания других языков - в отличие от HTML, в XML нет ни одного заранее определенного тега с фиксированным значением, перечень те­гов и синтаксис задаются в виде специального DTD (Definition Туре Document) применительно к каждому конкретному использованию языка (рис. 3.6).

Будучи метаязыком, XML является средством создания специализиро­ванных прикладных (предметных) языков представления информации. Такие прикладные языки, создание которых заключается в формировании DTD в рамках стандарта XML, получили обобщающее название "XML-приложения

и в настоящее время находят все более широкое применение в самых различ­ных областях - /204,232/ и др.

Рис. 3.6. Основные составляющие применения XML

Несомненными достоинствами языка также являются: наличие стандарта W3C;

кросс-платформенность и поддержка различных таблиц колировки, включая UNICODE;

разнесение собственно данных и правил их отображения (обработки) (о отличие от, например, ITTML);

наличие стандартов интерфейсов DOM (Document Object Model) и SAX (Simple API for XML), унифицирующих программные прими тивы для хране­ния и обработки XML-докумснтов;

поддержка XML в различных средах (и в первую очередь - в распро­страненных браузерах Internet Explorer 5.0 и Netscape Navigator, средах про­граммирования Delphi, C++, Python, Jawa и др.) через интерфейсы DOM и SAX, то есть наличие множества XML-анализаторов, инвариантных к XML- приложениям.

Таким образом, применение XML позволяет создавать языки для кон­кретных приложений, описывая их синтаксис через DTD, использовать имею­щиеся анализаторы для разбора ХМ L -п рк ложей и й (без каких-либо их измене­ний - анализатору достаточно указать DTD, содержащее описание синтакси­са), и реализовать процедурную семантику этих языков через специально раз­рабатываемые процедуры, которые ставятся в соответствие тегам (не обяза­тельно всем), описанным в DTD.

Для представления метаинформации в рамках разработанной БМПМИ существенно также, что любой XML-документ имеет древовидную структуру, и достаточно легко сформировать набор тегов и правил их композиции, при­годных для представления ИСФ.

Достоинством применения XML в этом случае является также и то, что язык, соответствующей базовой модели, может быть легко расширен для кон­кретных приложений путем расширения множества тегов и правил их компо­зиции, то есть DTD XML-приложения будет включать в себя в том числе DTD дня базовой МПМИ. При необходимости можно строить и множественные "цепочки" языков (например, для разных типов КМИ) - путем последова­тельного "наращивания" DTD.

Вариант синтаксиса XML-нотации для БМПМИ приведен и приложе­нии 2 (включая описание возможного подхода к решению задачи идентифи­кации КМИ и их элементов, а также записи значений ссылок).

С использованием DTD, описанного в приложении 2, ИСФ, приведен­ная в качестве примера на рис. 3.3 и в п. 3.2.1 на БЯ, может быть записана так (ряд обязательных атрибутов, используемых дня идентификации, опущен):

<?хш! version®" 1.0" encoding="windows-l 23 i" ?>

<IAND пате="Пациент">

<IAND name-''У четные данные">

<1Е пате-"фам и л ин"> <1ех1>Им»ов<Лех[> </1Е>

<1Е патс="имя"> <texl>Ccpn.*r«</lcxl> </1Е>

<1Е ггатс=',отчссгво"> <1схГ>Пстрович<Лсх!> <ЛЕ>

</IAND>

<1П пате="Диагноз"> <call piocm&ne="?" /> <УСЕ>

<IOR паше^"Вид о6р?.щених">

<(сх1>псрвичнос<Лгх!>

<1AND патс="вторичное'">

<10 name-''дата первичного обращения">

<call procmanc«"?" /><ЛВ>

</lAND> '

</IOR>

</IAND>.

Поскольку такое изображение не всегда наглядно, для отображения со­держимого XML-файлов далее также широко используется текстовая нота­ция, аналогично описанной в приложении 1 для БЯ.

Так как XML имеет свою терминологию для обозначения синтаксиче­ских единиц XML-приложений, которая существенно различается в различ­ных переводах игандарта XML (см., например, /230, 231/), на рис. 3.7 на при­мере схематично показан вариат* определений, используемых в дальнейшем в настоящей работе.

Следует отметить, что на логическом уровне принципиальных различий между представлением МИ с помощью БЯ и как XML-приложения нет:

и в том, и в другом случае синтаксис представления описывается кон­текстно-свободной грамматикой (и это крайне важно для моделей, представ­ленных в п. 3.4 и п.3.5);

для БЯ можно расширить понятие терминального символа "текст", по­зволяющее осуществлять эквивалентный переход от БЯ к XML-нотации и на­оборот.

Рис. 3.7. Пример использования терминов XML

Из вышеизложенного, в частности, следует, что модели и методы, опи­санные далее н этой главе, справедливы для обоих вариантов языка представ­ления, ибо. как уже отмечалось выше, определяющий характер имеет выбран­ная модель представления, а не язык.

3.3. Модель и метод перевода метаинформации, управляемого синтаксисом и данными

Из описания формальной модели СВИС (см. п. 2.1) следует, что с пози­ций пользователя содержание осуществления метауправления составляют:

формирование и ведение (модификация) компонентов метаинформа­ции;

перевод КМИ на язык представления результатов перевода;

предметная интерпретация результатов перевода.

Важнейшей особенностью осуществления перечисленных процессов является то, что первый и второй из них требуют обязательного активного участия пользователя (либо разработчика - если пользователю функция фор­мирования и модификации КМИ недоступна по принятой вычислительной схеме использования КМИ - см. п. 2.2), а третий - нет. Под активным участи­ем в данном случае понимается воздействие на содержание метаинформации, следствием которого является изменение содержания реализуемого вычисли­тельного процесса преобразования предметных данных.

Описанная в п. 3.1 базовая модель представления метаинформации по­зволяет определить перевод КМИ как процесс его конкретизации, то есть как процесс преобразования исходного, КМИ в форму, допускающую его детер­минированную интерпретацию. Результатом конкретизации является конкре­тизированный КМИ, то есть КМИ, в котором все ИнС имеют тип "И", а не- конкретизованные константы отсутствуют. В общем случае в конкретном КМИ также должны отсутствовать и внешние ссылки, хотя возможны ситуа­ции, когда это правило имеет исключения (например, ссылки на функции, описанные в л. 3.4). Однако подобные исключения носят частный характер, учитываются при реализации и далее не рассматриваются.

Причины нсдетерминизма исходных КМИ и целесообразность его на­личия в КМИ также подробно описаны в п. 3.1.

Очевидно, что в частном случае возможны ситуации, когда исходный КМИ изначально конкретизирован - тогда перевод не осуществляется, и та­кой КМИ сразу может быть интерпретирован.

Конкретизованность определяется по следующим правилам:

слот-константа всегда конкретизован;

слот-вызов является нсконкретизовашшм * его конкретизация требует вызова указанной в нем процедуры и замены данного слота-вызова слотом- константой, содержащей результат выполнения вызванной процедуры;

ИЭ конкретизован, если конкретизован его слот:

слот-переход конкретизован, если конкретизован ИЭ (ИнС), имя кото­рого (которой) указано в качестве значения этого слота;

слот-ссылка конкретизован, если конкретизован объект ссылки;

ИнС конкретизована, если выполнено правило ее конкретизации и сло­ты, оставшиеся в секции после выполнения этою правила, также конкретизо- ваны.

В общем случае выполнение правила конкретизации ИнС не зависит от состояния конкретизованности элементов, входящих в секцию.

Краткое описание правил конкретизации ИнС различного типа и соот­ветствующие примеры приведены в габл. 3.1.

Конкретизация значения информационной секции с правилом "И" ("все”) требует конкретизации значений всех ее слотов. Выполнения правила конкретизации для такой секции не требуется (то есть для секции "И" правило конкретизации можно считать всегда выполненным).

Выполнение правила "ИЛИ" ("одно из") требует выбора только одного из множества слотов, входящих в состав секции. В этом случае множество слотов можно интерпретировать как множество всех допустимых значений атрибута, являющегося именем секции. Секция с правилом "одно из" будет конкретизована, если выполняются два условия - атрибуту поставлен в со­ответствие один элемент из множества слотов (выполнена интерпретация ат­рибута секции на допустимом множестве его значений, то есть выполнено правило конкретизации) и этот элемент является конкретизованным.

ТАБЛИЦА 3.1

Так, например, выполнение правила конкретизации для секции

(Заболевании'.

ИЛИ

  • (Кори]

  • (Грипп)

  • (Паразит)

заключается н ныборе одной из альтернатив ([Корь], [Грипп], [Пара- тит]), в результате чего секция станет конкретизованной (так как любая из альтернатив есть всегда конкретизованный слот-константа) и примет вид

{Заболевание) или [Заболевание] или [Заболевание)

I (Корь] L [Грипп) (Паратит) .

Правило "МИЛИ" ("несколько из") отличается от "ИЛИ" тем, что атри­буту может быть поставлено в соответствие более одного элемента множества

слотов (вплоть до всех). Например, выполнение правила конкретизация для секции с конкрстизованны.ми слотами-констаитами вида

(Тип прививки]

МИЛИ

(БЦЖ)

  • [Грипп]

  • | Иммуноглобулин I

  • [КДС-привнвка]

  • [Корь]

  • [Манту]

  • [Паротит]

[Трианатоксин]

при выборе второго, четвертого и питого элементов превращает ее в конкретизованную секцию вида

(Тип прививки]

I-[Грипп]