SQL on FHIR
2.1.0-pre - release International flag

SQL on FHIR, published by SQL on FHIR Working Group. This guide is not an authorized publication; it is the continuous build for version 2.1.0-pre built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/FHIR/sql-on-fhir-v2/ and changes regularly. See the Directory of published versions

: Blood Pressure Trend Report - XML Representation

Active as of 2026-02-24

Raw xml | Download


<Library xmlns="http://hl7.org/fhir">
  <id value="SqlOnFhirExample"/>
  <meta>
    <profile value="https://sql-on-fhir.org/ig/StructureDefinition/SQLQuery"/>
  </meta>
  <text>
    <status value="generated"/>
    <div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Generated Narrative: Library SqlOnFhirExample</b></p><a name="SqlOnFhirExample"> </a><a name="hcSqlOnFhirExample"> </a><div style="display: inline-block; background-color: #d9e0e7; padding: 6px; margin: 4px; border: 1px solid #8da1b4; border-radius: 5px; line-height: 60%"><p style="margin-bottom: 0px"/><p style="margin-bottom: 0px">Profile: <a href="StructureDefinition-SQLQuery.html">SQL Query Library</a></p></div><h2>Participants</h2><table class="grid"><tr><td>Author</td><td>Clinical Informatics Team</td></tr></table><h2>Related Artifacts</h2><table class="grid"><tr><td>Depends On</td><td>patient_view</td><td><code>https://example.org/ViewDefinition/patient_view</code></td></tr><tr><td>Depends On</td><td>blood_pressure_view</td><td><code>https://example.org/ViewDefinition/blood_pressure_view</code></td></tr></table><h2>Parameters</h2><table class="grid"><tr><td>patient_id</td><td>in</td><td/><td/><td>string</td><td>Patient identifier</td></tr><tr><td>from_date</td><td>in</td><td/><td/><td>date</td><td>Start date for observations</td></tr><tr><td>to_date</td><td>in</td><td/><td/><td>date</td><td>End date for observations</td></tr></table><h2>Contents</h2><p><code>application/sql</code></p><pre><code>/*
@name: SqlOnFhirExample
@title: Blood Pressure Trend Report
@description: Return blood pressure observations for a patient in a date range
@version: 1.0.0
@status: active
@author: Clinical Informatics Team
@publisher: Regional Medical Center
*/

-- @relatedDependency: https://example.org/ViewDefinition/patient_view as patient_view
-- @relatedDependency: https://example.org/ViewDefinition/blood_pressure_view as blood_pressure_view
-- @param: patient_id string Patient identifier
-- @param: from_date date Start date (inclusive)
-- @param: to_date date End date (inclusive)
SELECT
  patient_view.id AS patient_id,
  patient_view.name,
  blood_pressure_view.systolic,
  blood_pressure_view.diastolic,
  blood_pressure_view.effective_date
FROM patient_view
JOIN blood_pressure_view
  ON patient_view.id = blood_pressure_view.patient_id
WHERE patient_view.id = :patient_id
  AND blood_pressure_view.effective_date &gt;= :from_date
  AND blood_pressure_view.effective_date &lt;= :to_date
ORDER BY blood_pressure_view.effective_date</code></pre></div>
  </text>
  <url value="https://sql-on-fhir.org/ig/Library/SqlOnFhirExample"/>
  <version value="2.1.0-pre"/>
  <name value="SqlOnFhirExample"/>
  <title value="Blood Pressure Trend Report"/>
  <status value="active"/>
  <type>
    <coding>
      <system
              value="https://sql-on-fhir.org/ig/CodeSystem/LibraryTypesCodes"/>
      <code value="sql-query"/>
    </coding>
  </type>
  <date value="2026-02-24T21:00:17+00:00"/>
  <publisher value="SQL on FHIR Working Group"/>
  <contact>
    <name value="SQL on FHIR Working Group"/>
    <telecom>
      <system value="url"/>
      <value value="https://sql-on-fhir.org"/>
    </telecom>
  </contact>
  <description
               value="Demonstrates SQL annotations that tooling can use to generate Library metadata.

```sql
/*
@name: SqlOnFhirExample
@title: Blood Pressure Trend Report
@description: Return blood pressure observations for a patient in a date range
@version: 1.0.0
@status: active
@author: Clinical Informatics Team
@publisher: Regional Medical Center
*/

-- @relatedDependency: https://example.org/ViewDefinition/patient_view as patient_view
-- @relatedDependency: https://example.org/ViewDefinition/blood_pressure_view as blood_pressure_view
-- @param: patient_id string Patient identifier
-- @param: from_date date Start date (inclusive)
-- @param: to_date date End date (inclusive)
SELECT
  patient_view.id AS patient_id,
  patient_view.name,
  blood_pressure_view.systolic,
  blood_pressure_view.diastolic,
  blood_pressure_view.effective_date
FROM patient_view
JOIN blood_pressure_view
  ON patient_view.id = blood_pressure_view.patient_id
WHERE patient_view.id = :patient_id
  AND blood_pressure_view.effective_date &gt;= :from_date
  AND blood_pressure_view.effective_date &lt;= :to_date
ORDER BY blood_pressure_view.effective_date
```"/>
  <jurisdiction>
    <coding>
      <system value="http://unstats.un.org/unsd/methods/m49/m49.htm"/>
      <code value="001"/>
      <display value="World"/>
    </coding>
  </jurisdiction>
  <author>
    <name value="Clinical Informatics Team"/>
  </author>
  <relatedArtifact>
    <type value="depends-on"/>
    <label value="patient_view"/>
    <resource value="https://example.org/ViewDefinition/patient_view"/>
  </relatedArtifact>
  <relatedArtifact>
    <type value="depends-on"/>
    <label value="blood_pressure_view"/>
    <resource value="https://example.org/ViewDefinition/blood_pressure_view"/>
  </relatedArtifact>
  <parameter>
    <name value="patient_id"/>
    <use value="in"/>
    <documentation value="Patient identifier"/>
    <type value="string"/>
  </parameter>
  <parameter>
    <name value="from_date"/>
    <use value="in"/>
    <documentation value="Start date for observations"/>
    <type value="date"/>
  </parameter>
  <parameter>
    <name value="to_date"/>
    <use value="in"/>
    <documentation value="End date for observations"/>
    <type value="date"/>
  </parameter>
  <content>
    <extension url="https://sql-on-fhir.org/ig/StructureDefinition/sql-text">
      <valueString
                   value="/*
@name: SqlOnFhirExample
@title: Blood Pressure Trend Report
@description: Return blood pressure observations for a patient in a date range
@version: 1.0.0
@status: active
@author: Clinical Informatics Team
@publisher: Regional Medical Center
*/

-- @relatedDependency: https://example.org/ViewDefinition/patient_view as patient_view
-- @relatedDependency: https://example.org/ViewDefinition/blood_pressure_view as blood_pressure_view
-- @param: patient_id string Patient identifier
-- @param: from_date date Start date (inclusive)
-- @param: to_date date End date (inclusive)
SELECT
  patient_view.id AS patient_id,
  patient_view.name,
  blood_pressure_view.systolic,
  blood_pressure_view.diastolic,
  blood_pressure_view.effective_date
FROM patient_view
JOIN blood_pressure_view
  ON patient_view.id = blood_pressure_view.patient_id
WHERE patient_view.id = :patient_id
  AND blood_pressure_view.effective_date &gt;= :from_date
  AND blood_pressure_view.effective_date &lt;= :to_date
ORDER BY blood_pressure_view.effective_date"/>
    </extension>
    <contentType value="application/sql"/>
    <data
          value="LyoKQG5hbWU6IFNxbE9uRmhpckV4YW1wbGUKQHRpdGxlOiBCbG9vZCBQcmVzc3VyZSBUcmVuZCBSZXBvcnQKQGRlc2NyaXB0aW9uOiBSZXR1cm4gYmxvb2QgcHJlc3N1cmUgb2JzZXJ2YXRpb25zIGZvciBhIHBhdGllbnQgaW4gYSBkYXRlIHJhbmdlCkB2ZXJzaW9uOiAxLjAuMApAc3RhdHVzOiBhY3RpdmUKQGF1dGhvcjogQ2xpbmljYWwgSW5mb3JtYXRpY3MgVGVhbQpAcHVibGlzaGVyOiBSZWdpb25hbCBNZWRpY2FsIENlbnRlcgoqLwoKLS0gQHJlbGF0ZWREZXBlbmRlbmN5OiBodHRwczovL2V4YW1wbGUub3JnL1ZpZXdEZWZpbml0aW9uL3BhdGllbnRfdmlldyBhcyBwYXRpZW50X3ZpZXcKLS0gQHJlbGF0ZWREZXBlbmRlbmN5OiBodHRwczovL2V4YW1wbGUub3JnL1ZpZXdEZWZpbml0aW9uL2Jsb29kX3ByZXNzdXJlX3ZpZXcgYXMgYmxvb2RfcHJlc3N1cmVfdmlldwotLSBAcGFyYW06IHBhdGllbnRfaWQgc3RyaW5nIFBhdGllbnQgaWRlbnRpZmllcgotLSBAcGFyYW06IGZyb21fZGF0ZSBkYXRlIFN0YXJ0IGRhdGUgKGluY2x1c2l2ZSkKLS0gQHBhcmFtOiB0b19kYXRlIGRhdGUgRW5kIGRhdGUgKGluY2x1c2l2ZSkKU0VMRUNUCiAgcGF0aWVudF92aWV3LmlkIEFTIHBhdGllbnRfaWQsCiAgcGF0aWVudF92aWV3Lm5hbWUsCiAgYmxvb2RfcHJlc3N1cmVfdmlldy5zeXN0b2xpYywKICBibG9vZF9wcmVzc3VyZV92aWV3LmRpYXN0b2xpYywKICBibG9vZF9wcmVzc3VyZV92aWV3LmVmZmVjdGl2ZV9kYXRlCkZST00gcGF0aWVudF92aWV3CkpPSU4gYmxvb2RfcHJlc3N1cmVfdmlldwogIE9OIHBhdGllbnRfdmlldy5pZCA9IGJsb29kX3ByZXNzdXJlX3ZpZXcucGF0aWVudF9pZApXSEVSRSBwYXRpZW50X3ZpZXcuaWQgPSA6cGF0aWVudF9pZAogIEFORCBibG9vZF9wcmVzc3VyZV92aWV3LmVmZmVjdGl2ZV9kYXRlID49IDpmcm9tX2RhdGUKICBBTkQgYmxvb2RfcHJlc3N1cmVfdmlldy5lZmZlY3RpdmVfZGF0ZSA8PSA6dG9fZGF0ZQpPUkRFUiBCWSBibG9vZF9wcmVzc3VyZV92aWV3LmVmZmVjdGl2ZV9kYXRl"/>
  </content>
</Library>