Drupal core's profile module limits weights of profile fields from only -10 to 10, which if you have a lot of profile fields, becomes a limitation to how you can re-arrange them.
Since there's no obvious way of saving term hierarchy when creating a node, this module was created.
The user creates 2 term reference fields, referencing the same taxonomy vocabulary.