Skip to content

Commit

Permalink
Merge pull request #57 from Alvearie/HIWHC-2613-Add-Commercial,Opt-Pr…
Browse files Browse the repository at this point in the history
…ofessional

Hiwhc 2613 add commercial,opt professional
  • Loading branch information
dmangum2 authored Sep 20, 2021
2 parents b1dc07e + c9fc118 commit a8c4310
Show file tree
Hide file tree
Showing 32 changed files with 913 additions and 276 deletions.
2 changes: 1 addition & 1 deletion data/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
# ╰────────────────────────────────────────────────────────────────────────────────────────────────╯
id: alvearie.fhir.ig
canonical: http://ibm.com/fhir/cdm
version: 1.0.0
version: 2.0.0
name: AlvearieFHIRImplementationGuide
title: Alvearie FHIR Implementation Guide
status: active
Expand Down
67 changes: 46 additions & 21 deletions data/extensions/ClaimExtensions.fsh
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,19 @@ Title: "Capitated Service Indicator"
Description: "Indicator that this service (encounter record) was capitated"
* value[x] only string

Extension: ClaimCategory
Id: claim-category
Title: "Claim Category"
Description: "Standard HIPAA code for the category of the claim status"
* value[x] only CodeableConcept
* valueCodeableConcept from CLAIM-STATUS-CATEGORY (extensible)

Extension: ClaimItemDetailClassification
Id: claim-item-detail-classification
Title: "Claim Item Detail Classification"
Description: "Classification of the information contained in this claim item detail section"
* value[x] only CodeableConcept
* valueCodeableConcept from ClaimItemDetailClassificationValueSet (extensible)

Extension: ClaimSnapshotProviderName
Id: claim-snapshot-provider-name
Expand All @@ -28,10 +36,16 @@ Title: "Claim Snapshot Provider Zip Code"
Description: "Original provider postal code, as reported on the claim"
* value[x] only string

Extension: CompanyCode
Id: company-code
Title: "Company Code"
Description: "Company code of the subscriber as reported on the claim"
* value[x] only CodeableConcept

Extension: CompoundCode
Id: compound-code
Title: "Compound Code"
Description: "Indicator of whether the product is a compound drug or not"
Description: "Customer-specific code for the compound of the drug"
* value[x] only CodeableConcept

Extension: CrossoverIndicator
Expand Down Expand Up @@ -64,20 +78,6 @@ Title: "Fully Insured Indicator"
Description: "Indicator that the claim was for a fully insured plan"
* value[x] only string

Extension: ClaimCategory
Id: claim-category
Title: "Claim Category"
Description: "Standard HIPAA code for the category of the claim status"
* value[x] only CodeableConcept
* valueCodeableConcept from CLAIM-STATUS-CATEGORY (extensible)

Extension: ClaimStatus
Id: claim-status
Title: "Claim Status"
Description: "Standard HIPAA code for the status of an entire claim"
* value[x] only CodeableConcept
* valueCodeableConcept from CLAIM-STATUS (extensible)

Extension: LastClaimIndicator
Id: last-claim-indicator
Title: "Last Claim Indicator"
Expand Down Expand Up @@ -112,10 +112,22 @@ Description: "Indicator that the claim was for a nursing home patient"
Extension:      ProcedureGroup
Id:             procedure-group
Title:          "Procedure Group"
Description:    "Groups assigned to categorize related procedures"
Description:    "Code assigned to categorize related procedures"
* value[x] only CodeableConcept 
* valueCodeableConcept from WHPayerProcedureGroupValueSet (extensible)

Extension: ParticipatingPlan
Id: participating-plan
Title: "Participating Plan"
Description: "Customer-specific code for the participating plan"
* value[x] only CodeableConcept

Extension: PriorAuthorizationIndicator
Id: prior-authorization-indicator
Title: "Prior Authorization Indicator"
Description: "Indicator of prior authorization for the claim"
* value[x] only string

Extension: ReferralIndicator
Id: referral-indicator
Title: "Referral Indicator"
Expand All @@ -128,14 +140,27 @@ Title: "RX Count"
Description: "Count of prescriptions for the drug claim"
* value[x] only unsignedInt

Extension: SubmissionType
Id: submission-type
Title: "Submission Type"
Description: "Customer-specific code for the type of electronic submission"
* value[x] only CodeableConcept
Extension: ServiceBillDaysCount
Id: service-bill-days-count
Title: "Service Bill Days Count"
Description: "Number of days between the date of service and the date the claim was received"
* value[x] only unsignedInt

Extension: WhPayerPcpResponsibilityIndicator
Id: wh-payer-pcp-responsibility-indicator
Title: "Health Data Connect PCP Responsibility Indicator"
Description: "Indicator signifying that the primary care physician is the physician considered either responsible or accountable for this claim"
* value[x] only string

// Extensions that are also used in ClaimResponse
Extension: ClaimStatus
Id: claim-status
Title: "Claim Status"
Description: "Code for the status of a claim"
* value[x] only CodeableConcept

Extension: SubmissionType
Id: submission-type
Title: "Submission Type"
Description: "Customer-specific code for the type of electronic submission"
* value[x] only CodeableConcept
58 changes: 49 additions & 9 deletions data/extensions/ClaimResponseExtensions.fsh
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,36 @@ Title: "Claim Received Date"
Description: "Date the claim was received"
* value[x] only date

Extension: ClaimStatus
Id: claim-status
Title: "Claim Status"
Description: "Custom code for the claim status"
Extension: CopayExclusion
Id: copay-exclusion
Title: "Copay Exclusion"
Description: "Customer-specific code for the exclusion reason of a copayment"
* value[x] only CodeableConcept

Extension: DaysToProcess
Id: days-to-process
Title: "Days To Process"
Description: "Number of days between the date the claim was received and the date the claim was processed"
* value[x] only integer

Extension: NumberOfUnitsAllowed
Id: number-of-units-allowed
Title: "Number of Units Allowed"
Description: "Customer-specific quantity of services or units allowed"
* value[x] only integer

Extension: RoutingNumberCode
Id: routing-number-code
Title: "Routing Number Code"
Description: "Customer-specific code for the ITS routing number"
* value[x] only string

Extension: ReinsuranceMetIndicator
Id: reinsurance-met-indicator
Title: "Reinsurance Met Indicator"
Description: "Indicator that the reinsurance amount was met"
* value[x] only string

Extension: RxFormularyIndicator
Id: rx-formulary-indicator
Title: "Rx Formulary Indicator"
Expand All @@ -32,7 +56,7 @@ Description: "An indicator that the prescription drug is included in the formula
Extension: RxPayTier
Id: rx-pay-tier
Title: "Rx Pay Tier"
Description: "Payment tier of the prescription drug"
Description: "Customer-specific code for the payment tier of the drug Claim"
* value[x] only CodeableConcept

Extension: RxSupplyIndicator
Expand Down Expand Up @@ -60,14 +84,30 @@ Title: "Disposition Reason"
Description: "Customer-specific code for the disposition reason, as related to how the claim was paid"
* value[x] only CodeableConcept

Extension: SubmissionType
Id: submission-type
Title: "Submission Type"
Description: "Customer-specific code for the type of electronic submission"
Extension: ReimburseType
Id: reimburse-type
Title: "Reimburse Type"
Description: "Method of payment code for the claim"
* value[x] only CodeableConcept

Extension: SavingsType
Id: savings-type
Title: "Savings Type"
Description: "Customer-specific code for the type of third party savings"
* value[x] only CodeableConcept

Extension: UsualAndCustomaryAmount
Id: usual-and-customary-amount
Title: "Usual And Customary Amount"
Description: "Usual and customary amount on the drug claim"
* value[x] only decimal

Extension: UtilizationReview
Id: utilization-review
Title: "Utilization Review"
Description: "Customer-specific code for the type of utilization review"
* value[x] only CodeableConcept

// Extensions used in ClaimResponse, but defined in ClaimExtensions.fsh
// Extension: ClaimStatus
// Extension: SubmissionType
2 changes: 1 addition & 1 deletion data/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "alvearie.fhir.ig",
"version": "1.0.0",
"version": "2.0.0",
"canonical": "http://ibm.com/fhir/cdm",
"url": "http://ibm.com/fhir/cdm",
"title": "Alvearie FHIR Implementation Guide",
Expand Down
31 changes: 28 additions & 3 deletions data/resources/claim/CDM_Claim.fsh
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ Description: "A provider issued list of professional services and products wh
* identifier.type from IdentifierTypeValueSet (extensible)

* type from ClaimTypeValueSet (extensible)
* subType from WhClaimSubtypeValueSet (extensible)
* supportingInfo.category from ClaimSupportingInfoCategoryValueSet (extensible)
* supportingInfo.code from ClaimSupportingInfoTypeValueSet (extensible)

Expand All @@ -23,10 +24,12 @@ Description: "A provider issued list of professional services and products wh
* diagnosis.extension contains MajorDiagnosticCategory named majorDiagnosticCategory 0..1
* diagnosis.extension[majorDiagnosticCategory] ^short = "The body system or disease related groupings of clinical conditions, based on diagnosis codes"
* diagnosis.extension[majorDiagnosticCategory] ^definition = "The body system or disease related groupings of clinical conditions, based on diagnosis codes"
* diagnosis.extension[majorDiagnosticCategory].valueCodeableConcept from WHPayerMajorDiagnosticCategoryValueSet (extensible)

* procedure.extension contains ProcedureGroup named procedureGroup 0..1
* procedure.extension[procedureGroup] ^short = "Groups assigned to categorize related procedures"
* procedure.extension[procedureGroup] ^definition = "Groups assigned to categorize related procedures"
* procedure.extension[procedureGroup] ^short = "Code assigned to categorize related procedures"
* procedure.extension[procedureGroup] ^definition = "Code assigned to categorize related procedures"
* procedure.extension[procedureGroup].valueCodeableConcept from WHPayerProcedureGroupValueSet (extensible)

* item.extension contains CapitatedServiceIndicator named capitatedServiceIndicator 0..1
* item.extension[capitatedServiceIndicator] ^short = "Indicator that this service (encounter record) was capitated"
Expand All @@ -40,10 +43,18 @@ Description: "A provider issued list of professional services and products wh
* item.extension[nursingHomeIndicator] ^short = "Indicator that the claim was for a nursing home patient"
* item.extension[nursingHomeIndicator] ^definition = "Indicator that the claim was for a nursing home patient"

* item.extension contains ServiceBillDaysCount named serviceBillDaysCount 0..1
* item.extension[serviceBillDaysCount] ^short = "Number of days between the date of service and the date the claim was received"
* item.extension[serviceBillDaysCount] ^definition = "Number of days between the date of service and the date the claim was received"

* insurance.extension contains CrossoverIndicator named crossoverIndicator 0..1
* insurance.extension[crossoverIndicator] ^short = "Indicator specifying whether the claim is a crossover claim where a portion is paid by Medicare"
* insurance.extension[crossoverIndicator] ^definition = "Indicator specifying whether the claim is a crossover claim where a portion is paid by Medicare"

* insurance.extension contains PriorAuthorizationIndicator named priorAuthorizationIndicator 0..1
* insurance.extension[priorAuthorizationIndicator] ^short = "Indicator of prior authorization for the claim"
* insurance.extension[priorAuthorizationIndicator] ^definition = "Indicator of prior authorization for the claim"

* extension contains AggregateClaimIndicator named aggregateClaimIndicator 0..1
* extension[aggregateClaimIndicator] ^short = "Indicator that identifies whether this claim record is included in the adjustment processing of the aggregate build logic for admissions, episodes or DCGs"
* extension[aggregateClaimIndicator] ^definition = "Indicator that identifies whether this claim record is included in the adjustment processing of the aggregate build logic for admissions, episodes or DCGs"
Expand All @@ -56,6 +67,10 @@ Description: "A provider issued list of professional services and products wh
* extension[claimSnapshotProviderZipCode] ^short = "Original provider postal code, as reported on the claim"
* extension[claimSnapshotProviderZipCode] ^definition = "Original provider postal code, as reported on the claim"

* extension contains CompanyCode named companyCode 0..1
* extension[companyCode] ^short = "Company code of the subscriber as reported on the claim"
* extension[companyCode] ^definition = "Company code of the subscriber as reported on the claim"

* extension contains EmployeeBusinessUnit named employeeBusinessUnit 0..1
* extension[employeeBusinessUnit] ^short = "Business unit of the subscriber as reported on the claim"
* extension[employeeBusinessUnit] ^definition = "Business unit of the subscriber as reported on the claim"
Expand All @@ -71,10 +86,12 @@ Description: "A provider issued list of professional services and products wh
* extension contains ClaimCategory named claimCategory 0..1
* extension[claimCategory] ^short = "Standard HIPAA code for the category of the claim status"
* extension[claimCategory] ^definition = "Standard HIPAA code for the category of the claim status"
* extension[claimCategory].valueCodeableConcept from CLAIM-STATUS-CATEGORY (extensible)

* extension contains ClaimStatus named claimStatus 0..1
* extension contains ClaimStatus named claimStatus 0..1
* extension[claimStatus] ^short = "Standard HIPAA code for the status of an entire claim"
* extension[claimStatus] ^definition = "Standard HIPAA code for the status of an entire claim"
* extension[claimStatus].valueCodeableConcept from CLAIM-STATUS (extensible)

* extension contains LastClaimIndicator named lastClaimIndicator 0..1
* extension[lastClaimIndicator] ^short = "Indicator that identifies whether this claim record is the last or most recent claim"
Expand All @@ -84,6 +101,14 @@ Description: "A provider issued list of professional services and products wh
* item.quantity.extension[localNumberOfUnitsPerService] ^short = "Customer-specific quantity of either services or units"
* item.quantity.extension[localNumberOfUnitsPerService] ^definition = "Customer-specific quantity of either services or units"

* extension contains ParticipatingPlan named participatingPlan 0..1
* extension[participatingPlan] ^short = "Customer-specific code for the participating plan"
* extension[participatingPlan] ^definition = "Customer-specific code for the participating plan"

* extension contains ReferralIndicator named referralIndicator 0..1
* extension[referralIndicator] ^short = "An indicator signifying the service resulted from a referral"
* extension[referralIndicator] ^definition = "An indicator signifying the service resulted from a referral"

* extension contains SnapshotAgeInYears named snapshotAgeInYears 0..1
* extension[snapshotAgeInYears] ^short = "The age of the patient in years at the date of service"
* extension[snapshotAgeInYears] ^definition = "The age of the patient in years at the date of service"
Expand Down
33 changes: 33 additions & 0 deletions data/resources/claim/CDM_ClaimResponse.fsh
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,14 @@ Description: "This resource provides the adjudication details from the proce
* adjudication.extension[adjudicationDate] ^short = "Date on which the payment status of the claim was adjudicated"
* adjudication.extension[adjudicationDate] ^definition = "Date on which the payment status of the claim was adjudicated"

* item.adjudication.extension contains RoutingNumberCode named routingNumberCode 0..1
* item.adjudication.extension[routingNumberCode] ^short = "Customer-specific code for the ITS routing number"
* item.adjudication.extension[routingNumberCode] ^definition = "Customer-specific code for the ITS routing number"

* item.adjudication.extension contains SavingsType named savingsType 0..1
* item.adjudication.extension[savingsType] ^short = "Customer-specific code for the type of third party savings"
* item.adjudication.extension[savingsType] ^definition = "Customer-specific code for the type of third party savings"

* type from ClaimTypeValueSet (extensible)

* extension contains ClaimReceivedDate named claimReceivedDate 0..1
Expand All @@ -27,14 +35,23 @@ Description: "This resource provides the adjudication details from the proce
* extension[claimStatus] ^short = "Custom code for the claim status"
* extension[claimStatus] ^definition = "Custom code for the claim status"

* extension contains DaysToProcess named daysToProcess 0..1
* extension[daysToProcess] ^short = "Number of days between the date the claim was received and the date the claim was processed"
* extension[daysToProcess] ^definition = "Number of days between the date the claim was received and the date the claim was processed"

* payment.extension contains ClaimAdjustmentType named claimAdjustmentType 0..*
* payment.extension[claimAdjustmentType] ^short = "The code for the type of adjustment for the claim"
* payment.extension[claimAdjustmentType] ^definition = "The code for the type of adjustment for the claim"
* payment.extension[claimAdjustmentType].valueCodeableConcept from WhPayerClaimAdjustmentTypeValueSet (extensible)

* payment.extension contains DispositionReason named dispositionReason 0..*
* payment.extension[dispositionReason] ^short = "Customer-specific code for the disposition reason, as related to how the claim was paid"
* payment.extension[dispositionReason] ^definition = "Customer-specific code for the disposition reason, as related to how the claim was paid"

* payment.extension contains ReimburseType named reimburseType 0..1
* payment.extension[reimburseType] ^short = "Method of payment code for the claim"
* payment.extension[reimburseType] ^definition = "Method of payment code for the claim"

* item.adjudication.category from AdjudicationCategoryValueSet (example)

//Extension for claim status at item level
Expand All @@ -47,3 +64,19 @@ Description: "This resource provides the adjudication details from the proce
* item.extension contains ClaimResponseBenefitPlan named claimResponseBenefitPlan 0..1
* item.extension[claimResponseBenefitPlan] ^short = "The benefit plan that covers the service rendered"
* item.extension[claimResponseBenefitPlan] ^definition = "The benefit plan that covers the service rendered"

* item.extension contains CopayExclusion named copayExclusion 0..1
* item.extension[copayExclusion] ^short = "Customer-specific code for the exclusion reason of a copayment"
* item.extension[copayExclusion] ^definition = "Customer-specific code for the exclusion reason of a copayment"

* item.extension contains NumberOfUnitsAllowed named numberOfUnitsAllowed 0..1
* item.extension[numberOfUnitsAllowed] ^short = "Customer-specific quantity of services or units allowed"
* item.extension[numberOfUnitsAllowed] ^definition = "Customer-specific quantity of services or units allowed"

* item.extension contains ReinsuranceMetIndicator named reinsuranceMetIndicator 0..1
* item.extension[reinsuranceMetIndicator] ^short = "Indicator that the reinsurance amount was met"
* item.extension[reinsuranceMetIndicator] ^definition = "Indicator that the reinsurance amount was met"

* item.extension contains UtilizationReview named utilizationReview 0..1
* item.extension[utilizationReview] ^short = "Customer-specific code for the type of utilization review"
* item.extension[utilizationReview] ^definition = "Customer-specific code for the type of utilization review"
Loading

0 comments on commit a8c4310

Please sign in to comment.