Пример: внутренние фильтры Rational DOORS

Rational DOORS поддерживает закрытый API и фильтр описывается с помощью синтаксиса представления Rational DOORS.
Следующий пример внутреннего фильтра Rational DOORS позволяет отфильтровать объекты, содержащие слово "Documentation" в атрибуте Текст объекта.
Attribute 'Object Text' contains 'Documentation'
(с учетом регистра символов)
Для создания текста внутреннего фильтра для источника данных Rational DOORS выполните следующие действия:
  1. Откройте модуль Rational DOORS и выберите Инструменты > Фильтр > Задать пункт меню.
  2. Создайте синтаксис фильтра:
    1. Перейдите на вкладку Атрибуты.
    2. В поле Атрибут выберите Текст объекта.
    3. В поле Условие выберите Содержит.
    4. В поле Значение введите конкретное значение для фильтрации. Например для фильтрации только объектов, содержащих слово Documentation в атрибуте Текст объекта, введите следующее значение: Documentation
    5. Выберите Добавить. В разделе Дополнительные опции создается синтаксис правила.
  3. Выберите Описание и скопируйте полное описание. Создан фильтр Rational DOORS, который представляет собой сценарий DXL.
Для добавления фильтра Rational DOORS в элемент шаблона Rational Publishing Engine выполните следующие действия:
  1. Выберите элемент шаблона, содержащий запрос для фильтрации.
  2. На вкладке Свойства разверните раздел Данные.
  3. В поле Фильтр щелкните на значке многоточия. Откроется окно Редактор фильтра.
  4. На вкладке Внутренний фильтр вставьте фильтр Rational DOORS (сценарий DXL) и нажмите кнопку OK.

Фильтрация по направлению

Синтаксис команды фильтрации всех входящих или исходящих ссылок следующий:

Link direction in|out

Фильтрация по модулю ссылок

Синтаксис команды фильтрации всех ссылок через модуль ссылок следующий: Link module путь_и_имя_модуля_ссылок

Этот фильтр учитывает регистр символов.

В следующем примере фильтруются все ссылки от Link Module 1:

Link module/Demo/Car/Link Module 1

Фильтрация по целевому модулю

Синтаксис команды фильтрации всех ссылок, ведущих от или к указанному модулю, следующий: Link analyze module путь_и_имя_целевого_модуля

В следующем примере фильтруются все ссылки между модулями analyze и system requirement: Link analyze module /Demo/Car/System Requirements

Комбинирование стандартных фильтров ссылок

Фильтры на вкладке стандартных фильтров можно комбинировать. Каждый фильтр должен быть указан на отдельной строке.
Например, на вкладке Стандартный фильтр введите фильтр в следующем виде:

Link direction out.
Link analyze module/Demo/Car/System Requirements.

Рекурсивное извлечение

Для рекурсивного следования по ссылкам Rational DOORS укажите в свойстве Уровень рекурсии на панели Свойства ненулевое значение. В этом случае будет осуществляться переход по ссылкам от начального объекта и всех объектов, связанных с ним ссылками, до указанного уровня рекурсии.

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

Комментарии