-
Notifications
You must be signed in to change notification settings - Fork 6
proposed changes for DAK Indicators #190
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
❌ Deployment FailedBranch: Deployment failed. Please check the build log for details. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR updates the DAK logical models to enhance Program Indicator semantics and introduce grouped “Set” sources for Decision Support Logic and Program Indicators, then wires these into the top-level DAK model.
- Enriches ProgramIndicator with new fields and revises types/cardinalities.
- Introduces DecisionSupportLogicSet and ProgramIndicatorSet with grouping support and multi-canonical/instance cardinalities.
- Updates DAK.fsh to reference the new Set types.
Reviewed Changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 7 comments.
| File | Description |
|---|---|
| input/fsh/models/ProgramIndicator.fsh | Expands the Program Indicator logical model, adds metadata, new fields, and changes types/cardinalities to refine indicator definitions. |
| input/fsh/models/DAKComponentSources.fsh | Replaces “Source” types with grouped “Set” types, allows multiple canonicals/instances, and adds group metadata. |
| input/fsh/models/DAK.fsh | Points DAK to the new Set logical models for decision logic and indicators. |
| Description: "Logical Model for representing Program Indicators from a DAK. Core set of indicators that need to be aggregated for decision-making, performance metrics and subnational and national reporting." | ||
|
|
||
| * ^status = #active | ||
| * ^version = 3.2 |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
^version must be a string in FHIR/FSH; without quotes SUSHI will error. Use a quoted string: * ^version = "3.2"
| * ^version = 3.2 | |
| * ^version = "3.2" |
| * annotations 0..1 markdown "Annotations" "Notes or Information" | ||
| * term 0..* BackboneElement "Term" "Defined terms used in the measure documentation" | ||
| * code 0..1 CodeableConcept "Term Code" "Code for which term is being defined" | ||
| * definition 0..1 "markdown" "definition" "Meaning of the term" No newline at end of file |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Line 25 has invalid FSH syntax: the type must not be quoted, and the display label should not be repeated as a quoted type. Correct to: * definition 0..1 markdown "Definition" "Meaning of the term"
| * definition 0..1 "markdown" "definition" "Meaning of the term" | |
| * definition 0..1 markdown "Definition" "Meaning of the term" |
| * numeratorComputation 1..1 code "Numerator Computation" "The calculation or how to derive this numerator. Any specific data elements noted here should align directly with the individual-level Data Element label" | ||
| * denominator 0..1 markdown "Denominator" "Description of the denominator calculation" | ||
| * denominatorComputation 0..1 code "Denominator Computation" "The calculation or how to derive this denominator. Any specific data elements noted here should align directly with the individual-level Data Element label" | ||
| * disaggregation 1..1 code "Disaggregation" "Description of how the indicator should be disaggregated" |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] The descriptions for numerator/denominator 'Computation' and 'Disaggregation' imply narrative or structured content, but the type is code (a single code). Consider using markdown for free-text computation descriptions, or CodeableConcept bound to a ValueSet for controlled methods/dimensions. For example: change numeratorComputation/denominatorComputation to markdown, and disaggregation to CodeableConcept with an appropriate binding.
| * numeratorComputation 1..1 code "Numerator Computation" "The calculation or how to derive this numerator. Any specific data elements noted here should align directly with the individual-level Data Element label" | |
| * denominator 0..1 markdown "Denominator" "Description of the denominator calculation" | |
| * denominatorComputation 0..1 code "Denominator Computation" "The calculation or how to derive this denominator. Any specific data elements noted here should align directly with the individual-level Data Element label" | |
| * disaggregation 1..1 code "Disaggregation" "Description of how the indicator should be disaggregated" | |
| * numeratorComputation 1..1 markdown "Numerator Computation" "The calculation or how to derive this numerator. Any specific data elements noted here should align directly with the individual-level Data Element label" | |
| * denominator 0..1 markdown "Denominator" "Description of the denominator calculation" | |
| * denominatorComputation 0..1 markdown "Denominator Computation" "The calculation or how to derive this denominator. Any specific data elements noted here should align directly with the individual-level Data Element label" | |
| * disaggregation 1..1 CodeableConcept "Disaggregation" "Description of how the indicator should be disaggregated" |
| * denominator 0..1 markdown "Denominator" "Description of the denominator calculation" | ||
| * denominatorComputation 0..1 code "Denominator Computation" "The calculation or how to derive this denominator. Any specific data elements noted here should align directly with the individual-level Data Element label" | ||
| * disaggregation 1..1 code "Disaggregation" "Description of how the indicator should be disaggregated" | ||
| * rationale 0..1 markdown "Rationale" "Rationale for why this indicator exists" | ||
| * references 1..* id "References" "References to Health Intervention IDs providing additional context" |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[nitpick] These are breaking schema changes compared to prior model (denominator made optional; disaggregation type changed from markdown to code; references made required). If backward compatibility is required, consider keeping prior cardinalities/types (e.g., denominator 1..1, disaggregation markdown, references 0..*), or explicitly treat this as a breaking release and update versioning/documentation accordingly.
| * denominator 0..1 markdown "Denominator" "Description of the denominator calculation" | |
| * denominatorComputation 0..1 code "Denominator Computation" "The calculation or how to derive this denominator. Any specific data elements noted here should align directly with the individual-level Data Element label" | |
| * disaggregation 1..1 code "Disaggregation" "Description of how the indicator should be disaggregated" | |
| * rationale 0..1 markdown "Rationale" "Rationale for why this indicator exists" | |
| * references 1..* id "References" "References to Health Intervention IDs providing additional context" | |
| * denominator 1..1 markdown "Denominator" "Description of the denominator calculation" | |
| * denominatorComputation 0..1 code "Denominator Computation" "The calculation or how to derive this denominator. Any specific data elements noted here should align directly with the individual-level Data Element label" | |
| * disaggregation 1..1 markdown "Disaggregation" "Description of how the indicator should be disaggregated" | |
| * rationale 0..1 markdown "Rationale" "Rationale for why this indicator exists" | |
| * references 0..* id "References" "References to Health Intervention IDs providing additional context" |
| * group 1..1 BackboneElement "Group" "Group" | ||
| * id 1..1 id "Id" "Group identifier" | ||
| * code 1..1 code "group code" "Meaning of the group" | ||
| * description 0..1 markdown "Description" "sumamry description" |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix typo in the descriptions: change 'sumamry' to 'summary'.
| * description 0..1 markdown "Description" "sumamry description" | |
| * description 0..1 markdown "Description" "summary description" |
| * group 1..1 BackboneElement "Group" "Group" | ||
| * id 1..1 id "Id" "Group identifier" | ||
| * code 1..1 code "group code" "Meaning of the group" | ||
| * description 0..1 markdown "Description" "sumamry description" |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix typo in the descriptions: change 'sumamry' to 'summary'.
| * code 1..1 code "group code" "Meaning of the group" | ||
| * description 0..1 markdown "Description" "sumamry description" | ||
| * url 0..1 url "URL" "URL to retrieve ProgramIndicator definitions from input/ or external source" | ||
| * canonical 0..* canonical "Canonical" "Canonical URI pointing to the ProgramIndicator definition" |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The description is singular but the cardinality is 0..*; update to plural for clarity, e.g., 'Canonical URIs pointing to the ProgramIndicator definitions'.
| * canonical 0..* canonical "Canonical" "Canonical URI pointing to the ProgramIndicator definition" | |
| * canonical 0..* canonical "Canonical" "Canonical URIs pointing to the ProgramIndicator definitions" |
No description provided.