Question on Host groups


I'm considering a move to Foreman and given the prior
experience with Puppet Dashboard I'm wondering what
is the established workflow around Node Groups?

In Puppet Dashboard, if I want a node to take onto an
additional role(s) all I have to do is to dynamically add
it to an existing node group. On top of that I can also
extend Node Group definition itself by adding other Node
Group definitions to its parent chain. This comes quite
handy in all sorts of situations.

In Foreman, on the other hand, it seems that Host Groups
are rather static, can only have one parent and Hosts can
only ever be part of a single Host Groups.

Am I missing something or is the model less flexible compared
to what Puppet Dashboard offers?