Currently, by means of custom filters, Gramps allows users to create dynamic “sets” of a given object type, which can then be manipulated in certain ways (tagged, deleted, exported, etc.).
I wonder if it might be useful to have a more formal, persistent kind of “set” object in Gramps?
A set could be homogeneous, containing only objects of a given type, as well as other sets of that type. One example would be a set of events, as has been discussed in several other posts. Other examples would be clans/tribes/etc. which could be sets of families. A set of places could be helpful when multiple but non-enclosing or non-hierarchical locations have some intrinsic relationship. Perhaps even a set of sources could be useful. Anyway, it would be good to make the feature as generic as possible, rather than working for only certain object types.
A set could also be heterogeneous, containing any mix of object types and other homogeneous or heterogeneous sets. This might be useful for representing an organization which consists of both people and places (or addresses) - a colony, a company, a diaspora, etc.
At a minimum, a set would have a handle, a Gramps ID, and a name/description. It could also have attributes, notes, tags, and maybe even citations. (Possibly it could also have a date range, but that might complicate things unnecessarily, since some of the underlying objects already have date ranges of their own, so I would recommend against that.)
There could be filter rules to return objects of specific sets, or sets meeting some specified criteria, just as there are filter rules for each type of object. This would enable all existing reports and displays which have filtering to access them.
Sets could overlap; they need not be hierarchical. Filter rules could return the union or intersection of sets, just as they currently do when combining multiple rules.
Sets would not be exported to GEDCOM, except perhaps to somehow flag each object as belonging to a particular set. But they could be exported to other formats, and possibly imported from some other formats.
I continue to think about all of this, but am now at the point where I am interested in feedback on the potential utility of this feature.