Botswana FHIR Implementation Guide
1.0.0 - ci-build Botswana flag

Botswana FHIR Implementation Guide, published by Jembi Health Systems. This guide is not an authorized publication; it is the continuous build for version 1.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/jembi/botswana-hie-fhir-ig/ and changes regularly. See the Directory of published versions

Resource Profile: Requirements

Official URL: http://moh.bw.org/StructureDefinition/bw-requirements Version: 1.0.0
Active as of 2026-10-13 Computable Name: BwRequirements

Represents the requirements for the use case described in this Implementation Guide.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Requirements C 0..* Requirements A set of requirements - features of systems that are necessary
Interfaces Implemented: CanonicalResource
Constraints: cnl-0
Requirements.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Requirements.contained 0..* Resource Contained, inline Resources
Requirements.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for extension.extension:RequirementsType 1..* CodeableConcept Requirements Type
URL: http://moh.bw.org/StructureDefinition/requirements-type
Binding: Requirements Type Codes (required)
Requirements.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored
Requirements.name This element is included in summaries. C 1..1 string Name for this Requirements (computer friendly)
Requirements.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Requirements.Slices for actor This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Slice: Unordered, Open by value:extension.value

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Primary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.Slices for actor.actor:Secondary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Secondary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Secondary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.statement 1..* BackboneElement Actual statement as markdown
Requirements.statement.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Requirements.statement.key 1..1 id Key that identifies this statement
Requirements.statement.requirement 1..1 markdown The actual requirement

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Requirements.status Base required PublicationStatus 📍5.0.0 FHIR Std.
Requirements.actor:Primary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG
Requirements.actor:Secondary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
cnl-0 warning Requirements Name should be usable as an identifier for the module by machine processing applications such as code generation name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Requirements

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Requirements 0..* Requirements A set of requirements - features of systems that are necessary
Interfaces Implemented: CanonicalResource
Requirements.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for extension.extension:RequirementsType 1..* CodeableConcept Requirements Type
URL: http://moh.bw.org/StructureDefinition/requirements-type
Binding: Requirements Type Codes (required)
Requirements.name 1..1 string Name for this Requirements (computer friendly)
Requirements.Slices for actor This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Slice: Unordered, Open by value:extension.value
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Primary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Required Pattern: At least the following
Requirements.Slices for actor.actor:Secondary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Secondary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Secondary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Required Pattern: At least the following

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: doco
Requirements C 0..* Requirements A set of requirements - features of systems that are necessary
Interfaces Implemented: CanonicalResource
Constraints: cnl-0
Requirements.id This element is included in summaries. 0..1 id Logical id of this artifact
Requirements.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Requirements.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Requirements.language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
Requirements.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Requirements.contained 0..* Resource Contained, inline Resources
Requirements.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for extension.extension:RequirementsType 1..* CodeableConcept Requirements Type
URL: http://moh.bw.org/StructureDefinition/requirements-type
Binding: Requirements Type Codes (required)
Requirements.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored
Requirements.url This element is included in summaries. C 0..1 uri Canonical identifier for this Requirements, represented as a URI (globally unique)
Constraints: cnl-1
Requirements.identifier This element is included in summaries. 0..* Identifier Additional identifier for the Requirements (business identifier)
Requirements.version This element is included in summaries. 0..1 string Business version of the Requirements
Requirements.versionAlgorithm[x] This element is included in summaries. 0..1 How to compare versions
Binding: VersionAlgorithm (extensible)
Requirements.versionAlgorithm[x].versionAlgorithmString string
Requirements.versionAlgorithm[x].versionAlgorithmCoding Coding
Requirements.name This element is included in summaries. C 1..1 string Name for this Requirements (computer friendly)
Requirements.title This element is included in summaries. 0..1 string Name for this Requirements (human friendly)
Requirements.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Requirements.experimental This element is included in summaries. 0..1 boolean For testing purposes, not real usage
Requirements.date This element is included in summaries. 0..1 dateTime Date last changed
Requirements.publisher This element is included in summaries. 0..1 string Name of the publisher/steward (organization or individual)
Requirements.contact This element is included in summaries. 0..* ContactDetail Contact details for the publisher
Requirements.description 0..1 markdown Natural language description of the requirements
Requirements.useContext This element is included in summaries. 0..* UsageContext The context that the content is intended to support
Requirements.jurisdiction This element is included in summaries. 0..* CodeableConcept Intended jurisdiction for Requirements (if applicable)
Binding: JurisdictionValueSet (extensible): Countries and regions within which this artifact is targeted for use.
Requirements.purpose 0..1 markdown Why this Requirements is defined
Requirements.copyright 0..1 markdown Use and/or publishing restrictions
Requirements.copyrightLabel 0..1 string Copyright holder and year(s)
Requirements.derivedFrom This element is included in summaries. 0..* canonical(Requirements) Other set of Requirements this builds on
Requirements.reference 0..* url External artifact (rule/document etc. that) created this set of requirements
Requirements.Slices for actor This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Slice: Unordered, Open by value:extension.value

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Primary.id 0..1 string xml:id (or equivalent in JSON)
Requirements.Slices for actor.actor:Primary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.id 0..1 id Unique id for inter-element referencing
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.Slices for actor.actor:Primary.value 0..1 canonical Primitive value for canonical
Requirements.Slices for actor.actor:Secondary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Secondary.id 0..1 string xml:id (or equivalent in JSON)
Requirements.Slices for actor.actor:Secondary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Secondary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.id 0..1 id Unique id for inter-element referencing
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.Slices for actor.actor:Secondary.value 0..1 canonical Primitive value for canonical
Requirements.statement 1..* BackboneElement Actual statement as markdown
Requirements.statement.id 0..1 string Unique id for inter-element referencing
Requirements.statement.extension 0..* Extension Additional content defined by implementations
Requirements.statement.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Requirements.statement.key 1..1 id Key that identifies this statement
Requirements.statement.label 0..1 string Short Human label for this statement
Requirements.statement.conformance 0..* code SHALL | SHOULD | MAY | SHOULD-NOT
Binding: ConformanceExpectation (required)
Requirements.statement.conditionality 0..1 boolean Set to true if requirements statement is conditional
Requirements.statement.requirement 1..1 markdown The actual requirement
Requirements.statement.derivedFrom 0..1 string Another statement this clarifies/restricts ([url#]key)
Requirements.statement.parent 0..1 string A larger requirement that this requirement helps to refine and enable
Requirements.statement.satisfiedBy 0..* url Design artifact that satisfies this requirement
Requirements.statement.reference 0..* url External artifact (rule/document etc. that) created this requirement
Requirements.statement.source 0..* Reference(CareTeam | Device | Group | HealthcareService | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who asked for this statement

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Requirements.language Base required All Languages 📍5.0.0 FHIR Std.
Requirements.versionAlgorithm[x] Base extensible Version Algorithm 📍5.0.0 FHIR Std.
Requirements.status Base required PublicationStatus 📍5.0.0 FHIR Std.
Requirements.jurisdiction Base extensible Jurisdiction ValueSet 📍5.0.0 FHIR Std.
Requirements.actor:Primary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG
Requirements.actor:Secondary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG
Requirements.statement.​conformance Base required Conformance Expectation 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cnl-0 warning Requirements Name should be usable as an identifier for the module by machine processing applications such as code generation name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$')
cnl-1 warning Requirements.url URL should not contain | or # - these characters make processing canonical references problematic exists() implies matches('^[^|# ]+$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Requirements

Summary

Mandatory: 4 elements(4 nested mandatory elements)
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Requirements.actor

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Requirements C 0..* Requirements A set of requirements - features of systems that are necessary
Interfaces Implemented: CanonicalResource
Constraints: cnl-0
Requirements.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Requirements.contained 0..* Resource Contained, inline Resources
Requirements.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for extension.extension:RequirementsType 1..* CodeableConcept Requirements Type
URL: http://moh.bw.org/StructureDefinition/requirements-type
Binding: Requirements Type Codes (required)
Requirements.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored
Requirements.name This element is included in summaries. C 1..1 string Name for this Requirements (computer friendly)
Requirements.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Requirements.Slices for actor This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Slice: Unordered, Open by value:extension.value

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Primary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.Slices for actor.actor:Secondary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Secondary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Secondary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.statement 1..* BackboneElement Actual statement as markdown
Requirements.statement.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Requirements.statement.key 1..1 id Key that identifies this statement
Requirements.statement.requirement 1..1 markdown The actual requirement

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Requirements.status Base required PublicationStatus 📍5.0.0 FHIR Std.
Requirements.actor:Primary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG
Requirements.actor:Secondary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
cnl-0 warning Requirements Name should be usable as an identifier for the module by machine processing applications such as code generation name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

Differential View

This structure is derived from Requirements

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Requirements 0..* Requirements A set of requirements - features of systems that are necessary
Interfaces Implemented: CanonicalResource
Requirements.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for extension.extension:RequirementsType 1..* CodeableConcept Requirements Type
URL: http://moh.bw.org/StructureDefinition/requirements-type
Binding: Requirements Type Codes (required)
Requirements.name 1..1 string Name for this Requirements (computer friendly)
Requirements.Slices for actor This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Slice: Unordered, Open by value:extension.value
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Primary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Required Pattern: At least the following
Requirements.Slices for actor.actor:Secondary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Secondary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url
Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Secondary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Required Pattern: At least the following
Requirements.statement 1..* BackboneElement Actual statement as markdown

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
Requirements C 0..* Requirements A set of requirements - features of systems that are necessary
Interfaces Implemented: CanonicalResource
Constraints: cnl-0
Requirements.id This element is included in summaries. 0..1 id Logical id of this artifact
Requirements.meta This element is included in summaries. 0..1 Meta Metadata about the resource
Requirements.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
Requirements.language 0..1 code Language of the resource content
Binding: AllLanguages (required): IETF language tag for a human language
Additional BindingsPurpose
CommonLanguages Starter
Requirements.text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
Requirements.contained 0..* Resource Contained, inline Resources
Requirements.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for extension.extension:RequirementsType 1..* CodeableConcept Requirements Type
URL: http://moh.bw.org/StructureDefinition/requirements-type
Binding: Requirements Type Codes (required)
Requirements.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored
Requirements.url This element is included in summaries. C 0..1 uri Canonical identifier for this Requirements, represented as a URI (globally unique)
Constraints: cnl-1
Requirements.identifier This element is included in summaries. 0..* Identifier Additional identifier for the Requirements (business identifier)
Requirements.version This element is included in summaries. 0..1 string Business version of the Requirements
Requirements.versionAlgorithm[x] This element is included in summaries. 0..1 How to compare versions
Binding: VersionAlgorithm (extensible)
Requirements.versionAlgorithm[x].versionAlgorithmString string
Requirements.versionAlgorithm[x].versionAlgorithmCoding Coding
Requirements.name This element is included in summaries. C 1..1 string Name for this Requirements (computer friendly)
Requirements.title This element is included in summaries. 0..1 string Name for this Requirements (human friendly)
Requirements.status This element is a modifier element. This element is included in summaries. 1..1 code draft | active | retired | unknown
Binding: PublicationStatus (required): The lifecycle status of an artifact.
Requirements.experimental This element is included in summaries. 0..1 boolean For testing purposes, not real usage
Requirements.date This element is included in summaries. 0..1 dateTime Date last changed
Requirements.publisher This element is included in summaries. 0..1 string Name of the publisher/steward (organization or individual)
Requirements.contact This element is included in summaries. 0..* ContactDetail Contact details for the publisher
Requirements.description 0..1 markdown Natural language description of the requirements
Requirements.useContext This element is included in summaries. 0..* UsageContext The context that the content is intended to support
Requirements.jurisdiction This element is included in summaries. 0..* CodeableConcept Intended jurisdiction for Requirements (if applicable)
Binding: JurisdictionValueSet (extensible): Countries and regions within which this artifact is targeted for use.
Requirements.purpose 0..1 markdown Why this Requirements is defined
Requirements.copyright 0..1 markdown Use and/or publishing restrictions
Requirements.copyrightLabel 0..1 string Copyright holder and year(s)
Requirements.derivedFrom This element is included in summaries. 0..* canonical(Requirements) Other set of Requirements this builds on
Requirements.reference 0..* url External artifact (rule/document etc. that) created this set of requirements
Requirements.Slices for actor This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Slice: Unordered, Open by value:extension.value

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Primary.id 0..1 string xml:id (or equivalent in JSON)
Requirements.Slices for actor.actor:Primary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Primary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.id 0..1 id Unique id for inter-element referencing
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Primary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.Slices for actor.actor:Primary.value 0..1 canonical Primitive value for canonical
Requirements.Slices for actor.actor:Secondary This element must be supported. 0..* canonical(ActorDefinition) Actor for these requirements
Requirements.Slices for actor.actor:Secondary.id 0..1 string xml:id (or equivalent in JSON)
Requirements.Slices for actor.actor:Secondary.Slices for extension 1..* Extension Extension
Slice: Unordered, Open by value:url

Slicing Note: The rules on this element (including its children) apply to all the slices, but are not repeated in them
Requirements.Slices for actor.actor:Secondary.Slices for extension Content/Rules for all slices
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification 1..1 (Complex) Actor Classification
URL: http://moh.bw.org/StructureDefinition/actor-classification
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.id 0..1 id Unique id for inter-element referencing
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.extension 0..0 Extension
Slice: Unordered, Open by value:url
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.url 1..1 uri "http://moh.bw.org/StructureDefinition/actor-classification"
Requirements.Slices for actor.actor:Secondary.Slices for extension.extension:ActorClassification.value[x] 1..1 CodeableConcept Value of extension
Binding: Actor Classification Codes (required)
Required Pattern: At least the following
Requirements.Slices for actor.actor:Secondary.value 0..1 canonical Primitive value for canonical
Requirements.statement 1..* BackboneElement Actual statement as markdown
Requirements.statement.id 0..1 string Unique id for inter-element referencing
Requirements.statement.extension 0..* Extension Additional content defined by implementations
Requirements.statement.modifierExtension This element is a modifier element. This element is included in summaries. 0..* Extension Extensions that cannot be ignored even if unrecognized
Requirements.statement.key 1..1 id Key that identifies this statement
Requirements.statement.label 0..1 string Short Human label for this statement
Requirements.statement.conformance 0..* code SHALL | SHOULD | MAY | SHOULD-NOT
Binding: ConformanceExpectation (required)
Requirements.statement.conditionality 0..1 boolean Set to true if requirements statement is conditional
Requirements.statement.requirement 1..1 markdown The actual requirement
Requirements.statement.derivedFrom 0..1 string Another statement this clarifies/restricts ([url#]key)
Requirements.statement.parent 0..1 string A larger requirement that this requirement helps to refine and enable
Requirements.statement.satisfiedBy 0..* url Design artifact that satisfies this requirement
Requirements.statement.reference 0..* url External artifact (rule/document etc. that) created this requirement
Requirements.statement.source 0..* Reference(CareTeam | Device | Group | HealthcareService | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson) Who asked for this statement

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
Requirements.language Base required All Languages 📍5.0.0 FHIR Std.
Requirements.versionAlgorithm[x] Base extensible Version Algorithm 📍5.0.0 FHIR Std.
Requirements.status Base required PublicationStatus 📍5.0.0 FHIR Std.
Requirements.jurisdiction Base extensible Jurisdiction ValueSet 📍5.0.0 FHIR Std.
Requirements.actor:Primary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG
Requirements.actor:Secondary.​extension:ActorClassification.​value[x] Base required Actor Classification Codes 📦1.0.0 This IG
Requirements.statement.​conformance Base required Conformance Expectation 📍5.0.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cnl-0 warning Requirements Name should be usable as an identifier for the module by machine processing applications such as code generation name.exists() implies name.matches('^[A-Z]([A-Za-z0-9_]){1,254}$')
cnl-1 warning Requirements.url URL should not contain | or # - these characters make processing canonical references problematic exists() implies matches('^[^|# ]+$')
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()

This structure is derived from Requirements

Summary

Mandatory: 4 elements(4 nested mandatory elements)
Must-Support: 3 elements

Extensions

This structure refers to these extensions:

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of Requirements.actor

 

Other representations of profile: CSV, Excel, Schematron