Статус документа
Статус документа

ГОСТ Р ИСО 13584-42-2012 Системы промышленной автоматизации и интеграция. Библиотека деталей. Часть 42. Методология описания. Методология структурирования семейств деталей

     9.4 Правила управления изменениями


Данный подраздел устанавливает правила внесения изменений в ссылочный словарь.

9.4.1 Критерии для классификации изменений

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

Рассматриваемые правила определяют минимальные требования. При этом поставщик ссылочного словаря всегда может принять решение: 1) обновить номер версии словарного элемента, тогда как правила запрашивают только обновление номера пересмотра, 2) не рекомендовать для дальнейшего использования модифицированный элемент, тогда как правила запрашивают только обновление номера пересмотра или номера версии.

Правило 1: Изменение номера пересмотра

Если после преобразования сущности Ent (класса, типа данных, свойства, имени, определения...) ссылочного словаря O в сущность Ent (1), новый ссылочный словарь O может интерпретировать все характеристики, определяемые словарем O, и (2) не позволяет определять какие-либо новые характеристики, то рассматриваемое изменение представляет собой изменение номера пересмотра словарного элемента путем изменения сущности Ent.

Если описание измененного словарного элемента определено только на одном языке или если оно уже переведено, а изменение искажает описание на исходном языке (на котором было дано определение), то рассматриваемое изменение должно увеличить значение атрибута revision словарного элемента, модифицированного указанным изменением. Если изменение сущности Ent искажает переводы на другие языки (на которые переведен словарный элемент), то соответствующие переводы также должны быть изменены. Также следует увеличить значения атрибутов translation_revision соответствующих переводов.

Пример 1 - Если словарь доступен только на одном языке, то (при изменении определения класса без изменения характеристик, которые он может интерпретировать) атрибут пересмотра класса должен быть увеличен.
     
     Пример 2 - Если оригинальный язык словаря - английский, и словарь переведен на немецкий и французский, и если изменяется французское определение класса без изменения характеристик, которые данный класс может интерпретировать, то следует увеличить атрибут translation_revision французского перевода.
     
     Пример 3 - Если оригинальный язык словаря - английский, и словарь переведен на немецкий и французский, и если изменяется значение атрибута figure класса без изменения характеристик, которые данный класс может интерпретировать, то атрибут revision класса следует увеличить. Если значением атрибута figure является graphic_files (данное значение является языково-независимым) и, таким образом, применяется для описаний на всех языках, то атрибуты translation_revision как немецкого, так и французского переводов можно не увеличивать, так как перевод не изменялся.
     
     Пример 4 - Если в класс добавляется видимое свойство без обеспечения его применимости в данном классе или во всех его подклассах, то для указанного нового свойства нет описываемых характеристик. Никакие прямые атрибуты рассматриваемого класса не модифицируются, N пересмотра и N версий данного класса не требуют обновления.


Правило 2: Изменение номера версии

Если после замены сущности Ent (класса, типа данных, свойства, ...) ссылочного словаря O на сущность Ent (1) новый ссылочный словарь O может интерпретировать все характеристики, определяемые ссылочным словарем O, но (2) новый словарь также дает новые характеристики, не интерпретируемые словарем O, то рассматриваемое изменение должно увеличивать номер версии Ent.

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


Пример 5 - Если применимое свойство добавляется в класс, то (1) все характеристики, определенные предшествующим ссылочным словарем, могут по-прежнему им интерпретироваться (без использования нового применимого свойства), но при этом (2) новым ссылочным словарем могут быть определены некоторые характеристики (использующие новые применимые свойства), не интерпретируемые предшествующим словарем. Таким образом, номер версии класса должен увеличиться.
     
     Пример 6 - Если новая альтернативная единица измерения добавляется к мере действительного типа некоторого свойства, то все характеристики, определенные предшествующим ссылочным словарем, могут по-прежнему интерпретироваться (без использования новой альтернативной единицы измерения). При этом некоторые новые характеристики (не интерпретируемые предшествующим словарем) могут быть определены новым ссылочным словарем (путем использования новой альтернативной единицы измерения). Таким образом, N версии класса должен увеличиться.


Правило 3: Исправление ошибок

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

Для исправления ошибок необходимо: (1) идентифицировать те словарные элементы, которые следует модифицировать, и назначить значение true их атрибуту is_deprecated; (2) определить новые сущности, которые будут исправлять ошибки; (3) описать в атрибуте is_deprecated_interpretation не рекомендуемый для использования элемент (почему данный элемент уже не рекомендуется для использования, как следует изменять характеристику, ссылающуюся на не рекомендуемый для использования элемент, в соответствии с требованиями обновляемого ссылочного словаря).

Пример 7 - Если вносится исправление единицы измерения меры действительного типа некоторого свойства, то рассматриваемая продукция, зарегистрированная ранее и характеризуемая данным свойством, должна описываться уже по-другому. Новый ссылочный словарь уже не является обратно совместимым, и данное изменение не может вноситься просто так. Поэтому (1) соответствующее свойство следует считать не рекомендуемым для использования, (2) новое свойство (уже с другим идентификатором) должно создаваться как видимое и применимое там, где таковым было предшествующее свойство, (3) в атрибуте is_deprecated_interpretation предшествующего свойства необходимо указать, что значение данного свойства должно быть, например, "… разделено на 1000. Только после этого оно может рассматриваться как значение нового свойства".
     
     Пример 8 - Если некоторые новые контекстные параметры добавляются к тем, от которых зависит контекстно-зависимое свойство, то все характеристики, использующие данное свойство, должны уже описываться по-другому после внесения изменения. Новый ссылочный словарь уже не может интерпретировать некоторые предшествующие характеристики. Поэтому необходимо (1) сделать не рекомендуемым для использования старое контекстно-зависимое свойство, (2) создать и внести новое свойство, (3) объяснить нецелесообразность использования старого свойства и, возможно (если предшествующее контекстно-зависимое свойство было предназначено для измерения при фиксированном значении нового контекстного параметра), порядок преобразования значения не рекомендуемого для использования контекстно-зависимого свойства в значение нового свойства.


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


На рисунке 2 приведена процедура классификации вносимых изменений.


Рисунок 2 - Классификация изменений словаря


Change request

Запрос на изменение

Backward compatible?

Является ли сущность обратно совместимой?

Yes

Да

No

Нет

Upward compatible?

Является ли сущность совместимой снизу-вверх?

Deprecate Ent

Объявить сущность Ent, не рекомендуемой для использования

Introduce new entities = Ent

Внести новые сущности Ent

Revision

Пересмотр

Version

Версия

Out of scope

Не рассматривается

Request an internal agreement of dictionary users

Запрос на внутреннее согласование пользователей словаря



9.4.2 Изменение зависимости и распространения

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

Исключительность каждого словарного элемента обеспечивается внутри одного ссылочного словаря, а не в нескольких словарях одновременно. Если класс С1 ссылочного словаря D1 ссылается на класс С2 ссылочного словаря D2 с помощью условного соотношения, то на поставщике ссылочного словаря D1 лежит ответственность за принятие решения: на какие классы производится ссылка, на какую версию, и какие свойства импортируются. Таким образом, если поставщик словаря D2 изменяет версию класса С2, то на поставщике словаря D1 лежит ответственность за принятие решения: при каких условиях и когда на новую версию класса С2 можно будет ссылаться из класса С1. Старые ссылки могут сохраняться. Но если N версии ссылки увеличивается, то N версии класса С1 также должен быть увеличен.

Вышесказанное суммируется в четырех правилах: