---
title: SAIF.Presentation.Web.Controls.V2.Menu business rules
summary: No native business rules; all menu-authorization logic is externally sourced.
status: draft
owner: SAIF documentation team
last_reviewed: 2026-08-17
library: SAIF.Presentation.Web.Controls.V2.Menu
reference_type: package
---

# SAIF.Presentation.Web.Controls.V2.Menu business rules

No business rules (in the SAIF BOF sense of validation/enforcement logic with a statement/trigger/enforcement/outcome tied to persisted business data) are defined or enforced within this library.

All button-visibility and access-control decisions consumed by `SAIFMenu` and `SAIFMenuTop` originate from externally-supplied `clsMenuAuthorizedItem`/`clsMenuAuthorizedItemCollection` state, owned by [SAIF.Business.Menu](../saif-business-menu/overview.md), outside this library's scope. This library only reflects that externally-computed state in its rendering; it does not compute or enforce authorization itself.

The library does contain conditional UI-shaping logic (e.g., default accordion expansion state, hiding empty categories, disabled-icon rendering, and the externally-gated "Change Password" favorite link), but this is presentational behavior rather than a business rule. It is documented as behavior/edge-case notes on the relevant operation pages:
- [Render side navigation menu](operations/render-side-navigation-menu.md)
- [Render top toolbar menu](operations/render-top-toolbar-menu.md)

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Control catalog](control-catalog.md)
- [Configuration](configuration.md)
- [Security and authorization](security-authorization.md)
- [API reference](api/index.md)

## Sources
- `SAIF.Presentation.Web.Controls.V2.Menu\SAIFMenu.vb`
- `SAIF.Presentation.Web.Controls.V2.Menu\SAIFMenuTop.vb`
