Right now there is no way to enforce insertion of sub terms on node creation in Drupal. You can create a tree of taxonomy terms but no way to enforce any kind of referential integrity to help maintain structure. E.G.
Would it be possible to create the first Food vocabulary as a select list and sub categories as auto select lists that are dependent on first. In normal programming, we would just add "selected index" and be done with it. This obviously is not normal programming. If this could be done with this module, it would probably rank among one of the most used modules in Drupal land! I think the ideal situation would be only two term reference fields. On that targets the top level of the vocabulary tree and the second targeting the second level depending on the parent selection in the first term.