UNPKG

@phema/cql-execution

Version:

An execution framework for the Clinical Quality Language (CQL)

69 lines (66 loc) 3.54 kB
<?xml version="1.0" encoding="UTF-8"?> <library xmlns="urn:hl7-org:elm:r1" xmlns:t="urn:hl7-org:elm-types:r1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:fhir="http://hl7.org/fhir" xmlns:qdm43="urn:healthit-gov:qdm:v4_3" xmlns:qdm53="urn:healthit-gov:qdm:v5_3" xmlns:a="urn:hl7-org:cql-annotations:r1"> <identifier id="AgeAtMP" version="1"/> <schemaIdentifier id="urn:hl7-org:elm" version="r1"/> <usings> <def localIdentifier="System" uri="urn:hl7-org:elm-types:r1"/> <def localIdentifier="QUICK" uri="http://hl7.org/fhir"/> </usings> <parameters> <def name="MeasurementPeriod" accessLevel="Public"> <default lowClosed="true" highClosed="false" xsi:type="Interval"> <low xsi:type="DateTime"> <year valueType="t:Integer" value="2013" xsi:type="Literal"/> <month valueType="t:Integer" value="1" xsi:type="Literal"/> <day valueType="t:Integer" value="1" xsi:type="Literal"/> <hour valueType="t:Integer" value="0" xsi:type="Literal"/> <minute valueType="t:Integer" value="0" xsi:type="Literal"/> <second valueType="t:Integer" value="0" xsi:type="Literal"/> <millisecond valueType="t:Integer" value="0" xsi:type="Literal"/> </low> <high xsi:type="DateTime"> <year valueType="t:Integer" value="2014" xsi:type="Literal"/> <month valueType="t:Integer" value="1" xsi:type="Literal"/> <day valueType="t:Integer" value="1" xsi:type="Literal"/> <hour valueType="t:Integer" value="0" xsi:type="Literal"/> <minute valueType="t:Integer" value="0" xsi:type="Literal"/> <second valueType="t:Integer" value="0" xsi:type="Literal"/> <millisecond valueType="t:Integer" value="0" xsi:type="Literal"/> </high> </default> </def> </parameters> <statements> <def name="Patient" context="Patient"> <expression xsi:type="SingletonFrom"> <operand dataType="fhir:Patient" templateId="patient-qicore-qicore-patient" xsi:type="Retrieve"/> </expression> </def> <def name="InDemographic" context="Patient" accessLevel="Public"> <expression xsi:type="And"> <operand xsi:type="GreaterOrEqual"> <operand precision="Year" xsi:type="CalculateAgeAt"> <operand path="birthDate" xsi:type="Property"> <source name="Patient" xsi:type="ExpressionRef"/> </operand> <operand xsi:type="Start"> <operand name="MeasurementPeriod" xsi:type="ParameterRef"/> </operand> </operand> <operand valueType="t:Integer" value="2" xsi:type="Literal"/> </operand> <operand xsi:type="Less"> <operand precision="Year" xsi:type="CalculateAgeAt"> <operand path="birthDate" xsi:type="Property"> <source name="Patient" xsi:type="ExpressionRef"/> </operand> <operand xsi:type="Start"> <operand name="MeasurementPeriod" xsi:type="ParameterRef"/> </operand> </operand> <operand valueType="t:Integer" value="18" xsi:type="Literal"/> </operand> </expression> </def> </statements> </library>