Constraint an object of a class with enum type to appear in a particular order

I have the following class:

 typedef enum {norwegian, brit, german, swede, dane} nationality;
  typedef enum {white, green, blue, yellow, red} color;
  typedef enum {dog, fish, horse, bird, cat} animal;
  typedef enum {tea, coffee, beer, water, milk} drink;
  typedef enum {dunhill, bluemaster, prince, blends, pallmall} smoke;
  
  class baseClass;
    
    rand nationality nations;
    rand color colors;
    rand animal pets;
    rand drink drinks;
    rand smoke smokes; 
 
  endclass

  class EinsteinRiddle;
    
    rand baseClass people[5];

    <TO-DO HERE>

  endclass

How can I write a constraint so that the person who’s house is of the color green is on the left (not immediate left) of a person with house color
white? If white color happens to be at people[4].color, then green can have people 0-3. If the white color happens to be at people[1], green can only
be at people[0].

In reply to achapte:

You may want to see a solution to a similar puzzle.