---
title: ClassRateExtensions
summary: API reference for ClassRateExtensions.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Rating
reference_type: package
---
# ClassRateExtensions
Computes base and adjusted class rates by composing applicable factors. The module is the library's rate-composition engine for base and adjusted class rates.
## Purpose
- Computes base and adjusted class rates by composing applicable factors.
- The module is the library's rate-composition engine for base and adjusted class rates.
## Context
- Namespace: `SAIF.Business.Policy.Rating`
- Assembly/package: `SAIF.Business.Policy.Rating`
## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| AdjustedRate | `Public Function AdjustedRate(ByVal Target As iAdjustedRateProvider, ByVal inRateTierFactor As clsRateTierFactor, ByVal inUSLHWFactor As clsUSLHWCompFactor, ByVal AccidentLimitFactors As IEnumerable(Of iAdjustedRateFactor), ByVal OtherFactors As IEnumerable(Of iAdjustedRateFactor)) As Decimal` | Adjusted class rate after multiplying `BaseRate` by each applicable non-null other factor and rounding to 6 decimal places. |
| BaseRate | `Public Function BaseRate(ByVal Target As iAdjustedRateProvider, ByVal inRateTierFactor As clsRateTierFactor, ByVal inUSLHWFactor As clsUSLHWCompFactor, ByVal AccidentLimitFactors As IEnumerable(Of iAdjustedRateFactor)) As Decimal` | Base class rate computed from the provider pure rate, the rate-tier factor, the USL&HW factor, and all applicable accident-limit factors, then rounded to four decimals. |
## Behavioral notes
- Adjusted-rate calculation first derives the base rate, then multiplies only the non-`Nothing` other factors before rounding.
## Constraints and usage notes
- Callers should provide the core factor objects and factor sequences in the same effective context, because the module composes them exactly as supplied.
## Sources
- `Business\SAIF.Business.Policy.Rating\ClassRateExtensions.vb`
