Skip to content

iPeriodRatingInfo

iPeriodRatingInfo is the interface implemented by policy-period-like objects that carry the rating attributes used to determine premium calculation dates and market classification: anniversary rating date, rating effective date, extension flags, effective/expiration dates, rate tier code, and market type. It extends IEquatable(Of iPeriodRatingInfo) and is self-contained: implementations compare equal only when all eight rating attributes match, per BR-POL-015.

Purpose

  • Expose the rating dates (AnniversaryRatingDate, RatingEffectiveDate, EffectiveDate, ExpirationDate) and extension flags (IsARDExtended, IsREDExtended) that determine when a period's rating applies.
  • Expose RateTierCode and MarketType as classification inputs consumed elsewhere (e.g., iAdjustedRateProvider).
  • Require a value-based GetHashCode so implementations can participate correctly in hash-based collections when combined with PeriodRatingInfoExtensions.BaseGetHashCode.

Context

  • Namespace: SAIF.Business.Policy
  • Assembly/package: SAIF.Business.Policy

Public members

Member Signature Purpose
AnniversaryRatingDate Property AnniversaryRatingDate() As Date The anniversary rating date used for premium calculation.
RatingEffectiveDate Property RatingEffectiveDate() As Date The date on which the current rating becomes effective.
IsARDExtended Property IsARDExtended() As Boolean Indicates whether the anniversary rating date has been extended.
IsREDExtended Property IsREDExtended() As Boolean Indicates whether the rating effective date has been extended.
EffectiveDate Property EffectiveDate() As Date The effective date of the period.
ExpirationDate Property ExpirationDate() As Date The expiration date of the period.
RateTierCode Property RateTierCode() As String The rate tier code applicable to the period.
MarketType Property MarketType() As Enums.MarketTypes The market type (assigned risk or voluntary) applicable to the period, per BR-POL-003.
GetHashCode Function GetHashCode() As Integer Returns a hash code for the implementing instance; typically implemented via PeriodRatingInfoExtensions.BaseGetHashCode.

Behavioral notes

  • Source declaration: Business\SAIF.Business.Policy\iPeriodRatingInfo.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\iPeriodRatingInfo.vb