If you would like to use a structure of data having several levels arranged in a treelike structure within the same object you can use an self reference.
An example can be a group which can have a subgroup, and subgroups can have subgroups, etc. In this case you can add an attribute like "ContainsSubgroups" with an enumeration with Yes/No values. Then you can determine if you are at the end of the tree or not. If a group contains one or more subgroups (self reference is filled), then the enumeration "ContainsSubgroups" is set to 'Yes', else it's set to 'No'.
Hope this will help you!
You can find your answer here: Relation