Common CQL Artifacts for FHIR (US-Based)
1.0.0-ballot - STU 1 Ballot United States of America flag

Common CQL Artifacts for FHIR (US-Based), published by HL7 International / Clinical Decision Support. This guide is not an authorized publication; it is the continuous build for version 1.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/us-cql-ig/ and changes regularly. See the Directory of published versions

: Expression Library for the Example Patient And Coverage Questionnaire - TTL Representation

Page standards status: Informative Maturity Level: 3

Raw ttl | Download


@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

# - resource -------------------------------------------------------------------

 a fhir:Library ;
  fhir:nodeRole fhir:treeRoot ;
  fhir:id [ fhir:v "ExamplePatientAndCoverageInitialExpressions"] ; # 
  fhir:text [
fhir:status [ fhir:v "extensions" ] ;
fhir:div "<div xmlns=\"http://www.w3.org/1999/xhtml\">\n<div>\n    <table class=\"grid dict\">\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Title: </b></th>\n            <td style=\"padding-left: 4px;\">Expression Library for the Example Patient And Coverage Questionnaire</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Id: </b></th>\n            <td style=\"padding-left: 4px;\">ExamplePatientAndCoverageInitialExpressions</td>\n        </tr>\n        \n\n        \n        \n        <tr>\n            <th scope=\"row\"><b>Version: </b></th>\n            <td style=\"padding-left: 4px;\">1.0.0-ballot</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Url: </b></th>\n            <td style=\"padding-left: 4px;\"><a href=\"Library-ExamplePatientAndCoverageInitialExpressions.html\">Expression Library for the Example Patient And Coverage Questionnaire</a></td>\n        </tr>\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Status: </b></th>\n            <td style=\"padding-left: 4px;\">draft</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Experimental: </b></th>\n            <td style=\"padding-left: 4px;\">true</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Type: </b></th>\n            <td style=\"padding-left: 4px;\">\n                \n                    \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>system: </b> <span><a href=\"http://terminology.hl7.org/6.5.0/CodeSystem-library-type.html\">http://terminology.hl7.org/CodeSystem/library-type</a></span>\n                        </p>\n                        \n                        \n                        <p style=\"margin-bottom: 5px;\">\n                            <b>code: </b> <span>logic-library</span>\n                        </p>\n                        \n                        \n                    \n                \n                \n            </td>\n        </tr>\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Date: </b></th>\n            <td style=\"padding-left: 4px;\">2025-09-10 20:00:05+0000</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Publisher: </b></th>\n            <td style=\"padding-left: 4px;\">HL7 International / Clinical Decision Support</td>\n        </tr>\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Description: </b></th>\n            <td style=\"padding-left: 4px;\"><div><p>This library defines initial expressions for use in populating answers to questions in the Example Patient And Coverage questionnaire.</p>\n</div></td>\n        </tr>\n        \n\n        \n\n        \n\n        \n\n        \n        <tr>\n            <th scope=\"row\"><b>Jurisdiction: </b></th>\n            <td style=\"padding-left: 4px;\">US</td>\n        </tr>\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n\n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><a id=\"cql-content\"><b>Content: </b></a> text/cql</th></tr>\n              <tr><td><pre><code class=\"language-cql\">library ExamplePatientAndCoverageInitialExpressions\n\nusing USCore version '7.0.0'\nusing FHIR version '4.0.1'\n\ninclude hl7.fhir.uv.cql.FHIRHelpers version '4.0.1'\ninclude USCoreCommon called UC\ninclude USCoreElements called UCE\n\ncodesystem \"Identifier Type\": 'http://terminology.hl7.org/CodeSystem/v2-0203'\n\ncode \"Member Number\": 'MB' from \"Identifier Type\"\ncode \"Subscriber Number\": 'SN' from \"Identifier Type\"\n\nparameter \"Coverage\" FHIR.Coverage\nparameter \"ServiceRequest\" FHIR.ServiceRequest\n\ncontext Patient\n\ndefine \"Retrieve Service Request test parameter\":\n  // The VSCode extension doesn't support parameters\n  // When executing CQL with the VSCode extension retrieve the resource specific for the test case\n  //   the list of resource ids match the resources from the test case folders\n  singleton from ([FHIR.ServiceRequest] SR where SR.id in { \n    'minimal-service-request-example'\n  })\n\ndefine \"Service Request\":\n  Coalesce(\n    ServiceRequest,\n    \"Retrieve Service Request test parameter\"\n  )\n\ndefine \"Retrieve Coverage test parameter\":\n  // The VSCode extension doesn't support parameters\n  // When executing CQL with the VSCode extension retrieve the resource specific for the test case\n  //   the list of resource ids match the resources from the test case folders\n  singleton from ([FHIR.Coverage] CV where CV.id in { \n    'minimal-coverage-example'\n  })\n\ndefine \"Member Coverage\":\n  Coalesce(\n    Coverage,\n    \"Retrieve Coverage test parameter\"\n  )\n\ndefine \"Patient Name\":\n  UCE.\"Name - First Middle(s) Last\"\n\ndefine \"Date of Birth\":\n  Patient.birthDate\n\ndefine \"Birth Sex\":\n  Patient.birthsex\n\ndefine \"Medical Record Number\":\n  UCE.\"Medical Record Number\"\n\ndefine \"Phone Number\":\n  UC.Mobile(Patient.telecom).value\n\ndefine \"Email Address\":\n  UC.Email(Patient.telecom).value\n\ndefine \"Address\":\n  (singleton from Patient.address).line\n\ndefine \"City\":\n  Patient.address.city\n\ndefine \"State\":\n  Patient.address.state\n\ndefine \"Postal Code\":\n  Patient.address.postalCode\n\n// Coverage\n// define \"Coverage\":\n//   First(clinical C where C is FHIR.Coverage)\n\n// TODO: is there a need to check for coverage period and order? \n//       also, do we need to check that the payor organization is the same as the source of the prior auth form?\ndefine \"Member ID\":\n  UCE.MemberID(\"Member Coverage\").value\n\n// TODO: is there a need to check for coverage period and order?\n//       also do we need to check that the payor organization is the same as the source of the prior auth form?\ndefine \"Policy Number\":\n  UCE.PolicyNumber(\"Member Coverage\").value\n\ndefine \"Requesting Provider\":\n  UCE.RequestingProvider(\"Service Request\")\n\ndefine \"Requesting Provider Name\":\n  \"Requesting Provider\".name.family\n\ndefine \"Requesting Provider Phone\":\n  UC.Work(\"Requesting Provider\".telecom).value\n\ndefine \"Requesting Provider Address\":\n  (singleton from \"Requesting Provider\".address).line\n\ndefine \"Requesting Provider NPI\":\n  \"Requesting Provider\".identifier I \n  where I.system = 'http://hl7.org/fhir/sid/us-npi'\n  return I.value\n\ndefine \"Requesting Provider Fax\":\n  \"Requesting Provider\".telecom T\n  where T.system = 'fax'\n  return T.value\n\ndefine \"Servicing Provider\":\n  UCE.ServicingProvider(\"Service Request\")\n\ndefine \"Servicing Provider Name\":\n  \"Servicing Provider\".name\n\ndefine \"Servicing Provider Phone\":\n  UC.Work(\"Servicing Provider\".telecom).value\n\ndefine \"Servicing Provider Address\":\n  (singleton from \"Servicing Provider\".address).text\n\ndefine \"Servicing Provider NPI\":\n  \"Servicing Provider\".identifier I \n  where I.system = 'http://hl7.org/fhir/sid/us-npi'\n  return I.value\n\ndefine \"Servicing Provider Fax\":\n  \"Servicing Provider\".telecom T\n  where T.system = 'fax'\n  return T.value</code></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n        \n        \n        \n        <tr>\n          <td colspan=\"2\">\n            <table>\n              <tr><th><b>Content: </b> application/elm+xml</th></tr>\n              <tr><td><pre><code/></pre></td></tr>\n            </table>\n          </td>\n        </tr>\n        \n        \n    </table>\n</div>\n</div>"^^rdf:XMLLiteral
  ] ; # 
  fhir:extension ( [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm"^^xsd:anyURI ] ;
fhir:value [
a fhir:integer ;
fhir:v 3     ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg"^^xsd:anyURI ] ;
fhir:value [
a fhir:code ;
fhir:v "cds"     ]
  ] [
fhir:url [ fhir:v "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status"^^xsd:anyURI ] ;
fhir:value [
a fhir:code ;
fhir:v "informative"     ]
  ] ) ; # 
  fhir:url [ fhir:v "http://hl7.org/fhir/us/cql/Library/ExamplePatientAndCoverageInitialExpressions"^^xsd:anyURI] ; # 
  fhir:version [ fhir:v "1.0.0-ballot"] ; # 
  fhir:name [ fhir:v "ExamplePatientAndCoverageInitialExpressions"] ; # 
  fhir:title [ fhir:v "Expression Library for the Example Patient And Coverage Questionnaire"] ; # 
  fhir:status [ fhir:v "draft"] ; # 
  fhir:experimental [ fhir:v true] ; # 
  fhir:type [
    ( fhir:coding [
fhir:system [ fhir:v "http://terminology.hl7.org/CodeSystem/library-type"^^xsd:anyURI ] ;
fhir:code [ fhir:v "logic-library" ]     ] )
  ] ; # 
  fhir:date [ fhir:v "2025-09-10T20:00:05+00:00"^^xsd:dateTime] ; # 
  fhir:publisher [ fhir:v "HL7 International / Clinical Decision Support"] ; # 
  fhir:contact ( [
    ( fhir:telecom [
fhir:system [ fhir:v "url" ] ;
fhir:value [ fhir:v "http://www.hl7.org/Special/committees/dss" ]     ] )
  ] ) ; # 
  fhir:description [ fhir:v "This library defines initial expressions for use in populating answers to questions in the Example Patient And Coverage questionnaire."] ; # 
  fhir:jurisdiction ( [
    ( fhir:coding [
fhir:system [ fhir:v "urn:iso:std:iso:3166"^^xsd:anyURI ] ;
fhir:code [ fhir:v "US" ] ;
fhir:display [ fhir:v "United States of America" ]     ] )
  ] ) ; # 
  fhir:content ( [
fhir:contentType [ fhir:v "text/cql" ] ;
fhir:data [ fhir:v "bGlicmFyeSBFeGFtcGxlUGF0aWVudEFuZENvdmVyYWdlSW5pdGlhbEV4cHJlc3Npb25zCgp1c2luZyBVU0NvcmUgdmVyc2lvbiAnNy4wLjAnCnVzaW5nIEZISVIgdmVyc2lvbiAnNC4wLjEnCgppbmNsdWRlIGhsNy5maGlyLnV2LmNxbC5GSElSSGVscGVycyB2ZXJzaW9uICc0LjAuMScKaW5jbHVkZSBVU0NvcmVDb21tb24gY2FsbGVkIFVDCmluY2x1ZGUgVVNDb3JlRWxlbWVudHMgY2FsbGVkIFVDRQoKY29kZXN5c3RlbSAiSWRlbnRpZmllciBUeXBlIjogJ2h0dHA6Ly90ZXJtaW5vbG9neS5obDcub3JnL0NvZGVTeXN0ZW0vdjItMDIwMycKCmNvZGUgIk1lbWJlciBOdW1iZXIiOiAnTUInIGZyb20gIklkZW50aWZpZXIgVHlwZSIKY29kZSAiU3Vic2NyaWJlciBOdW1iZXIiOiAnU04nIGZyb20gIklkZW50aWZpZXIgVHlwZSIKCnBhcmFtZXRlciAiQ292ZXJhZ2UiIEZISVIuQ292ZXJhZ2UKcGFyYW1ldGVyICJTZXJ2aWNlUmVxdWVzdCIgRkhJUi5TZXJ2aWNlUmVxdWVzdAoKY29udGV4dCBQYXRpZW50CgpkZWZpbmUgIlJldHJpZXZlIFNlcnZpY2UgUmVxdWVzdCB0ZXN0IHBhcmFtZXRlciI6CiAgLy8gVGhlIFZTQ29kZSBleHRlbnNpb24gZG9lc24ndCBzdXBwb3J0IHBhcmFtZXRlcnMKICAvLyBXaGVuIGV4ZWN1dGluZyBDUUwgd2l0aCB0aGUgVlNDb2RlIGV4dGVuc2lvbiByZXRyaWV2ZSB0aGUgcmVzb3VyY2Ugc3BlY2lmaWMgZm9yIHRoZSB0ZXN0IGNhc2UKICAvLyAgIHRoZSBsaXN0IG9mIHJlc291cmNlIGlkcyBtYXRjaCB0aGUgcmVzb3VyY2VzIGZyb20gdGhlIHRlc3QgY2FzZSBmb2xkZXJzCiAgc2luZ2xldG9uIGZyb20gKFtGSElSLlNlcnZpY2VSZXF1ZXN0XSBTUiB3aGVyZSBTUi5pZCBpbiB7IAogICAgJ21pbmltYWwtc2VydmljZS1yZXF1ZXN0LWV4YW1wbGUnCiAgfSkKCmRlZmluZSAiU2VydmljZSBSZXF1ZXN0IjoKICBDb2FsZXNjZSgKICAgIFNlcnZpY2VSZXF1ZXN0LAogICAgIlJldHJpZXZlIFNlcnZpY2UgUmVxdWVzdCB0ZXN0IHBhcmFtZXRlciIKICApCgpkZWZpbmUgIlJldHJpZXZlIENvdmVyYWdlIHRlc3QgcGFyYW1ldGVyIjoKICAvLyBUaGUgVlNDb2RlIGV4dGVuc2lvbiBkb2Vzbid0IHN1cHBvcnQgcGFyYW1ldGVycwogIC8vIFdoZW4gZXhlY3V0aW5nIENRTCB3aXRoIHRoZSBWU0NvZGUgZXh0ZW5zaW9uIHJldHJpZXZlIHRoZSByZXNvdXJjZSBzcGVjaWZpYyBmb3IgdGhlIHRlc3QgY2FzZQogIC8vICAgdGhlIGxpc3Qgb2YgcmVzb3VyY2UgaWRzIG1hdGNoIHRoZSByZXNvdXJjZXMgZnJvbSB0aGUgdGVzdCBjYXNlIGZvbGRlcnMKICBzaW5nbGV0b24gZnJvbSAoW0ZISVIuQ292ZXJhZ2VdIENWIHdoZXJlIENWLmlkIGluIHsgCiAgICAnbWluaW1hbC1jb3ZlcmFnZS1leGFtcGxlJwogIH0pCgpkZWZpbmUgIk1lbWJlciBDb3ZlcmFnZSI6CiAgQ29hbGVzY2UoCiAgICBDb3ZlcmFnZSwKICAgICJSZXRyaWV2ZSBDb3ZlcmFnZSB0ZXN0IHBhcmFtZXRlciIKICApCgpkZWZpbmUgIlBhdGllbnQgTmFtZSI6CiAgVUNFLiJOYW1lIC0gRmlyc3QgTWlkZGxlKHMpIExhc3QiCgpkZWZpbmUgIkRhdGUgb2YgQmlydGgiOgogIFBhdGllbnQuYmlydGhEYXRlCgpkZWZpbmUgIkJpcnRoIFNleCI6CiAgUGF0aWVudC5iaXJ0aHNleAoKZGVmaW5lICJNZWRpY2FsIFJlY29yZCBOdW1iZXIiOgogIFVDRS4iTWVkaWNhbCBSZWNvcmQgTnVtYmVyIgoKZGVmaW5lICJQaG9uZSBOdW1iZXIiOgogIFVDLk1vYmlsZShQYXRpZW50LnRlbGVjb20pLnZhbHVlCgpkZWZpbmUgIkVtYWlsIEFkZHJlc3MiOgogIFVDLkVtYWlsKFBhdGllbnQudGVsZWNvbSkudmFsdWUKCmRlZmluZSAiQWRkcmVzcyI6CiAgKHNpbmdsZXRvbiBmcm9tIFBhdGllbnQuYWRkcmVzcykubGluZQoKZGVmaW5lICJDaXR5IjoKICBQYXRpZW50LmFkZHJlc3MuY2l0eQoKZGVmaW5lICJTdGF0ZSI6CiAgUGF0aWVudC5hZGRyZXNzLnN0YXRlCgpkZWZpbmUgIlBvc3RhbCBDb2RlIjoKICBQYXRpZW50LmFkZHJlc3MucG9zdGFsQ29kZQoKLy8gQ292ZXJhZ2UKLy8gZGVmaW5lICJDb3ZlcmFnZSI6Ci8vICAgRmlyc3QoY2xpbmljYWwgQyB3aGVyZSBDIGlzIEZISVIuQ292ZXJhZ2UpCgovLyBUT0RPOiBpcyB0aGVyZSBhIG5lZWQgdG8gY2hlY2sgZm9yIGNvdmVyYWdlIHBlcmlvZCBhbmQgb3JkZXI/IAovLyAgICAgICBhbHNvLCBkbyB3ZSBuZWVkIHRvIGNoZWNrIHRoYXQgdGhlIHBheW9yIG9yZ2FuaXphdGlvbiBpcyB0aGUgc2FtZSBhcyB0aGUgc291cmNlIG9mIHRoZSBwcmlvciBhdXRoIGZvcm0/CmRlZmluZSAiTWVtYmVyIElEIjoKICBVQ0UuTWVtYmVySUQoIk1lbWJlciBDb3ZlcmFnZSIpLnZhbHVlCgovLyBUT0RPOiBpcyB0aGVyZSBhIG5lZWQgdG8gY2hlY2sgZm9yIGNvdmVyYWdlIHBlcmlvZCBhbmQgb3JkZXI/Ci8vICAgICAgIGFsc28gZG8gd2UgbmVlZCB0byBjaGVjayB0aGF0IHRoZSBwYXlvciBvcmdhbml6YXRpb24gaXMgdGhlIHNhbWUgYXMgdGhlIHNvdXJjZSBvZiB0aGUgcHJpb3IgYXV0aCBmb3JtPwpkZWZpbmUgIlBvbGljeSBOdW1iZXIiOgogIFVDRS5Qb2xpY3lOdW1iZXIoIk1lbWJlciBDb3ZlcmFnZSIpLnZhbHVlCgpkZWZpbmUgIlJlcXVlc3RpbmcgUHJvdmlkZXIiOgogIFVDRS5SZXF1ZXN0aW5nUHJvdmlkZXIoIlNlcnZpY2UgUmVxdWVzdCIpCgpkZWZpbmUgIlJlcXVlc3RpbmcgUHJvdmlkZXIgTmFtZSI6CiAgIlJlcXVlc3RpbmcgUHJvdmlkZXIiLm5hbWUuZmFtaWx5CgpkZWZpbmUgIlJlcXVlc3RpbmcgUHJvdmlkZXIgUGhvbmUiOgogIFVDLldvcmsoIlJlcXVlc3RpbmcgUHJvdmlkZXIiLnRlbGVjb20pLnZhbHVlCgpkZWZpbmUgIlJlcXVlc3RpbmcgUHJvdmlkZXIgQWRkcmVzcyI6CiAgKHNpbmdsZXRvbiBmcm9tICJSZXF1ZXN0aW5nIFByb3ZpZGVyIi5hZGRyZXNzKS5saW5lCgpkZWZpbmUgIlJlcXVlc3RpbmcgUHJvdmlkZXIgTlBJIjoKICAiUmVxdWVzdGluZyBQcm92aWRlciIuaWRlbnRpZmllciBJIAogIHdoZXJlIEkuc3lzdGVtID0gJ2h0dHA6Ly9obDcub3JnL2ZoaXIvc2lkL3VzLW5waScKICByZXR1cm4gSS52YWx1ZQoKZGVmaW5lICJSZXF1ZXN0aW5nIFByb3ZpZGVyIEZheCI6CiAgIlJlcXVlc3RpbmcgUHJvdmlkZXIiLnRlbGVjb20gVAogIHdoZXJlIFQuc3lzdGVtID0gJ2ZheCcKICByZXR1cm4gVC52YWx1ZQoKZGVmaW5lICJTZXJ2aWNpbmcgUHJvdmlkZXIiOgogIFVDRS5TZXJ2aWNpbmdQcm92aWRlcigiU2VydmljZSBSZXF1ZXN0IikKCmRlZmluZSAiU2VydmljaW5nIFByb3ZpZGVyIE5hbWUiOgogICJTZXJ2aWNpbmcgUHJvdmlkZXIiLm5hbWUKCmRlZmluZSAiU2VydmljaW5nIFByb3ZpZGVyIFBob25lIjoKICBVQy5Xb3JrKCJTZXJ2aWNpbmcgUHJvdmlkZXIiLnRlbGVjb20pLnZhbHVlCgpkZWZpbmUgIlNlcnZpY2luZyBQcm92aWRlciBBZGRyZXNzIjoKICAoc2luZ2xldG9uIGZyb20gIlNlcnZpY2luZyBQcm92aWRlciIuYWRkcmVzcykudGV4dAoKZGVmaW5lICJTZXJ2aWNpbmcgUHJvdmlkZXIgTlBJIjoKICAiU2VydmljaW5nIFByb3ZpZGVyIi5pZGVudGlmaWVyIEkgCiAgd2hlcmUgSS5zeXN0ZW0gPSAnaHR0cDovL2hsNy5vcmcvZmhpci9zaWQvdXMtbnBpJwogIHJldHVybiBJLnZhbHVlCgpkZWZpbmUgIlNlcnZpY2luZyBQcm92aWRlciBGYXgiOgogICJTZXJ2aWNpbmcgUHJvdmlkZXIiLnRlbGVjb20gVAogIHdoZXJlIFQuc3lzdGVtID0gJ2ZheCcKICByZXR1cm4gVC52YWx1ZQ=="^^xsd:base64Binary ]
  ] [
fhir:contentType [ fhir:v "application/elm+xml" ]
  ] ) . #