# CMS PECOS Provider Ownership ("All Owners", PE-rollup layer)

`medicare_silver.fact_provider_ownership` · Provider identity · status live · 814,242 rows

The CMS PECOS "All Owners" ownership records, unified across six facility types (hospital, hha, hospice, snf, fqhc, rhc). One row per facility↔owner edge: owner identity (individual or org name/DBA/address), percentage ownership, role, association date, and the owner-type flags that drive accountability/PE analysis — PRIVATE EQUITY, REIT, HOLDING COMPANY, INVESTMENT FIRM, CHAIN HOME OFFICE, PARENT COMPANY, TRUST/TRUSTEE, FOR/NON PROFIT, plus an indirect-chain "owned by another org" flag. THE ownership / private-equity-rollup intelligence layer (who really owns each facility).

**Grain.** One row per facility ↔ owner edge (enrollment_id × owner), partitioned by facility_type.

| column | type | meaning |
|---|---|---|
| facility_type | string |  |
| enrollment_id | string |  |
| associate_id | string |  |
| organization_name | string |  |
| owner_associate_id | string |  |
| owner_type | string |  |
| role_code | string |  |
| role_text | string |  |
| association_date | string |  |
| owner_first_name | string |  |
| owner_middle_name | string |  |
| owner_last_name | string |  |
| owner_title | string |  |
| owner_org_name | string |  |
| owner_dba_name | string |  |
| owner_address1 | string |  |
| owner_address2 | string |  |
| owner_city | string |  |
| owner_state | string |  |
| owner_zip | string |  |
| other_type_text | string |  |
| percentage_ownership | double |  |
| created_for_acquisition | boolean |  |
| is_corporation | boolean |  |
| is_llc | boolean |  |
| is_medical_provider | boolean |  |
| is_management_services | boolean |  |
| is_medical_staffing | boolean |  |
| is_holding_company | boolean |  |
| is_investment_firm | boolean |  |
| is_financial_institution | boolean |  |
| is_consulting_firm | boolean |  |
| is_for_profit | boolean |  |
| is_non_profit | boolean |  |
| is_private_equity | boolean |  |
| is_reit | boolean |  |
| is_chain_home_office | boolean |  |
| is_parent_company | boolean |  |
| is_trust_or_trustee | boolean |  |
| is_other_type | boolean |  |
| owned_by_another | boolean |  |
| observed_period | date |  |
| asserted_at | date |  |
| effective_period_start | date |  |
| effective_period_end | date |  |
| cms_vintage_sequence | int |  |
| parse_revision | int |  |
| parser_artifact_hash | string |  |
| source_url | string |  |
| sha256_content_hash | string |  |
| source_id | string |  |
| is_current | boolean |  |
| bronze_object_key | string |  |
| s3_version_id | string |  |
| vintage_tag | string |  |
| drug_source_version_id | string |  |

Tools that read it: resolve_provider

Query it: `query_substrate` with `SELECT ... FROM medicare_silver.fact_provider_ownership WHERE ... LIMIT 100`; read `describe_data_source("medicare_silver.fact_provider_ownership")` first.
