Grundlegende Regeln sind einfache Attribute eines Designs. Die Regel muss einen Wert eines bestimmten Datentyps zurückgeben, der in der Deklaration der Regel enthalten ist. Die Langform einer Regelspezifikation beginnt mit dem Schlüsselwort Rule und endet mit End Rule.
Das folgende Beispiel zeigt eine Variation derselben Regel. Dieses Mal wird die Return-Anweisung verwendet, um einen Wert zurückzugeben, statt dem Regelnamen einen Wert zuzuweisen.
Rule numberOfBearings As Integer Return 2 End Rule
In Intent ist es erforderlich, alle lokalen Variablen mit dem Schlüsselwort Dim zu deklarieren, wie das folgende Beispiel zeigt.
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
Der Name einer Regel muss wie folgt eingeleitet werden:
Regelnamen können eine beliebige Anzahl von Buchstaben, Zahlen, Unterstrichen, Fragezeichen (?) oder Prozentzeichen enthalten. Intent ignoriert bei Regelnamen die Groß- und Kleinschreibung. Die folgenden Namen werden bei der Auswertung durch Intent als identisch angesehen:
Intent lässt eine Kurzform der Regelspezifikation für allgemeine einzeilige Regeln zu. Diese Kurzform kann nur über einen Ausdruck (keine Anweisungen) verfügen und muss einen Wert zuweisen.
Rule numberOfBearings As Integer = 2
Eine Variante der Kurzformregel ist die Required-Regel, die keinen Ausdruck enthält.
Bei einer Sonderform der Kurzformregel wird das Schlüsselwort Required anstelle des Regelausdrucks verwendet. Required ist ein Schlüsselwort, das nur in dieser Form verwendet werden kann. Es handelt sich nicht um ein Flag. Required-Regeln können nur in Verbindung mit den Flag Canonical oder Parameter verwendet werden. Das Schlüsselwort Required informiert den Kompilierer, dass diese Regel übergeben (bei Parameter) oder durch eine Gruppenregel zugewiesen werden muss (bei Canonical).
Rule numberOfBearings As Integer = Required