Views must be properly defined before being referenced All view references in windows and dependencies must correspond to defined views View names must be unique within the document and included files Windows must be properly associated with views Every window should be referenced by at least one view Windows referenced in view window-ref elements must exist Window roles within a view must be unique View inheritance must be valid and acyclic Views can only inherit from other defined views Inheritance chains must not contain cycles Inherited view types must be compatible (base views can be inherited by any type) View categories must be compatible in inheritance hierarchies View dependencies must be valid and resolvable Referenced views in dependencies must be defined Dependency relationships must be appropriate for the view types Required dependencies must be satisfiable Circular dependencies between views are not allowed View relationships must be semantically correct Lookup relationships should reference utility or business-entity views Detail relationships should reference views that can operate in detail mode Reference relationships should not create tight coupling Primary relationships in composite views must be unique Data context properties must be consistently defined Shared-scope properties must have compatible types across views Property names within a view must be unique Global-scope properties should be defined in base views or modules Data context types must be valid and resolvable View data context bindings must be valid Window data-context-binding must reference existing data context properties Binding scopes must be appropriate for the window role Navigation contexts must reference valid data context properties Navigation actions must be valid and reachable Navigation targets must reference defined windows within the view Navigation contexts must reference valid data context properties Action names within a view must be unique Required navigation actions must be implemented Behavior scopes must be appropriate and consistent Global-scope behaviors should be defined in base views or modules View-scope behaviors must be unique within the view Inherited behaviors can be overridden with compatible scopes Inter-view communication must be properly defined Subscribed events must reference valid source views Event handlers must be implemented in the subscribing view Published events should be consumed by at least one subscriber Event data types must be compatible between publishers and subscribers Composite views must be properly structured Composed views must be defined and accessible Layout slots must correspond to wireframe slot definitions Primary role must be assigned to exactly one composed view Coordination rules must reference valid views and events Module views must properly organize related functionality Module views must contain at least one view reference Referenced views in modules must be defined Module dependencies must be valid and resolvable Main navigation items must reference contained views Process flow workflows must be valid and navigable Workflow steps must reference valid windows within the view Step transitions must form a connected graph Workflow must have at least one starting step (no previous) Circular workflows must have explicit exit conditions View metadata must be valid for code generation Model class names must follow naming conventions View model class names should end with 'ViewModel' Controller class names should end with 'Controller' Permission strings must follow defined permission patterns View types must be used appropriately Business-entity views should have CRUD operations Process-flow views should define workflow steps Dashboard views should aggregate data from other views Utility views should be designed for reuse Wizard views should have sequential navigation Base views should be designed for inheritance Views should be designed for optimal performance Dependency depth should not exceed 5 levels Composite views should not contain more than 10 composed views Data context properties should have appropriate scopes Event subscriptions should not create performance bottlenecks Views must implement proper security constraints Views with write operations must specify appropriate permissions Sensitive operations must require explicit permissions Cross-view data access must respect security boundaries Administrative views must have admin category or permissions Views should support accessibility requirements Modal dialogs should have proper escape mechanisms Navigation actions should be keyboard accessible Critical functions should not depend solely on color or visual cues Views should support screen reader navigation View naming should follow consistent patterns View names should end with 'View' suffix Related views should use consistent naming prefixes Window references should use descriptive role names Navigation action names should be verb-based and descriptive