基本的なルール

基本的なルールは、デザインの属性です。ルールは、ルールの宣言に含まれる、特定のデータ型の値を返す必要があります。長い形式のルール仕様は、Rule キーワードで開始し、End Rule で終端します。

次の例で同じルールのバリエーションを示します。ここでは、値をルール名に割り当てるのではなく、Return ステートメントを使用して値を返しています。

Rule numberOfBearings As Integer
   Return 2
End Rule

Intent 言語では、次の例に示すように、すべてのローカル変数を Dim キーワードを使用して宣言する必要があります。

Rule totalSprocketWidth As Number
   Dim L As Number = sprocketWidth * numberOfSprockets  

   If isDrive? Then
      totalSprocketWidth = L + driveSprocketSpacerLength _
         - (sprocketHubRecess * 3)
   Else
      totalSprocketWidth = L - (sprocketHubRecess * 2)
   End If
End Rule

ルール名

ルールの名前は、次のいずれかで開始する必要があります。

  1. アルファベット文字
  2. アンダースコア(_)
  3. パーセント記号(%)
注: 詳細については、次のリンクをクリックして名前をクリックします。

ルール名には、任意の数のアルファベット文字、数字、アンダースコア、疑問符(?)、パーセント記号を含めることができます。Intent は、ルール名の大文字小文字は無視します。次の名前は、Intent によって評価されるときに同じであるとみなされます。

  1. leg
  2. [脚]
  3. LEG

短縮形式のルール仕様

Intent 言語では、共通の "1 行" ルールに短縮形式のルール仕様を指定することができます。この短縮形式には、式を 1 つのみ含めることができ(複数のステートメントではない)、値を割り当てる必要があります。

Rule numberOfBearings As Integer = 2

短縮形式のルールのバリアントとして、式を含まない Required ルールがあります。

Required ルール

特殊な形式の短縮形式ルールでは、ルール式の代わりに、Required キーワードを使用します。Required は、この方法でのみ使用することができるキーワードであり、フラグではありません。Required ルールは、Canonical フラグまたは Parameter フラグと組み合わせて使用することができます。Required キーワードは、このルールを指定する必要がある場合(Parameter など)、またはグループルールで割り当てる必要がある場合(Canonical など)にコンパイラに示します。

Rule numberOfBearings As Integer = Required
注: 値がパラメータとして指定されていない場合や値がグループ ルールによって計算されていない場合に、Required ルールを評価しようとすると、実行時評価エラーが発生します。