ГОСТ Р 56272—2014/ISO/TS 15926-8:2011
b) некоторые роли совсем не обязательны. Это недопустимо для шаблонов ИСО 15926.
Примечание 2 — Основная причина недопустимости необязательных ролей: резкое ужесточение
требований к переработке данных:
c)не существует выражения, точно устанавливающего роли, используемые в N-арном
отношении
Purchase
;
d)класс
Purchase
(как любой экземпляр шаблона ИСО 15926) формирует утверждение;
Примечание 3 — См. примечание
Примера
использования3: «Мы создаем индивидуальный обьект.
чтобы представить экземпляр отношения, имеющий связи со всеми участниками». Это не покупка, а отношение,
имеющее представление.
Пункт с) связан с процедурой
нумерации
ролей шаблонов ИСО 15926. В данном примечании не
делается попытки определить явно и точно какие «атрибуты» используются в определении
Purchase.
Таким образом, определение является открытым. В отличие от шаблонов ИСО 15926. список ролей
задается как перенумерованный и конечный перечень.
Пункт d) является принципиальным для структуры N-арных отношений. В них элементы класса
Purchase
(а также экземпляры шаблонов ИСО 15926) не предназначены для представления покупок.
Это только утверждения, которые описывают данные покупки. Например,
было бы неправильно
использовать идентификатор для экземпляра
Purchase,
чтобы ссылаться на некоторую покупку.
Если идентификатор покупки все-таки нужен, то он должен быть добавлен к N-арному отношению в
качестве роли. Данное указание содержится в примечании W3C [22]. На него можно сделать
дополнительный акцент.
В большинстве случаев, указанные индивидуальные объекты не используются самостоятельно.
Это только вспомогательные функции, нужные для группировки других объектов. Поэтому давать им
особое имя нет смысла.
Их место становится понятным, если учесть факт, что в отношении конкретной покупке может
быть сформулировано много различных утверждений (экземпляров шаблона). Класс
Purchase.
описанный в примечании W3C, не очень для этого подходит, так как он не учитывает роль
идентификатора покупки. Это хороший пример моделирования шаблонов; все. что можно указать в
утверждении шаблона, требует назначения роли (и только в исключительных случаях появляется
необходимость рассматривать утверждения сами по себе.)
Используя настоящее представление, будьте внимательны: язык OWL не имеет достаточных
ресурсов для определения идентичности экземпляров. Ясно, что в реляционных базах данных не
бывает двух отдельных строк с одинаковыми элементами. Об этом, в частности, в примечании ничего не
говорится. Та же ситуация складывается с представлением в среде OWL по ИСО 15926 (также можно
получить аппроксимацию с помощью нумерующего представления, см. ниже).
Для полного представления критерия идентичности необходимо использовать логику первого
порядка.
В контексте ИСО 15926 принято обоснованное допущение, что идентичность скорее следует
использовать на уровне реализации/приложения. нежели вместе со структурными компонентами при
семантическоммоделировании.Этосогласуетсяснаилучшейпрактикой[использования]
семантической сети.
В.2 Структурные компоненты настоящего стандарта для сигнатур шаблонов
В разделе определены малые онтологии для представления шаблонов. Для файлов - примеров
настоящего документа, онтология модели шаблона ИСО/ТС 15926-7 имеет область имен:
http..’/standards.!SO.orq;isollls.’l15926.’-&’’cd-l/tech,lrcfefcncc-data.’’p7tm
с сокращенным префиксом p7tm.
Классы и отношения p7tpl. включающие в себя представления сигнатур шаблонов, имеют вид:
p7tm:TemplateStatement класс
owl:Class —
это результирующий суперкласс всех шаблонов.
Суффикс "Statement’ (утверждение) очень важен. Он указывает, что экземпляры шаблонов
представляют утверждения. Правильный dm-суперкласс класса p7tm:TemplateStatement — это
dm:MultidimensionalObject (многомерный объект).
Подклассы p7tm:TemplateStatement:
p7tm:BaseTemplateStatement — используется как суперкласс всех базовых шаблонов, которые
по очереди используются как суперклассы основных шаблонов.
p7tm:MetaTemplateStatement — структура модели для всех шаблонов с нижеследующими
подклассами:
p7tm:TomplatoDescription (описание шаблона);
p7tm:TemplateRoleDescription (описание роли шаблона);
18