SMART Base
0.2.0 - ci-build

SMART Base, published by WHO. This guide is not an authorized publication; it is the continuous build for version 0.2.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/WorldHealthOrganization/smart-base/ and changes regularly. See the Directory of published versions

Logical Model: DAK - Detailed Descriptions

Active as of 2025-09-23

Definitions for the DAK logical model.

Guidance on how to interpret the contents of this table can be foundhere

0. DAK
Definition

Logical Model for representing a complete Digital Adaptation Kit (DAK) with metadata and all 9 DAK components

ShortDigital Adaptation Kit (DAK)
Control0..*
Is Modifierfalse
Logical ModelInstances of this logical model are not marked to be the target of a Reference
2. DAK.id
Definition

Identifier for the DAK (e.g., smart.who.int.base)

ShortDAK ID
Control1..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
4. DAK.name
Definition

Short name for the DAK (e.g., Base)

ShortDAK Name
Control1..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
6. DAK.title
Definition

Full title of the DAK (e.g., SMART Base)

ShortDAK Title
Control1..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
8. DAK.description[x]
Definition

Description of the DAK - either Markdown content or a URI to a Markdown file (absolute or relative to repository root)

ShortDAK Description
Control1..1
TypeChoice of: string, uri
[x] NoteSeeChoice of Data Typesfor further information about how to use [x]
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
10. DAK.version
Definition

Version of the DAK

ShortDAK Version
NoteThis is a business version Id, not a resource version Id (see discussion)
Control1..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
12. DAK.status
Definition

Publication status of the DAK

ShortDAK Status
Control1..1
Typecode
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
14. DAK.publicationUrl
Definition

Canonical URL for the DAK (e.g., http://smart.who.int/base)

ShortPublication URL
Control1..1
Typeurl
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
16. DAK.license
Definition

License under which the DAK is published

ShortLicense
Control1..1
Typecode
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
18. DAK.copyrightYear
Definition

Year or year range for copyright

ShortCopyright Year
Control1..1
Typestring
Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
20. DAK.publisher
Definition

Organization responsible for publishing the DAK

ShortPublisher
Control1..1
TypeBackboneElement
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
22. DAK.publisher.id
Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

ShortUnique id for inter-element referencing
Control0..1
Typestring
Is Modifierfalse
XML FormatIn the XML format, this property is represented as an attribute.
Summaryfalse
24. DAK.publisher.extension
Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

ShortAdditional content defined by implementations
Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Control0..*
TypeExtension
Is Modifierfalse
Summaryfalse
Alternate Namesextensions, user content
Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
SlicingThis element introduces a set of slices on DAK.publisher.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
  • value @ url
  • 26. DAK.publisher.modifierExtension
    Definition

    May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

    Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

    ShortExtensions that cannot be ignored even if unrecognized
    Comments

    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

    Control0..*
    TypeExtension
    Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
    Summarytrue
    Requirements

    Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

    Alternate Namesextensions, user content, modifiers
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    28. DAK.publisher.name
    Definition

    Name of the publishing organization

    ShortPublisher Name
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    30. DAK.publisher.url
    Definition

    URL of the publishing organization

    ShortPublisher URL
    Control0..1
    Typeurl
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    32. DAK.healthInterventions
    Definition

    Overview of the health interventions and WHO, regional or national recommendations included within the DAK

    ShortHealth Interventions and Recommendations
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/HealthInterventions
    34. DAK.personas
    Definition

    Depiction of the human and system actors

    ShortGeneric Personas
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/GenericPersona
    36. DAK.userScenarios
    Definition

    Narratives that describe how the different personas may interact with each other

    ShortUser Scenarios
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/UserScenario
    38. DAK.businessProcesses
    Definition

    Business processes and workflows for achieving health programme objectives

    ShortGeneric Business Processes and Workflows
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/BusinessProcessWorkflow
    40. DAK.dataElements
    Definition

    Data elements required throughout the different points of a workflow

    ShortCore Data Elements
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/CoreDataElement
    42. DAK.decisionLogic
    Definition

    Decision-support logic and algorithms to support appropriate service delivery

    ShortDecision-Support Logic
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/DecisionSupportLogic
    44. DAK.indicators
    Definition

    Core set of indicators for decision-making, performance metrics and reporting

    ShortProgram Indicators
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/ProgramIndicator
    46. DAK.requirements
    Definition

    High-level list of core functions and capabilities that the system must have

    ShortFunctional and Non-Functional Requirements
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/Requirements
    48. DAK.testScenarios
    Definition

    Set of test scenarios to validate an implementation of the DAK

    ShortTest Scenarios
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/TestScenario

    Guidance on how to interpret the contents of this table can be foundhere

    0. DAK
    Definition

    Logical Model for representing a complete Digital Adaptation Kit (DAK) with metadata and all 9 DAK components

    ShortDigital Adaptation Kit (DAK)
    Logical ModelInstances of this logical model are not marked to be the target of a Reference
    2. DAK.id
    Definition

    Identifier for the DAK (e.g., smart.who.int.base)

    ShortDAK ID
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    4. DAK.name
    Definition

    Short name for the DAK (e.g., Base)

    ShortDAK Name
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    6. DAK.title
    Definition

    Full title of the DAK (e.g., SMART Base)

    ShortDAK Title
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    8. DAK.description[x]
    Definition

    Description of the DAK - either Markdown content or a URI to a Markdown file (absolute or relative to repository root)

    ShortDAK Description
    Control1..1
    TypeChoice of: string, uri
    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    10. DAK.version
    Definition

    Version of the DAK

    ShortDAK Version
    NoteThis is a business version Id, not a resource version Id (see discussion)
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    12. DAK.status
    Definition

    Publication status of the DAK

    ShortDAK Status
    Control1..1
    Typecode
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    14. DAK.publicationUrl
    Definition

    Canonical URL for the DAK (e.g., http://smart.who.int/base)

    ShortPublication URL
    Control1..1
    Typeurl
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    16. DAK.license
    Definition

    License under which the DAK is published

    ShortLicense
    Control1..1
    Typecode
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    18. DAK.copyrightYear
    Definition

    Year or year range for copyright

    ShortCopyright Year
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    20. DAK.publisher
    Definition

    Organization responsible for publishing the DAK

    ShortPublisher
    Control1..1
    TypeBackboneElement
    22. DAK.publisher.name
    Definition

    Name of the publishing organization

    ShortPublisher Name
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    24. DAK.publisher.url
    Definition

    URL of the publishing organization

    ShortPublisher URL
    Control0..1
    Typeurl
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    26. DAK.healthInterventions
    Definition

    Overview of the health interventions and WHO, regional or national recommendations included within the DAK

    ShortHealth Interventions and Recommendations
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/HealthInterventions
    28. DAK.personas
    Definition

    Depiction of the human and system actors

    ShortGeneric Personas
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/GenericPersona
    30. DAK.userScenarios
    Definition

    Narratives that describe how the different personas may interact with each other

    ShortUser Scenarios
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/UserScenario
    32. DAK.businessProcesses
    Definition

    Business processes and workflows for achieving health programme objectives

    ShortGeneric Business Processes and Workflows
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/BusinessProcessWorkflow
    34. DAK.dataElements
    Definition

    Data elements required throughout the different points of a workflow

    ShortCore Data Elements
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/CoreDataElement
    36. DAK.decisionLogic
    Definition

    Decision-support logic and algorithms to support appropriate service delivery

    ShortDecision-Support Logic
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/DecisionSupportLogic
    38. DAK.indicators
    Definition

    Core set of indicators for decision-making, performance metrics and reporting

    ShortProgram Indicators
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/ProgramIndicator
    40. DAK.requirements
    Definition

    High-level list of core functions and capabilities that the system must have

    ShortFunctional and Non-Functional Requirements
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/Requirements
    42. DAK.testScenarios
    Definition

    Set of test scenarios to validate an implementation of the DAK

    ShortTest Scenarios
    Control0..*
    Typehttp://smart.who.int/base/StructureDefinition/TestScenario

    Guidance on how to interpret the contents of this table can be foundhere

    0. DAK
    Definition

    Logical Model for representing a complete Digital Adaptation Kit (DAK) with metadata and all 9 DAK components

    ShortDigital Adaptation Kit (DAK)
    Control0..*
    Is Modifierfalse
    Logical ModelInstances of this logical model are not marked to be the target of a Reference
    2. DAK.id
    Definition

    Identifier for the DAK (e.g., smart.who.int.base)

    ShortDAK ID
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    4. DAK.name
    Definition

    Short name for the DAK (e.g., Base)

    ShortDAK Name
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    6. DAK.title
    Definition

    Full title of the DAK (e.g., SMART Base)

    ShortDAK Title
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    8. DAK.description[x]
    Definition

    Description of the DAK - either Markdown content or a URI to a Markdown file (absolute or relative to repository root)

    ShortDAK Description
    Control1..1
    TypeChoice of: string, uri
    [x] NoteSeeChoice of Data Typesfor further information about how to use [x]
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    10. DAK.version
    Definition

    Version of the DAK

    ShortDAK Version
    NoteThis is a business version Id, not a resource version Id (see discussion)
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    12. DAK.status
    Definition

    Publication status of the DAK

    ShortDAK Status
    Control1..1
    Typecode
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    14. DAK.publicationUrl
    Definition

    Canonical URL for the DAK (e.g., http://smart.who.int/base)

    ShortPublication URL
    Control1..1
    Typeurl
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    16. DAK.license
    Definition

    License under which the DAK is published

    ShortLicense
    Control1..1
    Typecode
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    18. DAK.copyrightYear
    Definition

    Year or year range for copyright

    ShortCopyright Year
    Control1..1
    Typestring
    Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
    20. DAK.publisher
    Definition

    Organization responsible for publishing the DAK

    ShortPublisher
    Control1..1
    TypeBackboneElement
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    22. DAK.publisher.id
    Definition

    Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

    ShortUnique id for inter-element referencing
    Control0..1
    Typestring
    Is Modifierfalse
    XML FormatIn the XML format, this property is represented as an attribute.
    Summaryfalse
    24. DAK.publisher.extension
    Definition

    May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

    ShortAdditional content defined by implementations
    Comments

    There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

    Control0..*
    TypeExtension
    Is Modifierfalse
    Summaryfalse
    Alternate Namesextensions, user content
    Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
    ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
    SlicingThis element introduces a set of slices on DAK.publisher.extension. The slices areUnordered and Open, and can be differentiated using the following discriminators:
    • value @ url
    • 26. DAK.publisher.modifierExtension
      Definition

      May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

      Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      ShortExtensions that cannot be ignored even if unrecognized
      Comments

      There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

      Control0..*
      TypeExtension
      Is Modifiertrue because Modifier extensions are expected to modify the meaning or interpretation of the element that contains them
      Summarytrue
      Requirements

      Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

      Alternate Namesextensions, user content, modifiers
      Invariantsele-1: All FHIR elements must have a @value or children (hasValue() or (children().count() > id.count()))
      ext-1: Must have either extensions or value[x], not both (extension.exists() != value.exists())
      28. DAK.publisher.name
      Definition

      Name of the publishing organization

      ShortPublisher Name
      Control1..1
      Typestring
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      30. DAK.publisher.url
      Definition

      URL of the publishing organization

      ShortPublisher URL
      Control0..1
      Typeurl
      Primitive ValueThis primitive element may be present, or absent, or replaced by an extension
      32. DAK.healthInterventions
      Definition

      Overview of the health interventions and WHO, regional or national recommendations included within the DAK

      ShortHealth Interventions and Recommendations
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/HealthInterventions
      34. DAK.personas
      Definition

      Depiction of the human and system actors

      ShortGeneric Personas
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/GenericPersona
      36. DAK.userScenarios
      Definition

      Narratives that describe how the different personas may interact with each other

      ShortUser Scenarios
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/UserScenario
      38. DAK.businessProcesses
      Definition

      Business processes and workflows for achieving health programme objectives

      ShortGeneric Business Processes and Workflows
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/BusinessProcessWorkflow
      40. DAK.dataElements
      Definition

      Data elements required throughout the different points of a workflow

      ShortCore Data Elements
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/CoreDataElement
      42. DAK.decisionLogic
      Definition

      Decision-support logic and algorithms to support appropriate service delivery

      ShortDecision-Support Logic
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/DecisionSupportLogic
      44. DAK.indicators
      Definition

      Core set of indicators for decision-making, performance metrics and reporting

      ShortProgram Indicators
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/ProgramIndicator
      46. DAK.requirements
      Definition

      High-level list of core functions and capabilities that the system must have

      ShortFunctional and Non-Functional Requirements
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/Requirements
      48. DAK.testScenarios
      Definition

      Set of test scenarios to validate an implementation of the DAK

      ShortTest Scenarios
      Control0..*
      Typehttp://smart.who.int/base/StructureDefinition/TestScenario