Определение информационного ресурса, включающее перечисление его компонентов, дано в глоссарии терминов. Далее приведено описание представления этих компонентов на логическом уровне (в виде семантической сети понятий). Данная семантическая сеть представляет собой структуру множества информационных ресурсов (объектных информационных ресурсов).
Семантическая сеть понятий есть ориентированный граф (орграф) с возможными петлями и циклами, обладающий следующими свойствами:
Вершины семантической сети делятся на два класса:
Для каждой вершины определен тип набора исходящих дуг[1]"множество", "множество альтернатив". При этом:
Каждое понятие характеризуется множеством (фиксированных) атрибутов, которые описывают его свойства.
Для каждой вершины всегда определен атрибут имя, значением которого является строка символов конечной длины.
Для каждой вершины всегда определен атрибут значение.
Для терминала значение принадлежит множеству имен базовых сортов, зафиксированных в Языке ИРУО.
Для терминала значение атрибута значение должно принадлежать одному из базовых сортов.
Описываемые понятия часто нуждаются в пояснении на естественном языке. В связи с этим, с каждым понятием связан атрибут комментарий, значением которого является строка символов конечной длины, поясняющая смысл соответствующего понятия (по умолчанию — пустая строка).
Каждая дуга описывает направленное отношение между парой понятий: она имеет начало, конец, а также логический признак ссылка. Начало отношения характеризуется связанным понятием. Конец отношения характеризуется связанным понятием и атрибутом — спецификатором множественности (или просто спецификатор). Понятие, из которого дуга исходит, называется понятием-началом отношения, а то, в которое дуга входит — понятием-концом отношения.
Если дуга имеет признак ссылка, то её понятие-конец может принадлежать как , так и (), где — семантическая сеть понятий, представляющая собой структуру множества () объектных информационных ресурсов .
Пусть , , , .
Множество спецификаторов, употребляемых для дуги, где концом является нетерминальное понятие, определяется так:
Множество спецификаторов, употребляемых для дуги, где концом является вершина , определяется следующим образом:
, что соответствует множеству (иные спецификаторы не имеют смысла в данном контексте).
Множество спецификаторов, употребляемых для дуги, где концом является вершина , определяется так:
, что соответствует множеству (иные спецификаторы не имеют смысла в данном контексте).
Множество спецификаторов, употребляемых для дуги, где началом является вершина , для которой тип набора исходящих дуг = "множество альтернатив", определяется следующим образом:
, что соответствует множеству (иные спецификаторы не имеют смысла в данном контексте).
Использованные символы имеют следующий неформальный смысл (формальный способ их интерпретации определен в разделе Описание соответствия между метаинформацией и информацией, в скобках приводится обозначение спецификатора в нотации ТПИР):
"[]" – спецификатор факультативности; самостоятельно не используется, предназначен для представления следующих комбинированных спецификаторов:
Множество всевозможных начал отношений есть .
Множество всевозможных концов отношений есть .
Каждое отношение есть элемент множества .
Множество информационных ресурсов определяется структурой с помощью процесса порождения, в котором по структуре порождается информационный ресурс , принадлежащий множеству .
В момент создания сети она представлена единственной вершиной — понятием-источником с произвольным значением атрибута имя, которая поставлена в соответствие понятию-источнику сети — .
Дальнейшее формирование сети () на основе сети состоит в порождении в отношений-экземпляров вида relationj = (concept, endj, SPendj), где и SPendj = "-", на основе proto_relation = (proto_concept, proto_end, proto_SPend) из .
Процесс порождения зависит от того, является proto_end нетерминальным или терминальным понятием, от спецификатора множественности proto_SPend и от значения типа набора исходящих дуг для proto_concept — в зависимости от них порождается один / множество нетерминалов, либо один / множество / терминалов в .
В следующих подразделах описываются правила порождения (1 — 6) нетерминальных и терминальных понятий (вместе с дугами к ним) в по заданному отношению-прототипу proto_relation. Каждое правило охватывает сразу два случая: нефакультативный спецификатор у proto_rel_end и его факультативный вариант (). В данном контексте эти случаи неразличимы, поскольку считается, что proto_relation является элементом множества отношений-прототипов, на основе которых порождаются отношения в сети понятий , сформированного согласно п.1 раздела Общие правила порождения содержания понятий.
Концы дуг, входящих в нетерминальные понятия (), могут помечаться любым из спецификаторов множественности.
Если proto_rel_end имеет вид (proto_end, –) или (proto_end, [–]), где proto_end N, то new_relation = (concept, –, end, –), где:
Пояснение: если отношение-прототип отмечено спецификатором множественности "–" (копия) или "[–]" (возможное отсутствие), то в создаётся понятие, являющееся копией понятия-конца отношения-прототипа, и отношение от понятия concept к нему, либо отношение от понятия concept к уже существующему в или () понятию, соответствующему понятию-концу отношения-прототипа.
Если proto_rel_end имеет вид (proto_end, !) или (proto_end, [!]), где proto_end N, то new_relation = (concept, –, end, –), где:
Пояснение: если отношение-прототип отмечено спецификатором множественности "!" (в точности один) или "[!]" (ноль или один), то в создаётся единственное понятие (end) с заданным именем и отношение от понятия concept к нему, либо отношение от понятия concept к уже существующему в или () понятию, соответствующему понятию-концу отношения-прототипа.
Если proto_rel_end имеет вид (proto_end, +) или (proto_end, [+]), где proto_end N, то new_relationk = (concept, –, endk, –), где и:
Пояснение: если отношение-прототип отмечено спецификатором множественности "+" (непустое множество) или "[+]" (возможно пустое множество), то в создаётся непустое множество понятий (endk, ) с заданными именами и множеством отношений к ним от понятия concept, либо непустое множество отношений от понятия concept к уже существующим в или () понятиям, соответствующим понятию-концу отношения-прототипа.
Концы дуг, входящих в терминальные понятия, описывающие сорта (), могут помечаться одним из следующих спецификаторов множественности: . В зависимости от него в сети может быть порождено единственное, либо множество терминальных понятий, описывающих значения (), принадлежащие заданному сорту.
Если proto_rel_end имеет вид (proto_end, !) или (proto_end, [!]), где proto_end TSort, т.е. proto_end представляет собой пару [<имя>, <сорт>], где <сорт> является одним из базовых сортов, то порождается отношение new_relation = (concept, –, end, –), где:
Пояснение: если отношение-прототип отмечено спецификатором множественности "!" (в точности один) или "[!]" (ноль или один), то в создаётся единственное понятие (end) с заданным значением сорта <сорт> и отношение от понятия concept к нему, либо отношение от понятия concept к уже существующему в или () понятию, соответствующему понятию-концу отношения-прототипа.
Если proto_rel_end имеет вид (proto_end, +) или (proto_end, [+]), где proto_end TSort, т.е. proto_end представляет собой пару [<имя>, <сорт>], где <сорт> является одним из базовых сортов, то порождаются отношения new_relationk = (concept, –, endk, –), где и:
Пояснение: если отношение-прототип отмечено спецификатором множественности "+" (непустое множество) или "[+]" (возможно пустое множество), то в создаётся непустое множество понятий (endk, ) с заданными значениями сорта <сорт> и множеством отношений к ним от понятия concept, либо непустое множество отношений от понятия concept к уже существующим в или () понятиям, соответствующим понятию-концу отношения-прототипа. Таким образом создаваемые понятия образуют подмножество значений сорта <сорт>.
Терминальные понятия, описывающие значения () могут представлять только константные значения, принадлежащие одному из базовых сортов. Поэтому концы дуг, входящих в такие понятия, всегда помечаются спецификатором множественности "–" (копия) или "[–]" (возможное отсутствие).
Если proto_rel_end имеет вид (proto_end, –) или (proto_end, [–]), где proto_end TValue, то new_relation = (concept, –, end, –), где:
Пояснение: см. пояснение к правилу порождения 1.
Структура Языка ИРУО имеет следующий вид (в нотации текстового представления информационных ресурсов):
Проблемно-независимая предметная область / Языки / Язык ИРУО { Конструктивные элементы Языка ИРУО { ~ALT ОПИСАТЬ МНОЖЕСТВО АЛЬТЕРНАТИВ { ~ALT ОПИСАТЬ МНОЖЕСТВО { ~set -> ОПИСАТЬ МНОЖЕСТВО; ~alt -> ОПИСАТЬ МНОЖЕСТВО АЛЬТЕРНАТИВ; } } ~set -> ОПИСАТЬ МНОЖЕСТВО; } ~alt -> ОПИСАТЬ МНОЖЕСТВО АЛЬТЕРНАТИВ; ~set -> ОПИСАТЬ МНОЖЕСТВО; }