---
title: IPolicyHeaderDataProvider
summary: API reference for IPolicyHeaderDataProvider.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy
reference_type: package
---

# IPolicyHeaderDataProvider

`IPolicyHeaderDataProvider` is the contract that supplies the summary/header-level policy information displayed at the top of policy screens: the policy number, name, legal name, status, market type, agency, relationship, rate account, related policy associations, help texts, and any messages for the current policy. Concrete implementations aggregate this data from the underlying policy period/association types (`IPolicyHeaderAssociation`, `IPolicyAssociationType`) for presentation.

## Purpose
- Expose the read-only header summary fields (policy number/name/legal name/status/market type/agency/relationship/rate account) needed to render a policy header.
- Expose the set of `IPolicyHeaderAssociation` records related to the policy and the parent association for a given `IPolicyAssociationType`, so the header can show related/associated policies.
- Expose `HelpTexts` (a `PolicyHeaderHelpTextCollection`) and `Messages` for UI help text and informational messages associated with the header.

## Context
- Namespace: `SAIF.Business.Policy`
- Assembly/package: `SAIF.Business.Policy`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `PolicyNumber` | `ReadOnly Property PolicyNumber As Decimal` | The policy number identifying the policy being described. |
| `PolicyName` | `ReadOnly Property PolicyName As String` | The display name of the policy. |
| `LegalName` | `ReadOnly Property LegalName As String` | The legal (registered) name of the policyholder. |
| `StatusDescription` | `ReadOnly Property StatusDescription As String` | A human-readable description of the policy's current status. |
| `MarketTypeDescription` | `ReadOnly Property MarketTypeDescription As String` | A human-readable description of the policy's `MarketTypes` value. |
| `AgencyName` | `ReadOnly Property AgencyName As String` | The name of the agency associated with the policy. |
| `RelationshipDescription` | `ReadOnly Property RelationshipDescription As String` | A human-readable description of the policy's `PolicyRelationships` value. |
| `RateAccountNumber` | `ReadOnly Property RateAccountNumber As Decimal` | The rate account number associated with the policy. |
| `PolicyAssociations` | `ReadOnly Property PolicyAssociations As IEnumerable(Of IPolicyHeaderAssociation)` | The set of policy associations (e.g., wrap-ups, leasing companies, sub-accounts) related to this policy. |
| `PolicyAssociationParent` | `ReadOnly Property PolicyAssociationParent(ByVal inAssociationType As IPolicyAssociationType) As IPolicyHeaderAssociation` | Returns the parent association record for the specified association type, if one exists. |
| `HelpTexts` | `ReadOnly Property HelpTexts As PolicyHeaderHelpTextCollection` | The collection of contextual help text strings for the policy header UI. |
| `Messages` | `ReadOnly Property Messages As IEnumerable(Of String)` | Informational or warning messages associated with the current policy header. |


## Behavioral notes
- Source declaration: `Business\SAIF.Business.Policy\IPolicyHeaderDataProvider.vb`.
- Related operations, rules, and SQL are cross-referenced from the library-level documentation.

## Constraints and usage notes
- Consumers should rely on the declared public surface rather than internal implementation details.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- `Business\SAIF.Business.Policy\IPolicyHeaderDataProvider.vb`
