PackagesCanonicalsLogsProblems
    Packages
    hl7.fhir.us.carin@bb-1.0.0
    http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Professional-NonClinician
description: This profile is used for Explanation of Benefits (EOBs) based on claims submitted by physicians, suppliers and other non-institutional providers for professional services. These services may be rendered in inpatient or outpatient, including office locations. \nThe claims data is based on the professional claim form 1500, submission standards adopted by the Department of Health and Human Services as form CMS-1500.
package_name: hl7.fhir.us.carin
derivation: constraint
name: C4BBExplanationOfBenefitProfessionalNonClinician
type: ExplanationOfBenefit
elements:
  type:
    pattern:
      type: CodeableConcept
      value:
        coding:
        - {code: professional, system: 'http://terminology.hl7.org/CodeSystem/claim-type'}
    index: 0
  careTeam:
    constraint:
      ele-1: {human: All FHIR elements must have a @value or children, source: 'http://hl7.org/fhir/StructureDefinition/Element', severity: error, expression: hasValue() or (children().count() > id.count())}
      EOB-prof-careTeam-practitioner:
        human: 'Professional EOB:  Careteam roles refer to a practitioner'
        source: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Professional-NonClinician
        severity: error
        expression: |-
          (
          role.where(coding.where(code in ('performing' | 'primary' | 'referring' | 'supervising')).exists()).exists() implies
          role.where(coding.where(code in ('performing' | 'primary' | 'referring' | 'supervising' )).exists()).exists().provider.all(resolve() is Practitioner)
          )
      EOB-prof-careTeam-organization:
        human: 'Professional EOB:  Careteam roles refer to an organization'
        source: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Professional-NonClinician
        severity: error
        expression: |-
          (
          role.where(coding.where(code in ('site')).exists()).exists() implies
          role.where(coding.where(code in ('site' )).exists()).exists().provider.all(resolve() is Organization)
          )
    index: 1
    elements:
      role:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBClaimProfessionalAndNonClinicianCareTeamRole'}
        index: 2
      qualification:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/core/ValueSet/us-core-provider-specialty'}
        mustSupport: true
        index: 3
    required: [role]
  supportingInfo:
    index: 4
    slicing:
      rules: open
      ordered: false
      description: Slice based on $this pattern
      discriminator:
      - {path: category, type: pattern}
      min: null
      slices:
        billingnetworkcontractingstatus:
          match:
            category:
              coding:
              - {code: billingnetworkcontractingstatus, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            index: 5
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: billingnetworkcontractingstatus, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 6
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBPayerProviderContractingStatus'}
                mustSupport: true
                index: 7
            required: [code]
        performingnetworkcontractingstatus:
          match:
            category:
              coding:
              - {code: performingnetworkcontractingstatus, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            index: 8
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: performingnetworkcontractingstatus, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 9
              code:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBPayerProviderContractingStatus'}
                mustSupport: true
                index: 10
            required: [code]
        clmrecvddate:
          match:
            category:
              coding:
              - {code: clmrecvddate, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            index: 11
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: clmrecvddate, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 12
              timing:
                mustSupport: true
                choices: [timingDate]
                index: 14
              timingDate: {type: date, mustSupport: true, choiceOf: timing, index: 15}
            required: [timingDate, timing]
        servicefacility:
          match:
            category:
              coding:
              - {code: servicefacility, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
          schema:
            index: 16
            elements:
              category:
                mustSupport: true
                pattern:
                  type: CodeableConcept
                  value:
                    coding:
                    - {code: servicefacility, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBSupportingInfoType'}
                index: 17
              value:
                choices: []
                index: 19
              valueReference:
                type: Reference
                mustSupport: true
                refers: ['http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Organization']
                index: 20
            required: [valueReference, value]
  diagnosis:
    mustSupport: true
    index: 21
    elements:
      sequence: {index: 22}
      diagnosis:
        mustSupport: true
        choices: [diagnosisCodeableConcept]
        index: 24
      diagnosisCodeableConcept: {type: CodeableConcept, mustSupport: true, choiceOf: diagnosis, index: 25}
      type:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBClaimProfessionalAndNonClinicianDiagnosisType'}
        mustSupport: true
        index: 26
    required: [type]
  item:
    elements:
      productOrService:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/AMACPTCMSHCPCSProcedureCodes'}
        index: 27
      modifier:
        binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/AMACPTCMSHCPCSModifiers'}
        index: 28
      serviced:
        choices: []
        index: 30
      location:
        choices: [locationCodeableConcept]
        index: 32
      locationCodeableConcept: {type: CodeableConcept, choiceOf: location, index: 33}
      quantity: {index: 34}
      adjudication:
        mustSupport: true
        array: true
        min: 2
        index: 35
        elements:
          category:
            binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBAdjudicationCategoryDiscriminator'}
            index: 36
        slicing:
          rules: closed
          ordered: false
          description: Slice based on value pattern
          discriminator:
          - {path: category, type: pattern}
          min: 2
          slices:
            adjudicationamounttype:
              match: {category: null}
              schema:
                short: Amounts
                array: true
                min: 1
                _required: true
                index: 37
                elements:
                  category:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBAdjudication'}
                    index: 38
                  amount: {mustSupport: true, index: 39}
            denialreason:
              match:
                category:
                  coding:
                  - {code: denialreason, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudicationDiscriminator'}
              schema:
                short: Reason codes used to interpret the Non-Covered Amount (92)
                index: 40
                elements:
                  category:
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: denialreason, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudicationDiscriminator'}
                    index: 41
                  reason:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/X12ClaimAdjustmentReasonCodesCMSRemittanceAdviceRemarkCodes'}
                    mustSupport: true
                    index: 42
                required: [reason]
            inoutnetwork:
              match: {category: null}
              schema:
                short: Indicates the in network or out of network payment status of the claim. (142)
                _required: true
                index: 43
                elements:
                  category:
                    binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBPayerBenefitPaymentStatus'}
                    index: 44
            allowedunits:
              match:
                category:
                  coding:
                  - {code: allowedunits, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudicationDiscriminator'}
              schema:
                short: The quantity of units, times, days, visits, services, or treatments for the service described by the HCPCS code, revenue code or procedure code, submitted by the provider.  (149)
                index: 45
                elements:
                  category:
                    pattern:
                      type: CodeableConcept
                      value:
                        coding:
                        - {code: allowedunits, system: 'http://hl7.org/fhir/us/carin-bb/CodeSystem/C4BBAdjudicationDiscriminator'}
                    index: 46
  adjudication: {index: 47}
  total:
    index: 48
    elements:
      category:
        binding: {strength: extensible, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBAdjudication'}
        mustSupport: true
        index: 49
      amount: {index: 50}
    slicing:
      rules: open
      ordered: false
      description: Slice based on value pattern
      discriminator:
      - {path: category, type: pattern}
      min: null
      slices:
        adjudicationamounttype:
          match: {category: null}
          schema:
            array: true
            min: 1
            _required: true
            index: 51
            elements:
              category:
                binding: {strength: required, valueSet: 'http://hl7.org/fhir/us/carin-bb/ValueSet/C4BBAdjudication'}
                index: 52
package_version: bb-1.0.0
class: profile
kind: resource
url: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit-Professional-NonClinician
base: http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-ExplanationOfBenefit
version: 1.0.0
required: [diagnosis]