Sto cercando di creare un sistema di Menu che sia il più versatile possibile

Ho la tabella: TbMenu

IdMenu (PK int)
IdPagina (int)
LivelloMenu (int)
Parent (int)
Ordine (int)


Ai vari menu sono associate le pagine (prese da una tabella apposita).

Ora il mio problema è che voglio creare un sistema gerarchico con pagine e menu.

In pratica la index.asp sarà la Root, poi sotto ci saranno i menu con LivelloMenu = 1, e ancora sotto i menu con LivelloMenu = 2.... e così via.


Ora vi chiedo.
Secondo voi come dovrei strutturare l'albero?

Il parent è l'attributo che indica l'elemento superiore.

Secondo voi è meglio impostare il parent:

- Nei menu, inserendoci il menu superiore (se si tratta della Index sarà null o zero)
- Nei menu, inserendoci l'ID della pagina superiore
- Nelle pagine, inserendoci l'ID della pagina superiore

?
Come credete sia meglio?
Anche perchè ci sono delle eccezioni, tipo pagine che possono non fare parte della struttura (nessun parent)-

Mi date un'opinione?

Thanks