IM-BIS for Accel Platform / OpenRules for IM-BIS 連携ガイド 第2版 2015-08-01

11.2. 条件として利用できるキーワード

DecisionDecisionTable で条件の設定に利用するキーワードです。

Condition

演算子と比較する値を組み合わせて条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
  • 単一の値を設定する例

    ../../_images/condition_simple.png
  • 複数の値(配列)を設定する例

    ../../_images/condition_complex.png

利用できる演算子

演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Is Empty
なし
条件では、単一の値と比較し、「空の値」(値が「null」、または空白を含む値)を表します。
Contains
  • Contain
条件では、文字型(String)の単一の値と比較し、「~を含む」(部分一致)を表します。
大文字・小文字は区別せずに比較します。
Starts With
  • Start with
  • Start
条件では、文字型(String)の単一の値と比較し、「~から始まる」(前方一致)を表します。
大文字・小文字は区別せずに比較します。
Match
  • Matches
  • Is Like
  • Like
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致するかを表します。
No Match
  • Not Matches
  • Does Not Match
  • Not Like
  • Is Not Like
  • Different
  • Different From
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致しないかを表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。
Is One Of
  • Is One
  • Is One Of Many
  • Is Among
  • Among
条件では、文字型(String)の単一の値と比較し、カンマ区切りで表現した値のいずれかと一致するかを表します。
Is Not One Of
  • Is Not Among
  • Not Among
条件では、文字型(String)の単一の値と比較し、カンマ区切りで表現した値のいずれとも一致していないかを表します。
Include
  • Include All
IM-BIS との連携では、利用できません。
Exclude
  • Do Not Include
  • Exclude One Of
IM-BIS との連携では、利用できません。
Does Not Include
  • Include Not All
IM-BIS との連携では、利用できません。
Intersect
  • Intersect With
  • Intersects
IM-BIS との連携では、利用できません。

コラム

  • Condition / Within利用時の演算子の扱い

    1つのDecision Tableについて、すべての条件が、”Is” または “Within” となる場合には、演算子列なしで定義することもできます。
  • 数値を比較条件に利用する場合の記述方法

    数値を比較条件に利用する場合には、記述方法によって合致する範囲が変わります。
    特定の数値を基準とした条件を記述する場合には、以下の表を参考にして記述してください。

    記述方法

    設定時に条件と合致したと評価される値

    5

    5と等しい場合のみ

    [5,10]

    5,6,7,8,9,10のいずれかの場合

    5;10

    5,6,7,8,9,10のいずれかの場合

    [5;10)

    5,6,7,8,9のいずれかの場合。10は含まない

    5-10

    5,6,7,8,9,10のいずれかの場合

    5- 10

    5,6,7,8,9,10のいずれかの場合

    -5-20

    -5以上、かつ20以下の場合

    -5–20

    範囲指定の左辺(-5)が右辺(-20)より大きくなるため、エラー

    -5–2

    -5以上、かつ-2以下の場合

    from 5 to 20

    5以上、かつ20以下の場合

    less 5

    5未満の場合(5を含まない)

    less than 5

    5未満の場合(5を含まない)

    less or equals 5

    5以下の場合(5を含む)

    less or equal 5

    5以下の場合(5を含む)

    less or equals to 5

    5以下の場合(5を含む)

    smaller than 5

    5未満の場合(5を含まない)

    more 10

    10より大きい場合(10を含まない)

    more than 10

    10より大きい場合(10を含まない)

    10+

    10以上の場合

    > 10

    10より大きい場合(10を含まない)

    >= 10

    10以上の場合(10を含む)

    between 5 and 10

    5,6,7,8,9,10のいずれかの場合

    no less than 10

    10以上の場合(10を含む)

    no more than 5

    5以下の場合(5を含む)

    equals to 5

    5と等しい場合

    greater or equal than 5 and less than 10

    5以上10未満の場合(5は含むが、10は含まない)

    more than 5 less or equal than 10

    5より大きく10以下の場合(5は含まないが、10を含む)

    more than 5,111,111 and less or equal than 10,222,222

    5,111,111 より大きく10,222,222以下の場合(5,111,111は含まないが、10,222,222を含む)

    [5‘000;10‘000‘000)

    5,000以上10,000,000未満の場合(5,000は含むが、10,000,000は含まない)

    [5,000;10,000,000)

    5,000以上10,000,000未満の場合(5,000は含むが、10,000,000は含まない)

    (5;100,000,000]

    5,000以上10,000,000以下の場合(5,000、10,000,000の両方とも含む)

浮動小数点型(double)の範囲を指定する場合には、「FromToDouble」という型を用いて記述します。
この型を利用した場合も、整数の範囲と同様に[2.7; 3.14)のように表します。

If

「If」は、If(Condition)に演算子を記述しなくてもよい特殊なキーワードです。
このキーワードは、 Condition と演算子”=”や”Within”を利用した場合と同義になります。

記述方法

If を利用したい場合、以下の図のように記述します。
../../_images/if.png

利用できる演算子

このキーワードでは、演算子を利用しません。

ConditionBetween

範囲内を表す条件として、下限値・上限値を組み合わせて条件に設定することができます。
ConditionBetweenを使う場合には、「下限値」 以上、「上限値」 以下 として評価します。
Condition で、演算子に「Within」を設定した場合と同義です。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_between.png

利用できる演算子

このキーワードでは、演算子を利用しません。

ConditionVarOperValue

Glossaryに定義した項目と、特定の値の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_var_oper_value.png
また、応用的な利用方法として、複数の項目に対応する条件を表すこともできます。
../../_images/condition_var_oper_value_ex.png

利用できる演算子

このキーワードでは、 Condition と同様に演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Is Empty
なし
条件では、単一の値と比較し、「空の値」(値が「null」、または空白を含む値)を表します。
Contains
  • Contain
条件では、文字型(String)の単一の値と比較し、「~を含む」(部分一致)を表します。
大文字・小文字は区別せずに比較します。
Starts With
  • Start with
  • Start
条件では、文字型(String)の単一の値と比較し、「~から始まる」(前方一致)を表します。
大文字・小文字は区別せずに比較します。
Match
  • Matches
  • Is Like
  • Like
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致するかを表します。
No Match
  • Not Matches
  • Does Not Match
  • Not Like
  • Is Not Like
  • Different
  • Different From
条件では、文字型(String)の単一の値と比較し、正規表現で表したパターンと一致しないかを表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。
Is One Of
  • Is One
  • Is One Of Many
  • Is Among
  • Among
条件では、文字型(String)の単一の値と比較し、カンマ区切りで表現した値のいずれかと一致するかを表します。
Is Not One Of
  • Is Not Among
  • Not Among
条件では、文字型(String)の単一の値と比較し、カンマ区切りで表現した値のいずれとも一致していないかを表します。
Include
  • Include All
IM-BIS との連携では、利用できません。
Exclude
  • Do Not Include
  • Exclude One Of
IM-BIS との連携では、利用できません。
Does Not Include
  • Include Not All
IM-BIS との連携では、利用できません。
Intersect
  • Intersect With
  • Intersects
IM-BIS との連携では、利用できません。

ConditionIntOperInt

Glossaryに定義した整数型(int)の項目同士の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_int_oper_int.png

利用できる演算子

このキーワードでは、 Condition で利用できる演算子のうち、整数型(int)に対応している演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。

ConditionRealOperReal

Glossaryに定義した実数型(real)の項目同士の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_real_oper_real.png

利用できる演算子

このキーワードでは、 Condition で利用できる演算子のうち、実数型(real)に対応している演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。
Within
  • Inside
  • Inside Interval
  • Interval
条件では、整数型(integer)・実数(浮動小数点)型(real)の単一の値と比較し、「範囲内」(~から~の間)を表します。
下限値・上限値は、[0;9], (0;9], 0–9, between 5 and 10, more than 5 and less or equals 10 などの形式で記述します。
[0;9]、または0-9と書いた場合には、「0以上9以下」、[0;9)と書いた場合には、「0以上9未満」を表します。

ConditionDateOperDate

Glossaryに定義した日付型(Date)の項目同士の比較条件に設定することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
../../_images/condition_date_oper_date.png

利用できる演算子

このキーワードでは、 Condition で利用できる演算子のうち、日付型(Date)に対応している演算子を利用することができます。
演算子 別の記法 説明
Is
  • =
  • ==
条件では、単一の値と比較し、「~に等しい」を表します。
Is Not
  • !=
  • isnot
  • Is Not Equal To
  • Not
  • Not Equal
  • Not Equal To
条件では、単一の値と比較し、「~に等しくない」を表します。
>
  • Is More
  • More
  • Is More Than
  • Is Greater
  • Greater
  • Is Greater Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より大きい」(設定した値を含まない)を表します。
>=
  • Is More Or Equal
  • Is More Or Equal To
  • Is More Than Or Equal To
  • Is Greater Or Equal To
  • Is Greater Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以上」(設定した値を含む)を表します。
<=
  • Is Less Or Equal
  • Is Less Or Equal To
  • Is Less Than Or Equal To
  • Is Smaller Or Equal To
  • Is Smaller Than Or Equal To
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~以下」(設定した値を含む)を表します。
<
  • Is Less
  • Less
  • Is Less Than
  • Is Smaller
  • Smaller
  • Is Smaller Than
条件では、整数型(integer)・実数(浮動小数点)型(real)・日付型(Date)の単一の値と比較し、「~より小さい」(設定した値を含まない)を表します。

ConditionAny

methodを利用した特定の計算式やメソッドの返却値に基づいた条件を記載することができます。

記述方法

利用するTableTypeのサブヘッダ部に記述します。
演算子として記述する「Is True(真の場合)」「Is False(偽の場合)」にそれぞれ実行したい処理を記述します。
../../_images/condition_any.png

利用できる演算子

演算子 別の記法 説明
Is True
なし
条件では、記述した式の結果と比較し、「真の場合の処理」を表します。
Is False
なし
条件では、記述した式の結果と比較し、「偽の場合の処理」を表します。

ConditionMap

HashMap型の項目に対する条件を記述することができます。
IM-BIS との値の受け渡しでは、HashMap型を利用することはできません。