---
title: SAIF.Business.Provider database tables
summary: Database tables used by SAIF.Business.Provider with relationships and usage context.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business.Provider
reference_type: package
---

# SAIF.Business.Provider database tables

This page catalogs Oracle tables accessed by `SAIF.Business.Provider`.

## Table catalog

| Table | Database | Schema/Link | CRUD | Purpose | Primary business object |
| --- | --- | --- | --- | --- | --- |
| [CBP_NOTE](#cbp_note) | Oracle | [unqualified]** | CDRU | Stores notes attached to provider data. | `clsNote` |
| [CBP_NOTE_TYPE_CODE](#cbp_note_type_code) | Oracle | [unqualified]** | R | Stores data used by clsNote. | `clsNote` |
| [CBP_SERVICE_CODE](#cbp_service_code) | Oracle | [unqualified]** | R | Stores CBP service code metadata used for service lookup. | `clsCBPService` |
| [CBP_SERVICE_DESCRIPTION](#cbp_service_description) | Oracle | [unqualified]** | R | Stores effective-dated descriptions for CBP service codes. | `clsCBPService` |
| [CBP_SERVICE_TYPE_CODE](#cbp_service_type_code) | Oracle | [unqualified]** | R | Stores data used by clsCBPServiceType. | `clsCBPServiceType` |
| [MCO_PLAN](#mco_plan) | Oracle | [unqualified]** | CDRU | Stores managed care organization plan definitions. | `clsMCOPlan` |
| [MCO_PROVIDER](#mco_provider) | Oracle | [unqualified]** | CDRU | Associates provider locations with managed care organization plans. | `clsProviderMCOMembership` |
| [PROVIDER](#provider) | Oracle | [unqualified]** | CDRU | Stores the root provider record and the provider-level primary tax identifier. | `clsProvider` |
| [PROVIDER_ADDRESS](#provider_address) | Oracle | [unqualified]** | CDRU | Stores effective-dated provider location addresses. | `clsProviderAddress` |
| [PROVIDER_ADDRESS_CODE](#provider_address_code) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderAddressCode. | `clsProviderAddressCode` |
| [PROVIDER_CONTACT](#provider_contact) | Oracle | [unqualified]** | CDRU | Stores provider location contacts and communication details. | `clsProviderContact` |
| [PROVIDER_CONTACT_CODE](#provider_contact_code) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderContactCode. | `clsProviderContactCode` |
| [PROVIDER_DCBS_COST_CHARGE](#provider_dcbs_cost_charge) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderDcbsCostCharge. | `clsProviderDcbsCostCharge` |
| [PROVIDER_IDENTITY](#provider_identity) | Oracle | [unqualified]** | CDRU | Stores external identifier values such as National Provider IDs. | `clsProviderIdentity` |
| [PROVIDER_IDENTITY_CODE](#provider_identity_code) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderIdentityCode. | `clsProviderIdentityCode` |
| [PROVIDER_INELIG_PERIOD](#provider_inelig_period) | Oracle | [unqualified]** | CDRU | Stores effective-dated provider ineligibility periods. | `clsProviderIneligibilityPeriod` |
| [PROVIDER_INELIG_REASON_CD](#provider_inelig_reason_cd) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderIneligibilityReasonCode. | `clsProviderIneligibilityReasonCode` |
| [PROVIDER_LOCATION](#provider_location) | Oracle | [unqualified]** | CDRU | Stores provider location, name, approval, communication, and status fields. | `clsProviderLocation` |
| [PROVIDER_RELATIONSHIP](#provider_relationship) | Oracle | [unqualified]** | CDRU | Stores provider-to-provider relationship links and effective dates. | `clsProviderRelationship` |
| [PROVIDER_RELATIONSHIP_CODE](#provider_relationship_code) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderRelationshipCode. | `clsProviderRelationshipCode` |
| [PROVIDER_SERVICE](#provider_service) | Oracle | [unqualified]** | CDRU | Stores service assignments for provider locations. | `clsProviderService` |
| [PROVIDER_SERVICE_CODE](#provider_service_code) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderServiceCode. | `clsProviderServiceCode` |
| [PROVIDER_SERVICE_CONTRACT](#provider_service_contract) | Oracle | [unqualified]** | CDU | Stores provider service contract rates and effective dates. | `clsProviderServiceContract` |
| [PROVIDER_SERVICE_TYPE](#provider_service_type) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderServiceType. | `clsProviderServiceType` |
| [PROVIDER_TAX_ID](#provider_tax_id) | Oracle | [unqualified]** | CDRU | Stores provider tax IDs, registered names, and TIN mailing-address information. | `clsProviderTaxID` |
| [PROVIDER_TYPE_CODE](#provider_type_code) | Oracle | [unqualified]** | CDRU | Stores data used by clsProviderType, clsProviderTypeCode, clsProviderTypeCollection, clsProviderUtility. | `clsProviderType` |

## CBP_NOTE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores notes attached to provider data. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | CBP_NOTE_SEQ_NUM, NOTE_TYPE_CODE, PROVIDER_SEQ_NUM, PROVIDER_LOCATION_SEQ_NUM, UPDATE_NUM |
| **Sequence** | N/A |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsNote` |

### Operations referencing this table
- [Maintain provider notes](operations/maintain-provider-notes.md)

### Business rules referencing this table
- [BR-015: Notes require both type and text](business-rules.md#br-015-notes-require-both-type-and-text)

### SQL referencing this table
- [SQL-017: Insert Note](sql/SQL-017-insert-note.md)
- [SQL-041: Retrieve Note](sql/SQL-041-retrieve-note.md)
- [SQL-065: Update Note](sql/SQL-065-update-note.md)
- [SQL-087: Delete Note](sql/SQL-087-delete-note.md)

---

## CBP_NOTE_TYPE_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsNote. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Read |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsNote` |

### SQL referencing this table
- [SQL-041: Retrieve Note](sql/SQL-041-retrieve-note.md)

---

## CBP_SERVICE_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores CBP service code metadata used for service lookup. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Read |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsCBPService` |

### SQL referencing this table
- [SQL-038: Retrieve C B P Service](sql/SQL-038-retrieve-c-b-p-service.md)

---

## CBP_SERVICE_DESCRIPTION

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores effective-dated descriptions for CBP service codes. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Read |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsCBPService` |

### SQL referencing this table
- [SQL-038: Retrieve C B P Service](sql/SQL-038-retrieve-c-b-p-service.md)

---

## CBP_SERVICE_TYPE_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsCBPServiceType. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Read |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsCBPServiceType` |

### SQL referencing this table
- [SQL-039: Retrieve C B P Service Type](sql/SQL-039-retrieve-c-b-p-service-type.md)

---

## MCO_PLAN

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores managed care organization plan definitions. |
| **Access pattern** | BOF criteria SQL and application-layer direct SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | MCO_PLAN_ID, MCO_CERT_NUM, EFF_DATE, EXP_DATE, UPDATE_NUM |
| **Sequence** | MCO_PLAN_ID_NEXTVAL |
| **Related tables** | None identified |
| **Business objects** | `clsMCOPlan`, `clsProviderUtility` |

### SQL referencing this table
- [SQL-016: Insert M C O Plan](sql/SQL-016-insert-m-c-o-plan.md)
- [SQL-040: Retrieve M C O Plan](sql/SQL-040-retrieve-m-c-o-plan.md)
- [SQL-064: Update M C O Plan](sql/SQL-064-update-m-c-o-plan.md)
- [SQL-086: Delete M C O Plan](sql/SQL-086-delete-m-c-o-plan.md)

---

## MCO_PROVIDER

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Associates provider locations with managed care organization plans. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_LOCATION_SEQ_NUM, MCO_PLAN_ID, EFF_DATE, EXP_DATE, UPDATE_NUM |
| **Sequence** | N/A |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderMCOMembership` |

### Operations referencing this table
- [Search providers](operations/search-providers.md)

### SQL referencing this table
- [SQL-029: Insert Provider M C O Membership](sql/SQL-029-insert-provider-m-c-o-membership.md)
- [SQL-054: Retrieve Provider M C O Membership](sql/SQL-054-retrieve-provider-m-c-o-membership.md)
- [SQL-077: Update Provider M C O Membership](sql/SQL-077-update-provider-m-c-o-membership.md)
- [SQL-099: Delete Provider M C O Membership](sql/SQL-099-delete-provider-m-c-o-membership.md)

---

## PROVIDER

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores the root provider record and the provider-level primary tax identifier. |
| **Access pattern** | BOF criteria SQL and application-layer direct SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_SEQ_NUM, PRIMARY_TAX_ID, UPDATE_NUM |
| **Sequence** | PROVIDER_SEQ_NUM_NEXTVAL |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProvider`, `clsProviderUtility` |

### Operations referencing this table
- [Retrieve provider aggregate](operations/retrieve-provider-aggregate.md)
- [Maintain provider tax ID and sync TIN contact](operations/maintain-provider-tax-id.md)

### Business rules referencing this table
- [BR-012: Only one primary TIN is allowed per provider](business-rules.md#br-012-only-one-primary-tin-is-allowed-per-provider)

### SQL referencing this table
- [SQL-018: Insert Provider](sql/SQL-018-insert-provider.md)
- [SQL-042: Retrieve Provider](sql/SQL-042-retrieve-provider.md)
- [SQL-066: Update Provider](sql/SQL-066-update-provider.md)
- [SQL-088: Delete Provider](sql/SQL-088-delete-provider.md)

---

## PROVIDER_ADDRESS

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores effective-dated provider location addresses. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_ADDRESS_SEQ_NUM, PROVIDER_LOCATION_SEQ_NUM, PROVIDER_ADDRESS_CODE, EFF_DATE, EXP_DATE, UPDATE_NUM |
| **Sequence** | PROVIDER_ADDRESS_SEQ_NUM_NEXTVAL |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderAddress` |

### Operations referencing this table
- [Search providers](operations/search-providers.md)
- [Maintain provider address](operations/maintain-provider-address.md)

### Business rules referencing this table
- [BR-001: Search requires at least one criterion](business-rules.md#br-001-search-requires-at-least-one-criterion)
- [BR-002: Search ZIP code must be numeric](business-rules.md#br-002-search-zip-code-must-be-numeric)
- [BR-007: Address effective periods must not overlap](business-rules.md#br-007-address-effective-periods-must-not-overlap)
- [BR-008: Domestic addresses require city, state, and ZIP data](business-rules.md#br-008-domestic-addresses-require-city-state-and-zip-data)

### SQL referencing this table
- [SQL-019: Insert Provider Address](sql/SQL-019-insert-provider-address.md)
- [SQL-043: Retrieve Provider Address](sql/SQL-043-retrieve-provider-address.md)
- [SQL-067: Update Provider Address](sql/SQL-067-update-provider-address.md)
- [SQL-089: Delete Provider Address](sql/SQL-089-delete-provider-address.md)

---

## PROVIDER_ADDRESS_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderAddressCode. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderAddressCode` |

### SQL referencing this table
- [SQL-020: Insert Provider Address Code](sql/SQL-020-insert-provider-address-code.md)
- [SQL-044: Retrieve Provider Address Code](sql/SQL-044-retrieve-provider-address-code.md)
- [SQL-068: Update Provider Address Code](sql/SQL-068-update-provider-address-code.md)
- [SQL-090: Delete Provider Address Code](sql/SQL-090-delete-provider-address-code.md)

---

## PROVIDER_CONTACT

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores provider location contacts and communication details. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_CONTACT_SEQ_NUM, PROVIDER_LOCATION_SEQ_NUM, PROVIDER_CONTACT_CODE, UPDATE_NUM |
| **Sequence** | PROVIDER_CONTACT_SEQ_NUM_NEXTVAL |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderContact` |

### Business rules referencing this table
- [BR-009: Contacts require a type and a communication path](business-rules.md#br-009-contacts-require-a-type-and-a-communication-path)

### SQL referencing this table
- [SQL-021: Insert Provider Contact](sql/SQL-021-insert-provider-contact.md)
- [SQL-045: Retrieve Provider Contact](sql/SQL-045-retrieve-provider-contact.md)
- [SQL-069: Update Provider Contact](sql/SQL-069-update-provider-contact.md)
- [SQL-091: Delete Provider Contact](sql/SQL-091-delete-provider-contact.md)

---

## PROVIDER_CONTACT_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderContactCode. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderContactCode` |

### SQL referencing this table
- [SQL-022: Insert Provider Contact Code](sql/SQL-022-insert-provider-contact-code.md)
- [SQL-046: Retrieve Provider Contact Code](sql/SQL-046-retrieve-provider-contact-code.md)
- [SQL-070: Update Provider Contact Code](sql/SQL-070-update-provider-contact-code.md)
- [SQL-092: Delete Provider Contact Code](sql/SQL-092-delete-provider-contact-code.md)

---

## PROVIDER_DCBS_COST_CHARGE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderDcbsCostCharge. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderDcbsCostCharge` |

### SQL referencing this table
- [SQL-023: Insert Provider Dcbs Cost Charge](sql/SQL-023-insert-provider-dcbs-cost-charge.md)
- [SQL-047: Retrieve Provider Dcbs Cost Charge](sql/SQL-047-retrieve-provider-dcbs-cost-charge.md)
- [SQL-071: Update Provider Dcbs Cost Charge](sql/SQL-071-update-provider-dcbs-cost-charge.md)
- [SQL-093: Delete Provider Dcbs Cost Charge](sql/SQL-093-delete-provider-dcbs-cost-charge.md)

---

## PROVIDER_IDENTITY

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores external identifier values such as National Provider IDs. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_IDENTITY_SEQ_NUM, PROVIDER_LOCATION_SEQ_NUM, PROVIDER_IDENTITY_CODE, IDENTITY_VALUE, UPDATE_NUM |
| **Sequence** | N/A |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderIdentity` |

### Operations referencing this table
- [Search providers](operations/search-providers.md)

### Business rules referencing this table
- [BR-010: National Provider ID values must be 10 digits](business-rules.md#br-010-national-provider-id-values-must-be-10-digits)

### SQL referencing this table
- [SQL-024: Insert Provider Identity](sql/SQL-024-insert-provider-identity.md)
- [SQL-048: Retrieve Provider Identity](sql/SQL-048-retrieve-provider-identity.md)
- [SQL-072: Update Provider Identity](sql/SQL-072-update-provider-identity.md)
- [SQL-094: Delete Provider Identity](sql/SQL-094-delete-provider-identity.md)

---

## PROVIDER_IDENTITY_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderIdentityCode. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderIdentityCode` |

### SQL referencing this table
- [SQL-025: Insert Provider Identity Code](sql/SQL-025-insert-provider-identity-code.md)
- [SQL-049: Retrieve Provider Identity Code](sql/SQL-049-retrieve-provider-identity-code.md)
- [SQL-073: Update Provider Identity Code](sql/SQL-073-update-provider-identity-code.md)
- [SQL-095: Delete Provider Identity Code](sql/SQL-095-delete-provider-identity-code.md)

---

## PROVIDER_INELIG_PERIOD

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores effective-dated provider ineligibility periods. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_INELIG_PERIOD_SEQ_NUM, PROVIDER_LOCATION_SEQ_NUM, PROVIDER_INELIG_REASON_CODE, EFF_DATE, EXP_DATE |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderIneligibilityPeriod`, `clsProviderIneligibilityPeriodCollection` |

### SQL referencing this table
- [SQL-026: Insert Provider Ineligibility Period](sql/SQL-026-insert-provider-ineligibility-period.md)
- [SQL-050: Retrieve Provider Ineligibility Period](sql/SQL-050-retrieve-provider-ineligibility-period.md)
- [SQL-051: Retrieve Provider Ineligibility Period Collection](sql/SQL-051-retrieve-provider-ineligibility-period-collection.md)
- [SQL-074: Update Provider Ineligibility Period](sql/SQL-074-update-provider-ineligibility-period.md)
- [SQL-096: Delete Provider Ineligibility Period](sql/SQL-096-delete-provider-ineligibility-period.md)

---

## PROVIDER_INELIG_REASON_CD

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderIneligibilityReasonCode. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderIneligibilityReasonCode` |

### SQL referencing this table
- [SQL-027: Insert Provider Ineligibility Reason Code](sql/SQL-027-insert-provider-ineligibility-reason-code.md)
- [SQL-052: Retrieve Provider Ineligibility Reason Code](sql/SQL-052-retrieve-provider-ineligibility-reason-code.md)
- [SQL-075: Update Provider Ineligibility Reason Code](sql/SQL-075-update-provider-ineligibility-reason-code.md)
- [SQL-097: Delete Provider Ineligibility Reason Code](sql/SQL-097-delete-provider-ineligibility-reason-code.md)

---

## PROVIDER_LOCATION

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores provider location, name, approval, communication, and status fields. |
| **Access pattern** | BOF criteria SQL and application-layer direct SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_LOCATION_SEQ_NUM, PROVIDER_SEQ_NUM, PROVIDER_TYPE_CODE, PRIMARY_LOCATION_FLAG, UPDATE_NUM |
| **Sequence** | PROVIDER_LOCATION_SEQ_NUM_NEXTVAL |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderLocation`, `clsProviderRelationship`, `clsProviderUtility` |

### Operations referencing this table
- [Search providers](operations/search-providers.md)
- [Maintain provider location](operations/maintain-provider-location.md)
- [Maintain provider relationship](operations/maintain-provider-relationship.md)

### Business rules referencing this table
- [BR-001: Search requires at least one criterion](business-rules.md#br-001-search-requires-at-least-one-criterion)
- [BR-003: Only one primary location is allowed](business-rules.md#br-003-only-one-primary-location-is-allowed)
- [BR-004: Provider type is required for a location](business-rules.md#br-004-provider-type-is-required-for-a-location)
- [BR-005: Business locations require a business name](business-rules.md#br-005-business-locations-require-a-business-name)
- [BR-006: Individual locations require a last name](business-rules.md#br-006-individual-locations-require-a-last-name)
- [BR-013: Relationship participants must exist and be distinct](business-rules.md#br-013-relationship-participants-must-exist-and-be-distinct)

### SQL referencing this table
- [SQL-028: Insert Provider Location](sql/SQL-028-insert-provider-location.md)
- [SQL-053: Retrieve Provider Location](sql/SQL-053-retrieve-provider-location.md)
- [SQL-055: Retrieve Provider Relationship](sql/SQL-055-retrieve-provider-relationship.md)
- [SQL-076: Update Provider Location](sql/SQL-076-update-provider-location.md)
- [SQL-098: Delete Provider Location](sql/SQL-098-delete-provider-location.md)

---

## PROVIDER_RELATIONSHIP

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores provider-to-provider relationship links and effective dates. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | PROVIDER_LOCATION_SEQ_NUM, PARENT_PROVIDER_LOC_SEQ_NUM, PROVIDER_RELATIONSHIP_CODE, EFF_DATE, EXP_DATE, UPDATE_NUM |
| **Sequence** | N/A |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderRelationship` |

### Operations referencing this table
- [Maintain provider relationship](operations/maintain-provider-relationship.md)

### Business rules referencing this table
- [BR-013: Relationship participants must exist and be distinct](business-rules.md#br-013-relationship-participants-must-exist-and-be-distinct)
- [BR-014: Relationship dates must be valid and non-overlapping](business-rules.md#br-014-relationship-dates-must-be-valid-and-non-overlapping)

### SQL referencing this table
- [SQL-030: Insert Provider Relationship](sql/SQL-030-insert-provider-relationship.md)
- [SQL-055: Retrieve Provider Relationship](sql/SQL-055-retrieve-provider-relationship.md)
- [SQL-078: Update Provider Relationship](sql/SQL-078-update-provider-relationship.md)
- [SQL-100: Delete Provider Relationship](sql/SQL-100-delete-provider-relationship.md)

---

## PROVIDER_RELATIONSHIP_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderRelationshipCode. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderRelationshipCode` |

### SQL referencing this table
- [SQL-031: Insert Provider Relationship Code](sql/SQL-031-insert-provider-relationship-code.md)
- [SQL-056: Retrieve Provider Relationship Code](sql/SQL-056-retrieve-provider-relationship-code.md)
- [SQL-079: Update Provider Relationship Code](sql/SQL-079-update-provider-relationship-code.md)
- [SQL-101: Delete Provider Relationship Code](sql/SQL-101-delete-provider-relationship-code.md)

---

## PROVIDER_SERVICE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores service assignments for provider locations. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderService` |

### Operations referencing this table
- [Search providers](operations/search-providers.md)

### SQL referencing this table
- [SQL-032: Insert Provider Service](sql/SQL-032-insert-provider-service.md)
- [SQL-057: Retrieve Provider Service](sql/SQL-057-retrieve-provider-service.md)
- [SQL-080: Update Provider Service](sql/SQL-080-update-provider-service.md)
- [SQL-102: Delete Provider Service](sql/SQL-102-delete-provider-service.md)

---

## PROVIDER_SERVICE_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderServiceCode. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderServiceCode` |

### SQL referencing this table
- [SQL-033: Insert Provider Service Code](sql/SQL-033-insert-provider-service-code.md)
- [SQL-058: Retrieve Provider Service Code](sql/SQL-058-retrieve-provider-service-code.md)
- [SQL-081: Update Provider Service Code](sql/SQL-081-update-provider-service-code.md)
- [SQL-103: Delete Provider Service Code](sql/SQL-103-delete-provider-service-code.md)

---

## PROVIDER_SERVICE_CONTRACT

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores provider service contract rates and effective dates. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderServiceContract` |

### SQL referencing this table
- [SQL-034: Insert Provider Service Contract](sql/SQL-034-insert-provider-service-contract.md)
- [SQL-082: Update Provider Service Contract](sql/SQL-082-update-provider-service-contract.md)
- [SQL-104: Delete Provider Service Contract](sql/SQL-104-delete-provider-service-contract.md)

---

## PROVIDER_SERVICE_TYPE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderServiceType. |
| **Access pattern** | BOF criteria SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | Primary key and foreign-key columns surfaced by the owning business object criteria. |
| **Sequence** | N/A |
| **Related tables** | None identified |
| **Business objects** | `clsProviderServiceType` |

### SQL referencing this table
- [SQL-035: Insert Provider Service Type](sql/SQL-035-insert-provider-service-type.md)
- [SQL-059: Retrieve Provider Service Type](sql/SQL-059-retrieve-provider-service-type.md)
- [SQL-083: Update Provider Service Type](sql/SQL-083-update-provider-service-type.md)
- [SQL-105: Delete Provider Service Type](sql/SQL-105-delete-provider-service-type.md)

---

## PROVIDER_TAX_ID

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores provider tax IDs, registered names, and TIN mailing-address information. |
| **Access pattern** | BOF criteria SQL and application-layer direct SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | TAX_ID, PROVIDER_SEQ_NUM, PRIMARY_TAX_ID_FLAG, EFF_DATE, EXP_DATE, UPDATE_NUM |
| **Sequence** | N/A |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderTaxID`, `clsProviderUtility` |

### Operations referencing this table
- [Search providers](operations/search-providers.md)
- [Maintain provider tax ID and sync TIN contact](operations/maintain-provider-tax-id.md)

### Business rules referencing this table
- [BR-011: TIN values must be nine numeric digits and unique](business-rules.md#br-011-tin-values-must-be-nine-numeric-digits-and-unique)
- [BR-012: Only one primary TIN is allowed per provider](business-rules.md#br-012-only-one-primary-tin-is-allowed-per-provider)

### SQL referencing this table
- [SQL-036: Insert Provider Tax I D](sql/SQL-036-insert-provider-tax-i-d.md)
- [SQL-060: Retrieve Provider Tax I D](sql/SQL-060-retrieve-provider-tax-i-d.md)
- [SQL-084: Update Provider Tax I D](sql/SQL-084-update-provider-tax-i-d.md)
- [SQL-106: Delete Provider Tax I D](sql/SQL-106-delete-provider-tax-i-d.md)

---

## PROVIDER_TYPE_CODE

| Field | Value |
| --- | --- |
| **Database** | Oracle |
| **Schema/Link** | [unqualified]** |
| **Purpose** | Stores data used by clsProviderType, clsProviderTypeCode, clsProviderTypeCollection, clsProviderUtility. |
| **Access pattern** | BOF criteria SQL and application-layer direct SQL |
| **CRUD operations** | Create, Read, Update, Delete |
| **Key columns used** | CODE, CODE_DESCR, UPDATE_NUM |
| **Sequence** | N/A |
| **Related tables** | See operations, rules, and SQL sections below. |
| **Business objects** | `clsProviderType`, `clsProviderTypeCode`, `clsProviderTypeCollection`, `clsProviderUtility` |

### Operations referencing this table
- [Search providers](operations/search-providers.md)

### Business rules referencing this table
- [BR-001: Search requires at least one criterion](business-rules.md#br-001-search-requires-at-least-one-criterion)
- [BR-004: Provider type is required for a location](business-rules.md#br-004-provider-type-is-required-for-a-location)

### SQL referencing this table
- [SQL-037: Insert Provider Type Code](sql/SQL-037-insert-provider-type-code.md)
- [SQL-061: Retrieve Provider Type](sql/SQL-061-retrieve-provider-type.md)
- [SQL-062: Retrieve Provider Type Code](sql/SQL-062-retrieve-provider-type-code.md)
- [SQL-063: Retrieve Provider Type Collection](sql/SQL-063-retrieve-provider-type-collection.md)
- [SQL-085: Update Provider Type Code](sql/SQL-085-update-provider-type-code.md)
- [SQL-107: Delete Provider Type Code](sql/SQL-107-delete-provider-type-code.md)

---

## Table relationship diagram

The following diagram shows the primary table relationships surfaced by provider-domain CRUD and lookup SQL.

```mermaid
erDiagram
    PROVIDER ||--o{ PROVIDER_LOCATION : "has"
    PROVIDER ||--o{ PROVIDER_TAX_ID : "owns"
    PROVIDER_LOCATION ||--o{ PROVIDER_ADDRESS : "uses"
    PROVIDER_LOCATION ||--o{ PROVIDER_CONTACT : "uses"
    PROVIDER_LOCATION ||--o{ PROVIDER_IDENTITY : "uses"
    PROVIDER_LOCATION ||--o{ PROVIDER_SERVICE : "offers"
    PROVIDER_LOCATION ||--o{ PROVIDER_RELATIONSHIP : "links"
    PROVIDER_LOCATION ||--o{ MCO_PROVIDER : "enrolls"
    MCO_PLAN ||--o{ MCO_PROVIDER : "defines"
    PROVIDER_RELATIONSHIP }o--|| PROVIDER_RELATIONSHIP_CODE : "typed by"
    PROVIDER_ADDRESS }o--|| PROVIDER_ADDRESS_CODE : "typed by"
    PROVIDER_CONTACT }o--|| PROVIDER_CONTACT_CODE : "typed by"
    PROVIDER_IDENTITY }o--|| PROVIDER_IDENTITY_CODE : "typed by"
    PROVIDER_INELIG_PERIOD }o--|| PROVIDER_INELIG_REASON_CD : "reason"
```

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)
- [Configuration](configuration.md)

> **Note:** Statements marked with `**` could not be confirmed; treat as unknown until verified.

## Sources
- `Business\SAIF.Business.Provider\clsNote.vb`
- `Business\SAIF.Business.Provider\clsNote.vb`
- `Business\SAIF.Business.Provider\clsCBPService.vb`
- `Business\SAIF.Business.Provider\clsCBPService.vb`
- `Business\SAIF.Business.Provider\clsCBPServiceType.vb`
- `Business\SAIF.Business.Provider\clsMCOPlan.vb`
- `Business\SAIF.Business.Provider\clsProviderUtility.vb`
- `Business\SAIF.Business.Provider\clsProviderMCOMembership.vb`
- `Business\SAIF.Business.Provider\clsProvider.vb`
- `Business\SAIF.Business.Provider\clsProviderUtility.vb`
- `Business\SAIF.Business.Provider\clsProviderAddress.vb`
- `Business\SAIF.Business.Provider\clsProviderAddressCode.vb`
- `Business\SAIF.Business.Provider\clsProviderContact.vb`
- `Business\SAIF.Business.Provider\clsProviderContactCode.vb`
- `Business\SAIF.Business.Provider\clsProviderDcbsCostCharge.vb`
- `Business\SAIF.Business.Provider\clsProviderIdentity.vb`
- `Business\SAIF.Business.Provider\clsProviderIdentityCode.vb`
- `Business\SAIF.Business.Provider\clsProviderIneligibilityPeriod.vb`
- `Business\SAIF.Business.Provider\clsProviderIneligibilityPeriodCollection.vb`
- `Business\SAIF.Business.Provider\clsProviderIneligibilityReasonCode.vb`
- `Business\SAIF.Business.Provider\clsProviderLocation.vb`
- `Business\SAIF.Business.Provider\clsProviderRelationship.vb`
- `Business\SAIF.Business.Provider\clsProviderUtility.vb`
- `Business\SAIF.Business.Provider\clsProviderRelationship.vb`
- `Business\SAIF.Business.Provider\clsProviderRelationshipCode.vb`
- `Business\SAIF.Business.Provider\clsProviderService.vb`
- `Business\SAIF.Business.Provider\clsProviderServiceCode.vb`
- `Business\SAIF.Business.Provider\clsProviderServiceContract.vb`
- `Business\SAIF.Business.Provider\clsProviderServiceType.vb`
- `Business\SAIF.Business.Provider\clsProviderTaxID.vb`
- `Business\SAIF.Business.Provider\clsProviderUtility.vb`
- `Business\SAIF.Business.Provider\clsProviderType.vb`
- `Business\SAIF.Business.Provider\clsProviderTypeCode.vb`
- `Business\SAIF.Business.Provider\clsProviderTypeCollection.vb`
- `Business\SAIF.Business.Provider\clsProviderUtility.vb`
