Es gibt auch die Möglichkeit, für Typerweiterungen Aggregate zu verwenden. Beispiele sind:
painted_point'(point with red) (point'(p) with paint => black)