# DAPL Income Observation - De-identified, Anonymized FHIR Profiles Library v1.0.0-ballot

* [**Table of Contents**](toc.md)
* [**Artifacts Summary**](artifacts.md)
* **DAPL Income Observation**

## Resource Profile: DAPL Income Observation ( Experimental ) 

| | |
| :--- | :--- |
| *Official URL*:http://hl7.org/fhir/us/dapl/StructureDefinition/dapl-income-observation | *Version*:1.0.0-ballot |
| * Standards status: *[Informative](http://hl7.org/fhir/R4/versions.html#std-process) | *Computable Name*:DAPLIncomeObservation |

 
The profile establishes the core elements, extensions, vocabularies and value sets for representing Income ranges. 

### Introduction

This profile is used to represent de-identified Income information. The de-identification process has to remove all data elements not explicitly identified as "SUPPORTED" in the profile.

The [HHS De-identification Guidance](https://www.hhs.gov/sites/default/files/ocr/privacy/hipaa/understanding/coveredentities/De-identification/hhs_deid_guidance.pdf) is to be followed to ensure appropriate level of de-identification is performed.

In FHIR Resources, text elements and reference.display elements which provide human readable information to the providers may be generated using programs and tools from the data present within the resource. For e.g a Income Observation resource text element may contain Patient information such as names. This type of information will enable identification of the individuals. In order to avoid inadvertent revealing of PII/PHI, text elements cannot be included in the De-identified FHIR resource and the submission will be rejected when text elements are present by the validation process.

**Ids and References**

The original Observation resource id should not be included in the De-identified Observation instance. Instead a new id should be created and provided as part of the FHIR resource. This Data Submitter should be capable of using the generated id to relink the data to the original Income Observation. All resource references to the Income Observation submitted as part of the data exchange should refer to newly generated id.

Resource references cannot contain text element as it may contain PHI/PII. The text element for following references are not allowed

* subject

**Representing Income Ranges**

Income ranges are represented using the Observation.valueRange element. The following values can be used to represent the Income ranges:

```
* 100% and below : use valueRange.high to represent 100% (Includes 100)
* 101–150% : use valueRange.low to represent 101, valueRange.high to represent 150 (Includes 101 and 150)
* 151–200% : use valueRange.low to represent 151, valueRange.high to represent 200 (Includes 151 and 200)
* Over 200% : use valueRange.low to represent 200% and comparator of ">"
* For unknown use the dataAbsentReason

```

**Examples**

Examples of identifiable data and its corresponding de-identifiable data are present in the [FHIR Artifacts examples](artifacts.md)

**Usages:**

* Examples for this Profile: [Observation/de-identified-income-example](Observation-de-identified-income-example.md), [Observation/de-identified-income-with-quantity-example](Observation-de-identified-income-with-quantity-example.md) and [Observation/de-identified-low-income-example](Observation-de-identified-low-income-example.md)

You can also check for [usages in the FHIR IG Statistics](https://packages2.fhir.org/xig/hl7.fhir.us.dapl|current/StructureDefinition/dapl-income-observation)

### Formal Views of Profile Content

 [Description of Profiles, Differentials, Snapshots and how the different presentations work](http://build.fhir.org/ig/FHIR/ig-guidance/readingIgs.html#structure-definitions). 

 

Other representations of profile: [CSV](StructureDefinition-dapl-income-observation.csv), [Excel](StructureDefinition-dapl-income-observation.xlsx), [Schematron](StructureDefinition-dapl-income-observation.sch) 



## Resource Content

```json
{
  "resourceType" : "StructureDefinition",
  "id" : "dapl-income-observation",
  "meta" : {
    "versionId" : "12",
    "lastUpdated" : "2022-07-12T02:03:11.293+00:00"
  },
  "extension" : [{
    "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
    "valueCode" : "cgp"
  },
  {
    "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
    "valueCode" : "informative",
    "_valueCode" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
        "valueCanonical" : "http://hl7.org/fhir/us/dapl/ImplementationGuide/dapl"
      }]
    }
  }],
  "url" : "http://hl7.org/fhir/us/dapl/StructureDefinition/dapl-income-observation",
  "version" : "1.0.0-ballot",
  "name" : "DAPLIncomeObservation",
  "title" : "DAPL Income Observation",
  "status" : "draft",
  "experimental" : true,
  "date" : "2026-05-08T05:01:52+10:00",
  "publisher" : "HL7 International / Cross-Group Projects",
  "contact" : [{
    "telecom" : [{
      "system" : "url",
      "value" : "http://www.hl7.org/Special/committees/cgp"
    }]
  }],
  "description" : "The profile establishes the core elements, extensions, vocabularies and value sets for representing Income ranges.",
  "jurisdiction" : [{
    "coding" : [{
      "system" : "urn:iso:std:iso:3166",
      "code" : "US"
    }]
  }],
  "fhirVersion" : "4.0.1",
  "mapping" : [{
    "identity" : "workflow",
    "uri" : "http://hl7.org/fhir/workflow",
    "name" : "Workflow Pattern"
  },
  {
    "identity" : "sct-concept",
    "uri" : "http://snomed.info/conceptdomain",
    "name" : "SNOMED CT Concept Domain Binding"
  },
  {
    "identity" : "v2",
    "uri" : "http://hl7.org/v2",
    "name" : "HL7 v2 Mapping"
  },
  {
    "identity" : "rim",
    "uri" : "http://hl7.org/v3",
    "name" : "RIM Mapping"
  },
  {
    "identity" : "w5",
    "uri" : "http://hl7.org/fhir/fivews",
    "name" : "FiveWs Pattern Mapping"
  },
  {
    "identity" : "sct-attr",
    "uri" : "http://snomed.org/attributebinding",
    "name" : "SNOMED CT Attribute Binding"
  }],
  "kind" : "resource",
  "abstract" : false,
  "type" : "Observation",
  "baseDefinition" : "http://hl7.org/fhir/StructureDefinition/Observation",
  "derivation" : "constraint",
  "differential" : {
    "element" : [{
      "id" : "Observation",
      "path" : "Observation",
      "short" : "DAPL Income Observation",
      "definition" : "The profile establishes the core elements, extensions, vocabularies and value sets for representing Income ranges."
    },
    {
      "id" : "Observation.id",
      "path" : "Observation.id",
      "short" : "The Observation identifier generated by DARTS deidentification or anonymization service",
      "definition" : "DAPL resource identifier.",
      "mustSupport" : true
    },
    {
      "id" : "Observation.text",
      "path" : "Observation.text",
      "short" : "Cannot include any text in the resource as part of the deidentified or anonymized data.",
      "min" : 0,
      "max" : "0",
      "mustSupport" : false
    },
    {
      "id" : "Observation.contained",
      "path" : "Observation.contained",
      "short" : "Cannot include any contained resources in the resource as part of the deidentified or anonymized  data.",
      "min" : 0,
      "max" : "0",
      "mustSupport" : false
    },
    {
      "id" : "Observation.status",
      "path" : "Observation.status",
      "min" : 1,
      "max" : "1",
      "fixedCode" : "final",
      "mustSupport" : true
    },
    {
      "id" : "Observation.code",
      "path" : "Observation.code",
      "min" : 1,
      "max" : "1",
      "patternCodeableConcept" : {
        "coding" : [{
          "system" : "http://loinc.org",
          "code" : "63586-2"
        }]
      },
      "mustSupport" : true
    },
    {
      "id" : "Observation.subject",
      "path" : "Observation.subject",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "Reference",
        "targetProfile" : ["http://hl7.org/fhir/us/dapl/StructureDefinition/dapl-deidentified-patient"]
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.effectiveDateTime",
      "path" : "Observation.effectiveDateTime",
      "min" : 0,
      "max" : "1",
      "type" : [{
        "code" : "dateTime"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.value[x]",
      "path" : "Observation.value[x]",
      "min" : 0,
      "max" : "1",
      "type" : [{
        "code" : "Range"
      },
      {
        "code" : "Quantity"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.valueRange.extension:dataAbsentReason",
      "path" : "Observation.valueRange.extension",
      "sliceName" : "dataAbsentReason",
      "short" : "Reason why the data is not present",
      "max" : "1",
      "type" : [{
        "code" : "Extension",
        "profile" : ["http://hl7.org/fhir/StructureDefinition/data-absent-reason|5.2.0"]
      }],
      "mustSupport" : true
    }]
  }
}

```
