Условие; сравнение значений по определенному признаку.
Описание Condition
<ConditionName="ConditionName"Type="ConditionType"Assembly="ConditionAssembly"><!--Тэги, общие для всех условий--><!--Тэги, специфичные для ComparisonCondition--></Condition>
Тэги, специфичные для ComparisonCondition
Items
Значения для сравнения.
Необязательный тэг. Значение тэга <Items>: список тэгов <Item>.
Если тэг <Items> отсутствует, то условие всегда будет иметь значение False.
Необязательный тэг. Значение тэга <Item>: любое значение.
DataType
Тип, к которому будут приводиться значения для сравнения.
Необязательный тэг. Значение тэга <DataType>: не ожидается.
Если тэг <DataType> отсутствует, то для атрибута Type используется значение StringDataType.
Атрибуты тэга <DataType>
Type
Тип данных.
Обязательный атрибут. Значение атрибута Type: название одного из типов данных.
Comparison
Настройки вычисления значения условия, если в качестве значения хотя бы одного из операндов выступает массив или матрица.
Необязательный тэг. Значение тэга <Comparison>: не ожидается.
Если тэг <Comparison> отсутствует, то для атрибута Type используется значение Inner.
Если один из операндов условия - массив или матрица, то для сравнения должен быть выбран базовый элемент из списка <Items>.
Размерность (общее количество элементов массива или матрицы) базового элемента определяет количество сравнений в рамках данного условия.
Если операнд - матрица, то она в рамках условия трансформируется по столбцам в линейный массив.
Пример
Если в качестве первого <Item> задан массив размерностью 3, а в качестве второго <Item> - массив размерностью 2, базовым элементом для сравнения задан первый <Item>, то в рамках данного условия будут происходить следующие внутренние сравнения:
Item1[1] = Item2[1]
Item1[2] = Item2[2]
Item1[3] = NULL
Если в качестве первого <Item> задана массив размерностью 3, а в качестве второго <Item> - матрица размерностью 2x2, базовым элементом для сравнения задан первый <Item>, то в рамках данного условия будут происходить следующие внутренние сравнения: