Integrated Campaign Registry (ICR) Implementation Guide
0.1.0 - ci-build
Integrated Campaign Registry (ICR) Implementation Guide - Local Development build (v0.1.0) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions
{
"resourceType": "https://sql-on-fhir.org/ig/StructureDefinition/ViewDefinition",
"url": "https://icr.healthcampaigns.org/ViewDefinition/IcrCoverage",
"title": "ICR coverage reports",
"description": "One row per coverage report (MeasureReport) × result group: the **results** —\nthe number reached and coverage, whether from administrative tallies\n(`source = administrative`), a post-campaign survey (`survey`) or LQAS (`lqas`),\nand whether preliminary (`lineage = realtime`) or final (`reconciled`). What\nis counted depends on the Measure: people for the person Measures, households\nfor `icr-household-coverage`, implementation units for geographic coverage and\nreadiness. Most coverage Measures have one group (`group_code` empty);\n`icr-household-coverage` has two, `distribution` and `registration`, so its\nreports give two rows, keyed by `report_id` + `group_code` (join null-safely: `group_code IS NOT DISTINCT FROM`, since single-group reports leave it empty). Joined to the\ncampaign calendar on `campaign_id` this gives reach and coverage per round;\ngrouping by `campaign_id`, `measure` and `source` puts administrative and\nsurvey figures side by side. Strata (sex, age band, delivery strategy,\ndisposition, geography) are in the companion view `IcrCoverageStrata`, keyed\nthe same way.",
"name": "IcrCoverage",
"status": "draft",
"fhirVersion": [
"4.0.1"
],
"resource": "MeasureReport",
"where": [
{
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/coverage-source').exists()",
"description": "Only ICR coverage reports (administrative, survey, LQAS) — not cost or readiness reports"
}
],
"select": [
{
"column": [
{
"name": "report_id",
"path": "getResourceKey()",
"type": "id"
},
{
"name": "campaign_id",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/campaign').value.ofType(Reference).getReferenceKey(CarePlan)",
"type": "string",
"description": "The campaign (round) this report is about — join key to IcrCampaignCalendar"
},
{
"name": "location_id",
"path": "subject.getReferenceKey(Location)",
"type": "string"
},
{
"name": "measure",
"path": "measure",
"type": "canonical"
},
{
"name": "source",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/coverage-source').value.ofType(code)",
"type": "code",
"description": "administrative | survey | lqas"
},
{
"name": "lineage",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/realtime-vs-reconciled').value.ofType(code)",
"type": "code",
"description": "realtime (preliminary, in-campaign) | reconciled (final)"
},
{
"name": "denominator_type",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/denominator-type').value.ofType(code)",
"type": "code"
},
{
"name": "status",
"path": "status",
"type": "code"
},
{
"name": "period_start",
"path": "period.start",
"type": "date"
},
{
"name": "period_end",
"path": "period.end",
"type": "date"
},
{
"name": "reported",
"path": "date",
"type": "dateTime"
},
{
"name": "ci_low",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/confidence-interval').extension('low').value.ofType(decimal)",
"type": "decimal"
},
{
"name": "ci_high",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/confidence-interval').extension('high').value.ofType(decimal)",
"type": "decimal"
},
{
"name": "sample_design",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/sample-design').value.ofType(string)",
"type": "string"
},
{
"name": "reporter",
"path": "reporter.display",
"type": "string"
},
{
"name": "activity",
"path": "extension('https://icr.healthcampaigns.org/StructureDefinition/campaign-activity').value.ofType(canonical)",
"type": "canonical",
"description": "In an integrated campaign, the activity this report covers — join with campaign_id to IcrCampaignActivity for that activity's target. Empty for a single-intervention campaign"
}
]
},
{
"forEachOrNull": "group",
"column": [
{
"name": "group_code",
"path": "code.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-coverage-group-cs').first().code",
"type": "code",
"description": "Which result of the Measure this row is (ICRCoverageGroupCS: distribution | registration for icr-household-coverage); empty for a single-group Measure. With report_id, the key of the row"
},
{
"name": "group_label",
"path": "code.coding.where(system = 'https://icr.healthcampaigns.org/CodeSystem/icr-coverage-group-cs').first().display",
"type": "string"
},
{
"name": "numerator",
"path": "population.where(code.coding.code = 'numerator').first().count",
"type": "integer",
"description": "The number reached, in the Measure's unit: people (administrative person Measures), households (icr-household-coverage: households served or registered), implementation units (geographic coverage, readiness), or sampled and covered (survey / LQAS)"
},
{
"name": "denominator",
"path": "population.where(code.coding.code = 'denominator').first().count",
"type": "integer",
"description": "The number targeted, in the same unit: the planning denominator (administrative; households for icr-household-coverage) or the sample size (survey / LQAS)"
},
{
"name": "score",
"path": "measureScore.value",
"type": "decimal",
"description": "Coverage as a proportion 0–1 (the ICR coverage Measures are proportion-scored; multiply by 100 for percent)"
}
]
}
]
}