On Sun, Aug 30, 2020 at 12:02 PM Marc Nieper-Wißkirchen <xxxxxx@nieper-wisskirchen.de> wrote:

Let's take a step back. Apparently, you want to solve two things at
least: (1) Having a distinct predicate for foreign status. (2) Having
error objects that carry an extensible list of properties.

This conflict is I think resolved: we will wrap the list of properties in a trivial record, thus giving it an overarching predicate "Is this a foreign-status object?"
 
In this system, it makes sense that being a foreign status is
implemented as a simple condition.

Given the direction I am moving in this thread, a compound condition would make more sense, since a status may have properties in more than one property group.  So each group of properties is a simple condition

One thing I don't understand about compound conditions is how you get access to the simple conditions inside.