Запрос описывает данные, извлекаемые из источника данных, и
представляет собой путь в схеме источника данных. Запрос, связанный с элементом шаблона, позволяет задать
контекст данных элемента и его дочерних элементов.
Об этой задаче
Запросы в
IBM® Rational DOORS
начинаются с корневого элемента (модуля), за которым следует его
дочерний элемент (объект) и дочерние атрибуты объекта. Например:
Module/Object/Attribute/Name.
Синтаксис запросов IBM Rational Tau похож на синтаксис XPath. Однако
в отличие от XPath запрос Rational Publishing Engine
не задает фильтр; операторы фильтрации и сортировки создаются
отдельно от запроса. Все элементы схемы за исключением запроса определяются с
помощью внутренних запросов
Rational Tau. Запрос на языке извлекает данные
Rational Tau.
Например с корневым элементом из элемента модели model.rootResource связан запрос
GetModelRoots()
Rational Tau.
Процедура
- Присвойте запросы.
- В Document Studio откройте панель Схема источника данных.
- Добавьте элементы в шаблон.
- Перенесите элементы из панели
Схема источника данных на элементы.
Запрос присваивается элементу шаблона. Атрибуты
типа запроса (элемент, перенесенный из панели Схема
источника данных ), можно использовать в элементе
шаблона и его дочерних элементах.
- Укажите ограничение для элемента запроса.
Прим.: Ограничение элементов запроса обеспечивает возможность
обработки подмножества элементов шаблона.
- В Document Studio выберите элемент шаблона, содержащий запрос.
- На панели Свойства перейдите на вкладку
Данные.
- Для свойства Ограничение введите число
объектов из источника данных для применения в соответствующем
запросе. Нулевое значение (0)
указывает, что ограничение отсутствует.
- Присвойте повторяющиеся свойства запросам. Рекурсия данных позволяет извлечь все дочерние требования
из основного исходного требования в схеме.
- Выберите элемент, содержащий запрос.
- На панели Свойства в свойстве Рекурсивный уровень укажите глубину запроса.
- Для свойства Рекурсивные сегменты укажите число
повторяющихся сегментов в запросе.
Ниже приведен пример рекурсивных уровней и сегментов.
- Сохраните внесенные изменения.
Результаты
В процессе применения запроса к элементу в
редакторе материалов шаблона отображаются
три визуальных индикатора (по умолчанию они выделены синим цветом):
- Имя схемы источника данных
- Контекст отображается с символом доллара ($)
- Имя запроса
Совет: При очистке информации из запросов опции
Очистить ссылки и очистить
данные работают по-разному. Опция Очистить
ссылки доступна, только когда выбран элемент, имеющий
запрос. Опция Очистить ссылки удаляет все
запросы, атрибуты, фильтры, сортировки и условия в выбранном элементе
и его дочерних элементах, если им также назначены запросы или атрибуты. Опция Очистить данные удаляет все запросы,
атрибуты, фильтры, сортировки и условия в выбранном элементе и его
дочерних элементах. Главные страницы, стили и свойства форматирования
не удаляются.
Пример: Рекурсивный уровень и рекурсивные сегменты
Список требований к программному обеспечению можно просмотреть
с помощью запроса
PRRequirement в схеме
IBM Rational RequisitePro,
которая устанавливается вместе с примерами
Rational Publishing Engine:
%RPE_HOME%\source\XML\examples\RequisitePro.xsdДля
каждого запроса PRRequirement можно извлечь все
дочерние требования на всех уровнях вложения, избежав добавления каждого
запроса в шаблон.
Вместо добавления следующих запросов:
- [$1] Project/Requirements/PRRequirement для
извлечения PRRequirements.
- [$2] $1/Children/Relationship/RelatedReq для
извлечения дочерних требований каждого элемента PRRequirement.
- [$3] $2/Children/Relationship/RelatedReq
для извлечения дочерних требований каждого требования из каждого
элемента PRRequirement.
Можно
создать один запрос для всех требований:
- Добавьте запрос Project/Requirements/PRRequirement/Children/Relationship/RelatedReq
в элемент.
- Добавьте значения в свойства Рекурсивный уровень и Рекурсивные
сегменты:
- Выполните отчет для тестирования.
При
создании отчета выполняются следующие запросы:
Если значение свойства
Рекурсивные сегменты
превышает число сегментов в запросе, то неполадку можно устранить
одним из следующих способов:
- Выберите элемент, к которому применено свойство Рекурсивные сегменты. На панели Свойства выберите вкладку
Данные и уменьшите значение свойства
Рекурсивные сегменты.
- Кроме того, запрос можно изменить таким образом, чтобы он
начинался с другого родительского запроса. Если значение свойства Рекурсивные сегменты
больше не один сегмент, создайте элемент контейнера и добавьте
запрос, расположенный на один уровень выше родительского запроса
существующего элемента.
Затем переместите существующий элемент в элемент контейнера.
Дальнейшие действия
Совет: Для того чтобы выполнить поиск списка
запросов и атрибутов, щелкните правой кнопкой мыши на элементе и
выберите . Откроется панель Поиск со списком запросов и атрибутов. Дважды щелкнув на запросе или атрибуте в списке результатов, можно изменить его содержимое.
Для поиска списка присваиваний переменных, атрибутов и запросов, используемых в элементе щелкните правой кнопкой мыши на этом элементе и выберите . Откроется представление Поиск и будет показан список. Для изменения элемента дважды щелкните на нем в результатах.
Для того чтобы найти запрос или атрибут на
панели Схемы источников данных, щелкните правой кнопкой мыши на
связанном элементе и выберите . Откроется панель Схема
источника данных, на которой будет выделен запрос или атрибут.