Следующие примеры выражений фильтра и тестовых выражений были взяты из набора правил для блок-схемы, входящего в шаблоны простых блок-схем, функциональных блок-схем, схем «Шесть сигм» Visio 2010.
Пример 1. Требуется правило, проверяющее, что оба конца всех соединителей присоединены к фигурам.
ROLE()=1.
В этом примере выражение фильтра используется для исключения всех фигур, не являющихся соединителями. Тестовое выражение проверяет наличие одной двумерной фигуры, присоединенной к точке входящего соединения, и одной двумерной фигуры, присоединенной к точке исходящего соединения.
Пример 2. Требуется правило, проверяющее, что на любой странице хотя бы с одной дорожкой все фигуры блок-схемы принадлежат этой дорожке.
В этом примере выражение фильтра используется для исключения всех страниц без фигуры дорожки. Для каждой страницы в документе выражение фильтра из всех фигур на странице исключает только фигуры категории «Дорожка». В данном примере на нужных страницах есть хотя бы одна фигура, соответствующая этому условию.
Тестовое выражение проверяет принадлежность всех фигур дорожке. Фигура блок-схемы определена как фигура, которая принадлежит уровню блок-схемы либо имеет категорию «Блок-схема». Тестовое выражение просматривает все фигуры на странице и «задает» каждой фигуре следующие два вопроса:
Затем выражение суммирует количество фигур, давших положительные ответы на оба вопроса. Если сумма отлична от нуля, найдена как минимум одна фигура блок-схемы, находящаяся вне дорожки.
Примечание. Список категорий, к которым принадлежит фигура, отображается в ячейке User.msvShapeCategories в ShapeSheet для фигуры. Можно определить несколько категорий для фигуры, разделив их точкой с запятой. По умолчанию функциональные блок-схемы (CFF) принадлежат к категории «Контейнер CFF», а отдельные дорожки в CFF принадлежат категории «Дорожка» (Swimlane).