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
| Official URL: https://icr.healthcampaigns.org/StructureDefinition/stock-accountability | Version: 0.1.0 | |||
| Draft as of 2026-08-20 | Computable Name: StockAccountability | |||
Vial/commodity accountability and wastage on a supply event — received / used / remaining / not-usable (expired/damaged) / returned, plus physical-vs-theoretical concordance and (vaccines) the VVM stage. Reusable for vaccines, drugs and ITNs; the ESPEN supervision Form 5 stock block (espen-v4 / §17.2 C2).
Context of Use
This extension may be used on the following element(s)
SupplyDelivery
Usage info
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.
This structure is derived from Extension
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Stock Accountability Constraints: icr-stock-ledger |
![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity received |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "received" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity used/administered/distributed |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "used" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity remaining in stock |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "remaining" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Expired / damaged / otherwise not usable |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "notUsable" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity returned to the next level |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "returned" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Does physical stock match the theoretical/recorded stock? |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "concordant" | |
![]() ![]() ![]() ![]() |
0..1 | boolean | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Vaccine vial monitor stage 1–4 (vaccines only) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "vvmStage" | |
![]() ![]() ![]() ![]() |
0..1 | integer | Value of extension | |
![]() ![]() |
1..1 | uri | "https://icr.healthcampaigns.org/StructureDefinition/stock-accountability" | |
![]() ![]() |
0..0 | Value of extension | ||
Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Stock Accountability Constraints: icr-stock-ledger |
![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity received |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "received" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity used/administered/distributed |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "used" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity remaining in stock |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "remaining" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Expired / damaged / otherwise not usable |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "notUsable" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity returned to the next level |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "returned" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Does physical stock match the theoretical/recorded stock? |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "concordant" | |
![]() ![]() ![]() ![]() |
0..1 | boolean | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Vaccine vial monitor stage 1–4 (vaccines only) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "vvmStage" | |
![]() ![]() ![]() ![]() |
0..1 | integer | Value of extension | |
![]() ![]() |
1..1 | uri | "https://icr.healthcampaigns.org/StructureDefinition/stock-accountability" | |
Documentation for this format | ||||
This structure is derived from Extension
Summary
Complex Extension: Vial/commodity accountability and wastage on a supply event — received / used / remaining / not-usable (expired/damaged) / returned, plus physical-vs-theoretical concordance and (vaccines) the VVM stage. Reusable for vaccines, drugs and ITNs; the ESPEN supervision Form 5 stock block (espen-v4 / §17.2 C2).
Differential View
This structure is derived from Extension
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Stock Accountability Constraints: icr-stock-ledger |
![]() ![]() |
Content/Rules for all slices | |||
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity received |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "received" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity used/administered/distributed |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "used" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity remaining in stock |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "remaining" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Expired / damaged / otherwise not usable |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "notUsable" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity returned to the next level |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "returned" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Does physical stock match the theoretical/recorded stock? |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "concordant" | |
![]() ![]() ![]() ![]() |
0..1 | boolean | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Vaccine vial monitor stage 1–4 (vaccines only) | |
![]() ![]() ![]() ![]() |
0..0 | Extension | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "vvmStage" | |
![]() ![]() ![]() ![]() |
0..1 | integer | Value of extension | |
![]() ![]() |
1..1 | uri | "https://icr.healthcampaigns.org/StructureDefinition/stock-accountability" | |
![]() ![]() |
0..0 | Value of extension | ||
Documentation for this format | ||||
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Extension | Stock Accountability Constraints: icr-stock-ledger |
![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity received |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "received" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity used/administered/distributed |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "used" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity remaining in stock |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "remaining" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Expired / damaged / otherwise not usable |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "notUsable" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Quantity returned to the next level |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "returned" | |
![]() ![]() ![]() ![]() |
0..1 | Quantity | Value of extension | |
![]() ![]() ![]() |
S | 0..1 | Extension | Does physical stock match the theoretical/recorded stock? |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "concordant" | |
![]() ![]() ![]() ![]() |
0..1 | boolean | Value of extension | |
![]() ![]() ![]() |
0..1 | Extension | Vaccine vial monitor stage 1–4 (vaccines only) | |
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() |
0..0 | Extension Slice: Unordered, Open by value:url | ||
![]() ![]() ![]() ![]() |
1..1 | uri | "vvmStage" | |
![]() ![]() ![]() ![]() |
0..1 | integer | Value of extension | |
![]() ![]() |
1..1 | uri | "https://icr.healthcampaigns.org/StructureDefinition/stock-accountability" | |
Documentation for this format | ||||
This structure is derived from Extension
Summary
Complex Extension: Vial/commodity accountability and wastage on a supply event — received / used / remaining / not-usable (expired/damaged) / returned, plus physical-vs-theoretical concordance and (vaccines) the VVM stage. Reusable for vaccines, drugs and ITNs; the ESPEN supervision Form 5 stock block (espen-v4 / §17.2 C2).
Other representations of profile: CSV, Excel, Schematron
| Id | Grade | Path(s) | Description | Expression |
| icr-stock-ledger | warning | Extension | Stock ledger identity: received = used + remaining + notUsable + returned (absent parts count as zero). Warning severity — a reconciliation gap is a data-quality signal worth surfacing, not always a recording error. |
extension('received').exists() and extension('used').exists() and extension('remaining').exists() implies extension('received').value.ofType(Quantity).value = extension('used').value.ofType(Quantity).value + extension('remaining').value.ofType(Quantity).value + iif(extension('notUsable').exists(), extension('notUsable').value.ofType(Quantity).value, 0) + iif(extension('returned').exists(), extension('returned').value.ofType(Quantity).value, 0)
|