SMART Guidelines L3 SOP
1.1.0 - ci-build
SMART Guidelines L3 SOP, published by WHO. This guide is not an authorized publication; it is the continuous build for version 1.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-ig-starter-kit and changes regularly. See the Directory of published versions
Authoring a L3 FHIR Implementation Guide involves taking the L2 input, using the recommended processes and tools, and creating, validating and publishing publishing L3 FHIR artifacts that correspond to the L2 specifications.
The L3 FHIR Implementation Guides are intended to be machine readable, but also will include narrative content that are human readable and shall speak to the L2 specifications covered in the FHIR IG being authored. More details about authoring narrative are included in this page.
The first step in L3 production is an input verification of the L2 content. L3 authors create the necessary artifacts to cover the entire L2 specification and demonstrate a working SMART Guideline. This includes several types of artifacts and possibly narrative content.
For WHO published L2 DAKs, each DAK will be represented as a GitHub repository along with a published PDF DAK word document. The GitHub repository shall contain the structured spreadsheets, bpmn files and more, that were authored during the publication process of the DAK. Authoring presumes the L2 content is available and consistent. It is possible that the L2 content gets changed, notably due to input from L3 authoring. It is important to track the versions of L2 content, especially when adapting L2 or L3 to a local implementation, in order to track changes and assess impact of those changes.
Content Type | L2 Representation | L2 Location |
---|---|---|
Health Interventions | Narrative | Published DAK PDF |
Generic Personas | Narrative | Published DAK PDF |
User Scenarios | Narrative | Published DAK PDF |
Processes | BPMN files | L2 DAK repository: input/business-processes/bpmn |
Data Elements | Spreadsheet | L2 DAK repository: input/dictionary |
Decision Tables | Spreadsheet | L2 DAK repository: input/decision-logic |
DMN files | L2 DAK repository: input/decision-logic/dmn | |
Scheduling Logic | Spreadsheet | L2 DAK repository: input/scheduling-logic |
Indicators | Spreadsheet | L2 DAK repository: input/indicators |
Functional Requirements | Spreadsheet | L2 DAK repository: input/system-requirements |
Non-functional Requirements | Spreadsheet | L2 DAK repository: input/system-requirements |
The table and diagram below show the content types that are to be created as part of the L3 authoring process.
Content Type | L3 Representation | L3 Location | Procedure |
---|---|---|---|
Health Interventions | n/a | n/a | n/a |
Generic Personas | ActorDefinition | input/actors | Actors |
User Scenarios | ExampleScenario | input/scenarios | Scenarios |
TestPlan | input/testing | Testing | |
TestScript | input/testing | Testing | |
Example instances | input/testing input/examples |
Examples | |
Processes | FHIR PlanDefinition | input/plandefinitions | Plan Definitions |
FHIR ActivityDefinition | input/processes input/activitydefinitions |
Activity definitions | |
Elements | Logical Data Model | input/models | Logical Models |
FHIR Questionnaire | input/questionnaires | Questionnaires | |
FHIR StructureMaps | input/maps | Structure Maps | |
FHIR ValueSet | input/valuesets | ValueSets | |
FHIR CodeSystem | input/codesystems | CodeSystems | |
FHIR Profile | input/profiles | Profiles | |
ConceptMap | input/conceptmaps | Concept Maps | |
CQL Concepts | input/cql | CQL | |
CQL Data Elements | input/cql | ||
Decision Tables | FHIR PlanDefinition | input/plandefinitions | Decision Tables |
FHIR Library | input/libraries | Concept Maps | |
CQL | input/cql | CQL | |
Indicators and Measures | FHIR Measure | input/measures | Indicators |
CQL IndicatorLogic | input/cql | CQL | |
Functional Requirements | FHIR Requirements | input/requirements | Requirements |
Non-functional Requirements | FHIR Requirements | input/requirements | Requirements |
While the exact authoring steps depend on the inputs, the key sequence could normally consist of the following steps: