A '@' AltTCPHostName '.' AltTCPHostName =>
A '%' TCPHostName '@' TCPHostName;
以下の 2 つの規則には誤った構文があります。これは、最初のキーワード
AltTCPHostName は、特定の値を持つキーワードに書き直す必要があるためです。AltTCPHostName は
同じ AltTCPHostName に書き直されるように試みましたが、値が不明であり、これは無効です。 A '@' AltTCPHostName '.' AltTCPHostName =>
A '%' AltTCPHostName '@' TCPHostName;
A '@' TCPHostName => A '@' AltTCPHostName;
before-address-pattern が
ヌル値を持つキーワードを組み込んでいる規則はすべて、ヘッダーの書き直し中は無視されます。したがって、システム構成データ・セット内で AltNJEDomain が定義されていない場合、before-address-pattern 内に AltNJEDomain を組み込んでいる規則は、ヘッダーの書き直し中は考慮に入れられません。 A '@' B TCPHostName => A '%' B '@' TCPHostName;
A '%' B '@' NJEHostName => A B '@' TCPHostName;
以下の規則には誤った構文があります。これは、最初の規則の行 A および
B の中に 2 つのワイルドカードがあるためです。また、2 番目の規則には同じワイルドカードの
A が反復して出てきています。 A B '@' TCPHostName => A A '%' B '@' TCPHostName;
A '%' A '@' NJEHostName => A '@' TCPHostName;
IF cond THEN
statement list
ELSE
statement list
ENDIF
ステートメント・リストは、任意の数の規則またはネストされた IF ステートメント (あるいはその両方) で構成されます。
各 IF ステートメントは、それがネストされているかどうかに関係なく、ENDIF キーワードで終わる必要があります。他のプログラミング言語における IF ステートメントの場合と同様、ELSE 節はオプションです。IF ステートメントが認識するのは次の 2 つの条件だけです。
条件演算子 = および CONTAINS に接頭部としてワード NOT を付けると、その条件を反転することができます。
事前定義キーワード は、システム構成時に単一の値に解決されるキーワードでなければなりません。 最初の条件の中の文字ストリングはヌルでもかまいません。文字ストリングは、2 行以上にスパンすることはできません。
IF NJEDomain = '' THEN
A '@' AnyNJEHostName => A '%' AnyNJEHostName '@' TCPHostName;
ELSE
A '@' NJEHostName '.' NJEDomain => A '@' TCPHostName;
A '@' NJEHostName '.' AltNJEDomain => A '@' TCPHostName;
IF NJEDomain CONTAINS '.' THEN
A '@' AnyNJEHostName =>
A '@' AnyNJEHostName '.' NJEDomain;
A '@' AnyNJEHostName '.' NJEDomain =>
A '@' AnyNJEHostName '.' NJEDomain;
A '@' AnyNJEHostName '.' AltNJEDomain =>
A '@' AnyNJEHostName '.' NJEDomain;
ELSE
A '@' AnyNJEHostName =>
A '%' AnyNJEHostName '.' NJEDomain '@' TCPHostName;
A '@' AnyNJEHostName '.' NJEDomain =>
A '%' AnyNJEHostName '.' NJEDomain '@' TCPHostName;
A '@' AnyNJEHostName '.' AltNJEDomain =>
A '%' AnyNJEHostName '.' NJEDomain '@' TCPHostName;
ENDIF
ENDIF