# US Core Blood Pressure Profile - US Core Implementation Guide v9.0.0

* [**Table of Contents**](toc.md)
* [**Artifacts Summary**](artifacts.md)
* **US Core Blood Pressure Profile**

## Resource Profile: US Core Blood Pressure Profile 

| | | |
| :--- | :--- | :--- |
| *Official URL*:http://hl7.org/fhir/us/core/StructureDefinition/us-core-blood-pressure | *Version*:9.0.0 | |
| * Standards status: *[Trial-use](http://hl7.org/fhir/R4/versions.html#std-process) | [Maturity Level](changes-between-versions.md#us-core-maturity-levels): 5 | *Computable Name*:USCoreBloodPressureProfile |
| *Other Identifiers:*OID:2.16.840.1.113883.4.642.40.2.42.9 | | |
| **Copyright/Legal**: Used by permission of HL7 International, all rights reserved Creative Commons License | | |

 
US Core Blood Pressure Profile inherits from the US Core Vital Signs Profile. This profile sets minimum expectations for the Observation resource to record, search, and fetch diastolic and systolic blood pressure observations with standard LOINC codes and UCUM units of measure. It specifies which **additional** core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption. 

**Usages:**

* Examples for this Profile: [Observation/blood-pressure](Observation-blood-pressure.md) and [Observation/bp-data-absent](Observation-bp-data-absent.md)
* CapabilityStatements using this Profile: [US Core Client CapabilityStatement](CapabilityStatement-us-core-client.md) and [US Core Server CapabilityStatement](CapabilityStatement-us-core-server.md)

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

**Changes since version 8.0.1:**

* The resource metadata has changed (description)

### 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-us-core-blood-pressure.csv), [Excel](StructureDefinition-us-core-blood-pressure.xlsx), [Schematron](StructureDefinition-us-core-blood-pressure.sch) 

### Notes:

-------

**Quick Start**  

-------

Below is an overview of the required Server RESTful FHIR interactions for this profile - for example, search and read operations - when supporting the US Core interactions to access this profile's information (Profile Support + Interaction Support). Note that systems that support only US Core Profiles (Profile Only Support) are not required to support these interactions. See the [US Core Server CapabilityStatement](CapabilityStatement-us-core-server.md) for a complete list of supported RESTful interactions for this IG.

* See the [Scopes Format](scopes.md#scopes-format) section for a description of the SMART scopes syntax.
* See the [Search Syntax](general-guidance.md#search-syntax) section for a description of the US Core search syntax.
* See the [General Requirements](general-requirements.md) section for additional rules and expectations when a Server requires status parameters.
* See the [General Guidance](general-guidance.md) section for additional guidance on searching for multiple patients.

#### US Core Scopes

Servers providing access to vital signs data **SHALL** support these [US Core SMART Scopes](scopes.md#smart-scopes):

* [resource level scopes](http://hl7.org/fhir/smart-app-launch/STU2.2/scopes-and-launch-context.html#scopes-for-requesting-clinical-data): `<patient|user|system>/Observation.rs` [§](requirements.md#CONF-0145)
* [granular scopes](http://hl7.org/fhir/smart-app-launch/STU2.2/scopes-and-launch-context.html#finer-grained-resource-constraints-using-search-parameters): `<patient|user|system>/Observation.rs?category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs` [§](requirements.md#CONF-0165)

-------

#### Mandatory Search Parameters:

The following search parameters and search parameter combinations **SHALL** be supported:

1. **SHALL** support searching for all Observations using the combination of the [patient](SearchParameter-us-core-observation-patient.md) and [category](SearchParameter-us-core-observation-category.md) search parameters`GET [base]/Observation?patient={Patient/}[id]&category={system|}[search_code]`Example:
> 
1. GET [base]/Observation?patient=Patient/1137192&category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs

**Implementation Notes**: Fetches a bundle of all US Core Blood Pressure Profile resources for the specified patient and a category code = "vital-signs" ( see [how to search by reference](http://hl7.org/fhir/R4/search.html#reference) and [how to search by token](http://hl7.org/fhir/R4/search.html#token)).
1. **SHALL** support searching for all Observations by code using the combination of the [patient](SearchParameter-us-core-observation-patient.md) and [code](SearchParameter-us-core-observation-code.md) search parameters
* Including optional support **OR** search on `code` (e.g.`code={system|}[code],{system|}[code],...`)
`GET [base]/Observation?patient={Patient/}[id]&code={system|}[search_code]{,{system|}[code],...}`Examples:
> 
1. GET [base]/Observation?patient=Patient/1137192&code=http://loinc.org|85354-9
1. GET [base]/Observation?patient=Patient/1137192&code=http://loinc.org|85354-9,http://loinc.org|9279-1,http://loinc.org|8867-4

**Implementation Notes**: Fetches a bundle of all US Core Blood Pressure Profile resources for the specified patient and observation code(s). SHOULD support search by multiple codes. The US Core Blood Pressure Profile "code" parameter searches only `.code` and not `component.code`. ( see [how to search by reference](http://hl7.org/fhir/R4/search.html#reference) and [how to search by token](http://hl7.org/fhir/R4/search.html#token)).
1. **SHALL** support searching for all Observations by date (for example, results after 2018) using the combination of the [patient](SearchParameter-us-core-observation-patient.md) and [category](SearchParameter-us-core-observation-category.md) and [date](SearchParameter-us-core-observation-date.md) search parameters
* Including optional support for **AND** search on `date` (e.g.`date=[date]&date=[date]&...`)
* Including support for these `date` comparators: "gt", "lt", "ge", "le"
`GET [base]/Observation?patient={Patient/}[id]&category={system|}[search_code]&date={gt|lt|ge|le}[dateTime]{&date={gt|lt|ge|le}[dateTime]&...}`Example:
> 
1. GET [base]/Observation?patient=Patient/1137192&category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs&date=ge2018-03-14T00:00:00Z

**Implementation Notes**: Fetches a bundle of all US Core Blood Pressure Profile resources for the specified patient and date and a category code = "vital-signs" ( see [how to search by reference](http://hl7.org/fhir/R4/search.html#reference) and [how to search by token](http://hl7.org/fhir/R4/search.html#token) and [how to search by date](http://hl7.org/fhir/R4/search.html#date)).

#### Optional Search Parameters:

The following search parameters and search parameter combinations **SHOULD** be supported

1. **SHOULD** support searching for all Observations for a patient for a given status (for example all observations marked as final) using the combination of the [patient](SearchParameter-us-core-observation-patient.md) and [category](SearchParameter-us-core-observation-category.md) and [status](SearchParameter-us-core-observation-status.md) search parameters
* Including support **OR** search on `status` (e.g.`status={system|}[code],{system|}[code],...`)
`GET [base]/Observation?patient={Patient/}[id]&category={system|}[search_code]&status={system|}[search_code]{,{system|}[code],...}`Example:
> 
1. GET [base]/Observation?patient=Patient/1137192&category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs&status=final

**Implementation Notes**: Fetches a bundle of all US Core Blood Pressure Profile resources for the specified patient and category = "vital-signs" and status ( see [how to search by reference](http://hl7.org/fhir/R4/search.html#reference) and [how to search by token](http://hl7.org/fhir/R4/search.html#token)).
1. **SHOULD** support searching using the combination of the [patient](SearchParameter-us-core-observation-patient.md) and [category](SearchParameter-us-core-observation-category.md) and [_lastUpdated](SearchParameter-us-core-observation-lastupdated.md) search parameters
* Including optional support for **AND** search on `_lastUpdated` (e.g.`_lastUpdated=[date]&_lastUpdated=[date]&...`)
* Including support for these `_lastUpdated` comparators: "gt", "lt", "ge", "le"
`GET [base]/Observation?patient={Patient/}[id]&category={system|}[search_code]&_lastUpdated=[dateTime]`Example:
> 
1. GET [base]/Observation?patient=Patient/1137192&category=http://terminology.hl7.org/CodeSystem/observation-category|vital-signs&_lastUpdated=ge2024-01-01T00:00:00Z

**Implementation Notes**: Fetches a bundle of all US Core Blood Pressure Profile resources for the specified patient and category code = "vital-signs" and _lastUpdated. See the US Core General Guidance page for [Searching Using lastUpdated](general-guidance.md#searching-using-lastupdated). ( see [how to search by reference](http://hl7.org/fhir/R4/search.html#reference) and [how to search by token](http://hl7.org/fhir/R4/search.html#token) and [how to search by date](http://hl7.org/fhir/R4/search.html#date)).
1. **SHOULD** support searching Observations by code and date using the combination of the [patient](SearchParameter-us-core-observation-patient.md) and [code](SearchParameter-us-core-observation-code.md) and [date](SearchParameter-us-core-observation-date.md) search parameters
* Including optional support **OR** search on `code` (e.g.`code={system|}[code],{system|}[code],...`)
* Including optional support for **AND** search on `date` (e.g.`date=[date]&date=[date]&...`)
* Including support for these `date` comparators: "gt", "lt", "ge", "le"
`GET [base]/Observation?patient={Patient/}[id]&code={system|}[search_code]{,{system|}[code],...}&date={gt|lt|ge|le}[dateTime]{&date={gt|lt|ge|le}[dateTime]&...}`Example:
> 
1. GET [base]/Observation?patient=Patient/1137192&code=http://loinc.org|85354-9&date=ge2019-01-01T00:00:00Z

**Implementation Notes**: Fetches a bundle of all US Core Blood Pressure Profile resources for the specified patient and date and code(s). SHOULD support search by multiple codes. ( see [how to search by reference](http://hl7.org/fhir/R4/search.html#reference) and [how to search by token](http://hl7.org/fhir/R4/search.html#token) and [how to search by date](http://hl7.org/fhir/R4/search.html#date)).



## Resource Content

```json
{
  "resourceType" : "StructureDefinition",
  "id" : "us-core-blood-pressure",
  "extension" : [{
    "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
    "valueInteger" : 5
  },
  {
    "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
    "valueCode" : "cgp"
  },
  {
    "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
    "valueCode" : "trial-use",
    "_valueCode" : {
      "extension" : [{
        "url" : "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
        "valueCanonical" : "http://hl7.org/fhir/us/core/ImplementationGuide/hl7.fhir.us.core"
      }]
    }
  }],
  "url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-blood-pressure",
  "identifier" : [{
    "system" : "urn:ietf:rfc:3986",
    "value" : "urn:oid:2.16.840.1.113883.4.642.40.2.42.9"
  }],
  "version" : "9.0.0",
  "name" : "USCoreBloodPressureProfile",
  "title" : "US Core Blood Pressure Profile",
  "status" : "active",
  "experimental" : false,
  "date" : "2023-10-17",
  "publisher" : "HL7 International / Cross-Group Projects",
  "contact" : [{
    "name" : "HL7 International / Cross-Group Projects",
    "telecom" : [{
      "system" : "url",
      "value" : "http://www.hl7.org/Special/committees/cgp"
    },
    {
      "system" : "email",
      "value" : "cgp@lists.HL7.org"
    }]
  }],
  "description" : "US Core Blood Pressure Profile inherits from the US Core Vital Signs Profile. This profile sets minimum expectations for the Observation resource to record, search,  and fetch diastolic and systolic blood pressure observations with standard LOINC codes and UCUM units of measure. It specifies which *additional*  core elements, extensions, vocabularies, and value sets **SHALL** be present in the resource and constrains how the elements are used. Providing the floor for standards development for specific use cases promotes interoperability and adoption.",
  "jurisdiction" : [{
    "coding" : [{
      "system" : "urn:iso:std:iso:3166",
      "code" : "US"
    }]
  }],
  "copyright" : "Used by permission of HL7 International, all rights reserved Creative Commons License",
  "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/us/core/StructureDefinition/us-core-vital-signs",
  "derivation" : "constraint",
  "differential" : {
    "element" : [{
      "id" : "Observation",
      "path" : "Observation",
      "short" : "US Core Blood Pressure Profile"
    },
    {
      "id" : "Observation.code",
      "path" : "Observation.code",
      "short" : "Blood Pressure",
      "type" : [{
        "code" : "CodeableConcept"
      }],
      "patternCodeableConcept" : {
        "coding" : [{
          "system" : "http://loinc.org",
          "code" : "85354-9"
        }]
      },
      "mustSupport" : true
    },
    {
      "id" : "Observation.component",
      "path" : "Observation.component",
      "slicing" : {
        "discriminator" : [{
          "type" : "value",
          "path" : "code"
        }],
        "ordered" : false,
        "rules" : "open"
      },
      "short" : "Component observations",
      "min" : 2,
      "max" : "*",
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:systolic",
      "path" : "Observation.component",
      "sliceName" : "systolic",
      "short" : "Systolic Blood Pressure",
      "min" : 1,
      "max" : "1",
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:systolic.code",
      "path" : "Observation.component.code",
      "short" : "Systolic Blood Pressure Code",
      "min" : 1,
      "max" : "1",
      "patternCodeableConcept" : {
        "coding" : [{
          "system" : "http://loinc.org",
          "code" : "8480-6"
        }]
      },
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:systolic.valueQuantity",
      "path" : "Observation.component.valueQuantity",
      "short" : "Vital Sign Component Value",
      "type" : [{
        "code" : "Quantity"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:systolic.valueQuantity.value",
      "path" : "Observation.component.valueQuantity.value",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "decimal"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:systolic.valueQuantity.unit",
      "path" : "Observation.component.valueQuantity.unit",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "string"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:systolic.valueQuantity.system",
      "path" : "Observation.component.valueQuantity.system",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "uri"
      }],
      "fixedUri" : "http://unitsofmeasure.org",
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:systolic.valueQuantity.code",
      "path" : "Observation.component.valueQuantity.code",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "code"
      }],
      "fixedCode" : "mm[Hg]",
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:diastolic",
      "path" : "Observation.component",
      "sliceName" : "diastolic",
      "short" : "Diastolic Blood Pressure",
      "min" : 1,
      "max" : "1",
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:diastolic.code",
      "path" : "Observation.component.code",
      "short" : "Diastolic Blood Pressure Code",
      "min" : 1,
      "max" : "1",
      "patternCodeableConcept" : {
        "coding" : [{
          "system" : "http://loinc.org",
          "code" : "8462-4"
        }]
      },
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:diastolic.valueQuantity",
      "path" : "Observation.component.valueQuantity",
      "short" : "Vital Sign Component Value",
      "type" : [{
        "code" : "Quantity"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:diastolic.valueQuantity.value",
      "path" : "Observation.component.valueQuantity.value",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "decimal"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:diastolic.valueQuantity.unit",
      "path" : "Observation.component.valueQuantity.unit",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "string"
      }],
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:diastolic.valueQuantity.system",
      "path" : "Observation.component.valueQuantity.system",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "uri"
      }],
      "fixedUri" : "http://unitsofmeasure.org",
      "mustSupport" : true
    },
    {
      "id" : "Observation.component:diastolic.valueQuantity.code",
      "path" : "Observation.component.valueQuantity.code",
      "min" : 1,
      "max" : "1",
      "type" : [{
        "code" : "code"
      }],
      "fixedCode" : "mm[Hg]",
      "mustSupport" : true
    }]
  }
}

```
