Package com.ibm.fhir.ecqm.common
Class MeasureEvaluation<BaseT,MeasureT extends BaseT,MeasureGroupComponentT extends BaseT,MeasureGroupPopulationComponentT extends BaseT,MeasureSupplementalDataComponentT extends BaseT,MeasureReportT extends BaseT,MeasureReportGroupComponentT extends BaseT,MeasureReportGroupPopulationComponentT extends BaseT,CodingT extends BaseT,ExtensionT extends BaseT,ReferenceT extends BaseT,ListResourceT extends ResourceT,ListEntryT extends BaseT,ResourceT,SubjectT extends ResourceT>
- java.lang.Object
 - 
- com.ibm.fhir.ecqm.common.MeasureEvaluation<BaseT,MeasureT,MeasureGroupComponentT,MeasureGroupPopulationComponentT,MeasureSupplementalDataComponentT,MeasureReportT,MeasureReportGroupComponentT,MeasureReportGroupPopulationComponentT,CodingT,ExtensionT,ReferenceT,ListResourceT,ListEntryT,ResourceT,SubjectT>
 
 
- 
- Direct Known Subclasses:
 R4MeasureEvaluation
public abstract class MeasureEvaluation<BaseT,MeasureT extends BaseT,MeasureGroupComponentT extends BaseT,MeasureGroupPopulationComponentT extends BaseT,MeasureSupplementalDataComponentT extends BaseT,MeasureReportT extends BaseT,MeasureReportGroupComponentT extends BaseT,MeasureReportGroupPopulationComponentT extends BaseT,CodingT extends BaseT,ExtensionT extends BaseT,ReferenceT extends BaseT,ListResourceT extends ResourceT,ListEntryT extends BaseT,ResourceT,SubjectT extends ResourceT> extends Object
 
- 
- 
Field Summary
Fields Modifier and Type Field Description protected org.opencds.cqf.cql.engine.execution.Contextcontextstatic StringEXT_DAVINCI_POPULATION_REFERENCEprotected Function<ResourceT,String>getIdprotected MeasureTmeasureprotected org.opencds.cqf.cql.engine.runtime.IntervalmeasurementPeriodprotected StringpackageNameprotected StringsubjectOrPractitionerIdstatic StringURL_CODESYSTEM_MEASURE_POPULATION 
- 
Constructor Summary
Constructors Constructor Description MeasureEvaluation(org.opencds.cqf.cql.engine.execution.Context context, MeasureT measure, org.opencds.cqf.cql.engine.runtime.Interval measurementPeriod, String packageName, Function<ResourceT,String> getId)MeasureEvaluation(org.opencds.cqf.cql.engine.execution.Context context, MeasureT measure, org.opencds.cqf.cql.engine.runtime.Interval measurementPeriod, String packageName, Function<ResourceT,String> getId, String patientOrPractitionerId) 
- 
Method Summary
 
 - 
 
- 
- 
Field Detail
- 
URL_CODESYSTEM_MEASURE_POPULATION
public static final String URL_CODESYSTEM_MEASURE_POPULATION
- See Also:
 - Constant Field Values
 
 
- 
EXT_DAVINCI_POPULATION_REFERENCE
public static final String EXT_DAVINCI_POPULATION_REFERENCE
- See Also:
 - Constant Field Values
 
 
- 
context
protected org.opencds.cqf.cql.engine.execution.Context context
 
- 
subjectOrPractitionerId
protected String subjectOrPractitionerId
 
- 
measurementPeriod
protected org.opencds.cqf.cql.engine.runtime.Interval measurementPeriod
 
- 
packageName
protected String packageName
 
 - 
 
- 
Method Detail
- 
getMeasureScoring
protected abstract MeasureScoring getMeasureScoring()
 
- 
getCriteriaExpression
protected abstract String getCriteriaExpression(MeasureGroupPopulationComponentT mgpc)
 
- 
setGroupScore
protected abstract void setGroupScore(MeasureReportGroupComponentT mrgc, Double score)
 
- 
getPopulationType
protected abstract MeasurePopulationType getPopulationType(MeasureGroupPopulationComponentT mgpc)
 
- 
getGroup
protected abstract Iterable<MeasureGroupComponentT> getGroup()
 
- 
getPopulation
protected abstract Iterable<MeasureGroupPopulationComponentT> getPopulation(MeasureGroupComponentT mgc)
 
- 
addPopulationReport
protected abstract void addPopulationReport(MeasureReportT report, MeasureReportGroupComponentT reportGroup, MeasureGroupPopulationComponentT populationCriteria, int populationCount, Iterable<SubjectT> subjectPopulation)
 
- 
createMeasureReport
protected abstract MeasureReportT createMeasureReport(String status, MeasureReportType type, org.opencds.cqf.cql.engine.runtime.Interval measurementPeriod, List<SubjectT> subjects)
 
- 
createReportGroup
protected abstract MeasureReportGroupComponentT createReportGroup(String id)
 
- 
getGroupId
protected abstract String getGroupId(MeasureGroupComponentT group)
 
- 
addReportGroup
protected abstract void addReportGroup(MeasureReportT report, MeasureReportGroupComponentT group)
 
- 
getSupplementalData
protected abstract List<MeasureSupplementalDataComponentT> getSupplementalData(MeasureT measure)
 
- 
getSDEExpression
protected abstract String getSDEExpression(MeasureSupplementalDataComponentT sdeItem)
 
- 
getSDECoding
protected abstract CodingT getSDECoding(MeasureSupplementalDataComponentT sdeItem)
 
- 
isCoding
protected abstract boolean isCoding(Object obj)
 
- 
createPatientObservation
protected abstract ResourceT createPatientObservation(MeasureT measure, String populationId, CodingT coding)
 
- 
createPopulationObservation
protected abstract ResourceT createPopulationObservation(MeasureT measure, String populationId, CodingT coding, Integer value)
 
- 
addEvaluatedResource
protected abstract void addEvaluatedResource(MeasureReportT report, ResourceT resource)
 
- 
addContained
protected abstract void addContained(MeasureReportT report, ResourceT resource)
 
- 
getExtensionCoding
protected abstract CodingT getExtensionCoding(SubjectT patient, String category, String code)
Retrieve the coding from an extension that that looks like the following... { "url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-race", "extension": [ { "url": "ombCategory", "valueCoding": { "system": "urn:oid:2.16.840.1.113883.6.238", "code": "2054-5", "display": "Black or African American" } } ] } 
- 
createCodingExtension
protected abstract ExtensionT createCodingExtension(String url, String codeSystem, String code)
 
- 
createReference
protected abstract ReferenceT createReference(String resourceId)
 
- 
createListResource
protected abstract ListResourceT createListResource(Collection<ListEntryT> entries)
 
- 
createListEntry
protected abstract ListEntryT createListEntry(ReferenceT reference)
 
- 
addExtension
protected abstract void addExtension(ReferenceT resource, ExtensionT extension)
 
- 
setEvaluatedResources
protected abstract void setEvaluatedResources(MeasureReportT report, Collection<ReferenceT> evaluatedResources)
 
- 
evaluate
public MeasureReportT evaluate(MeasureReportType type)
 
- 
evaluatePatientMeasure
protected MeasureReportT evaluatePatientMeasure()
 
- 
evaluateSubjectListMeasure
protected MeasureReportT evaluateSubjectListMeasure()
 
- 
evaluatePatientListMeasure
protected MeasureReportT evaluatePatientListMeasure()
 
- 
evaluatePopulationMeasure
public MeasureReportT evaluatePopulationMeasure()
 
 - 
 
 -