---
title: SAIF.Business.Tasks.Claim architecture
summary: Architectural responsibilities, boundaries, and interaction patterns.
status: draft
owner: SAIF
last_reviewed: 2026-07-28
library: SAIF.Business.Tasks.Claim
reference_type: package
---

# SAIF.Business.Tasks.Claim architecture

SAIF.Business.Tasks.Claim extends the shared BOF task framework with claim-specific task entities, Coverage B variants, batch task generation, and claim-enrichment logic that overlays claim metadata onto inherited task persistence.

## Responsibilities
- Specialize the shared task framework for claim and Coverage B task records.
- Apply claim-specific validation rules, constants, and task category defaults during save operations.
- Enrich claim tasks with additional claim metadata through `PK82284_CLAIM_TASK.SELECT_ADDITIONAL_FIELDS`.
- Expose a generator object that creates multiple claim tasks from a single orchestration boundary.

## Component boundaries
- **Task specializations:** `clsClaimTask` and `clsCoverageBTask` extend the shared task base types with claim-specific fields and rules.
- **Task collections:** `clsClaimTaskCollection`, `clsCoverageBTaskCollection`, and `clsMyTaskCollection` reuse shared collection behavior for different retrieval scopes.
- **Task generation:** `clsClaimTaskGenerator` owns batch task creation and priority assignment rather than the underlying task entities.
- **Reference data:** `clsLegacyTaskCode` and its collection provide lookup access to the `LEGACY_TASK_CODE` table.

## Interaction model
Task retrieval and persistence are mostly inherited from `SAIF.BOF.Business.Tasks`, while this library adds claim-specific validation and calls `PK82284_CLAIM_TASK.SELECT_ADDITIONAL_FIELDS` to populate claim metadata that the base task model does not supply on its own.

## Architecture diagram
The following diagram shows the high-level component interactions.

```mermaid
flowchart TD
    A[Task-driven claim workflow] --> B[Claim task and Coverage B task objects]
    A --> C[Task generator]
    B --> D[Shared BOF task framework]
    B --> E[BOF data portal and criteria]
    C --> B
    E --> F[PK82284_CLAIM_TASK]
    E --> G[LEGACY_TASK_CODE]
    B --> H[Claim view objects]
```

## Sequence diagram
The following diagram shows the primary request and persistence sequence.

```mermaid
sequenceDiagram
    participant Client
    participant Tasks as clsClaimTaskCollection
    participant Task as clsClaimTask
    participant Proc as PK82284_CLAIM_TASK
    participant Generator as clsClaimTaskGenerator
    Client->>Tasks: Retrieve claim tasks
    Tasks-->>Client: Return inherited task list
    Client->>Task: Request additional claim fields
    Task->>Proc: SELECT_ADDITIONAL_FIELDS
    Proc-->>Task: Claim metadata and flags
    Client->>Generator: Create batch claim tasks
    Generator->>Task: Instantiate and validate task objects
    Task-->>Client: Persistable claim tasks
```

## Inherited framework context (from Legends CLI)
- `clsBusinessBase` and `clsBusinessCollectionBase` still underpin the generator and legacy-code objects, while the library's task entities inherit their primary CRUD behavior from the broader BOF task framework.* Source: cached Legends CLI results for `saif-framework-core` (`library` docs; api/business-rules/operations-processes/dependencies queries for `clsBusinessBase` and `clsBusinessCollectionBase`).
- `IBusinessCriteria` and `IDataPortalInfo` explain the persistence seam that remains in this library: criteria classes expose retrieval contracts and the data portal routes lookup or enrichment requests to Oracle.* Source: cached Legends CLI results for `saif-framework-core` (`library` docs; api/operations-processes/dependencies queries for `IBusinessCriteria` and `IDataPortalInfo`).
- `clsRuleArgs`, `clsSmartDate`, and `clsSmartString` are inherited framework types used to surface validation metadata and smart-value behavior rather than domain-specific claim-task workflows.* Source: cached Legends CLI results for `saif-framework-core` (`library` docs; api/business-rules/dependencies queries for the named types).

## Design constraints
- Core task CRUD semantics are inherited from `SAIF.BOF.Business.Tasks`, so claim-task changes must respect that upstream lifecycle.
- Additional claim metadata is dependent on the `PK82284_CLAIM_TASK.SELECT_ADDITIONAL_FIELDS` package contract.
- Validation messages and rule names are embedded in BOF rule registrations and therefore are tightly coupled to the task object model.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [Procedures](procedures/index.md)
- [API reference](api/index.md)

> **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.Tasks.Claim\clsClaimTask.vb`
- `Business\SAIF.Business.Tasks.Claim\clsClaimTaskCollection.vb`
- `Business\SAIF.Business.Tasks.Claim\clsClaimTaskGenerator.vb`
- `Business\SAIF.Business.Tasks.Claim\clsCoverageBTask.vb`
- `Business\SAIF.Business.Tasks.Claim\clsCoverageBTaskCollection.vb`
- `Business\SAIF.Business.Tasks.Claim\clsLegacyTaskCode.vb`
- `Business\SAIF.Business.Tasks.Claim\clsLegacyTaskCodeCollection.vb`
- `Business\SAIF.Business.Tasks.Claim\clsMyTaskCollection.vb`
- `Business\SAIF.Business.Tasks.Claim\packages.config`
- `Business\SAIF.Business.Tasks.Claim\SAIF.BOF.Business.Tasks.Claim.nuspec`
