88-level variables, also known as "condition name" variables, represent possible values of the "conditional variables" they're tied to. Because a condition name can be used to test the value of its conditional variable without any other contextual references to the conditional variable being tested, it makes the code easier to understand if the name of the 88-level variable references its conditional variable.


This rule raises an issue when the name of an 88-level variable does not start with the first characters of the name of its conditional variable.


== Noncompliant Code Example

With the default minimum of 3:

----
01 COLOR PIC X.
  88 YELLOW VALUE 'Y'. *> Noncompliant
  88 GREEN VALUE 'G'. *> Noncompliant
  88 RED VALUE 'R'. *> Noncompliant

* ...
IF GREEN  *> What does this mean?
* ...
END-IF
----


== Compliant Solution

----
01 COLOR PIC X.
  88 COL-YELLOW VALUE 'Y'.
  88 COL-GREEN VALUE 'G'.
  88 COL-RED VALUE 'R'.

* ...
IF COL-GREEN 
* ...
END-IF
----


ifdef::env-github,rspecator-view[]
'''
== Comments And Links
(visible only on this page)

include::comments-and-links.adoc[]
endif::env-github,rspecator-view[]
