WHO Digital Documentation of COVID-19 Certificates (DDCC)
1.0.0 - CI Build
WHO Digital Documentation of COVID-19 Certificates (DDCC), published by WHO. 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/WorldHealthOrganization/ddcc/tree/main and changes regularly. See the Directory of published versions
Official URL: http://smart.who.int/ddcc/StructureDefinition/DDCCPractitioner | Version: 1.0.0 | |||
Draft as of 2024-10-11 | Computable Name: DDCCPractitioner |
Container for an DDCC Practitioner, which is a Practitioner authorized by the PHA to vaccinate an DDCC Patient.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from Practitioner
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Practitioner | Practitioner | |||
Slices for identifier | S | 1..* | Identifier | An identifier for the person as this agent Slice: Ordered, Open by value:use, profile:assigner.resolve() |
identifier:ddccIdentifier | 1..* | Identifier | An identifier for the person as this agent | |
use | S | 1..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: official |
system | S | 1..1 | uri | The namespace for the identifier value |
value | S | 1..1 | string | The value that is unique |
assigner | S | 1..1 | Reference(DDCC Organization) | Organization that issued id (may be just text) |
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Practitioner | 0..* | Practitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
Slices for identifier | SΣ | 1..* | Identifier | An identifier for the person as this agent Slice: Ordered, Open by value:use, profile:assigner.resolve() |
identifier:ddccIdentifier | Σ | 1..* | Identifier | An identifier for the person as this agent |
use | ?!SΣ | 1..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official |
system | SΣ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient |
value | SΣ | 1..1 | string | The value that is unique Example General: 123456 |
assigner | SΣ | 1..1 | Reference(DDCC Organization) | Organization that issued id (may be just text) |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Practitioner.identifier:ddccIdentifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Practitioner | A resource should have narrative for robust management : text.`div`.exists() | |
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() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Practitioner | 0..* | Practitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | SΣ | 1..* | Identifier | An identifier for the person as this agent Slice: Ordered, Open by value:use, profile:assigner.resolve() | ||||
identifier:ddccIdentifier | Σ | 1..* | Identifier | An identifier for the person as this agent | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!SΣ | 1..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | SΣ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
value | SΣ | 1..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | SΣ | 1..1 | Reference(DDCC Organization) | Organization that issued id (may be just text) | ||||
active | Σ | 0..1 | boolean | Whether this practitioner's record is in active use | ||||
name | Σ | 0..* | HumanName | The name(s) associated with the practitioner | ||||
telecom | Σ | 0..* | ContactPoint | A contact detail for the practitioner (that apply to all roles) | ||||
address | Σ | 0..* | Address | Address(es) of the practitioner that are not role specific (typically home address) | ||||
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes. | ||||
birthDate | Σ | 0..1 | date | The date on which the practitioner was born | ||||
photo | 0..* | Attachment | Image of the person | |||||
qualification | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
identifier | 0..* | Identifier | An identifier for this qualification for the practitioner | |||||
code | 1..1 | CodeableConcept | Coded representation of the qualification Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service. | |||||
period | 0..1 | Period | Period during which the qualification is valid | |||||
issuer | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification | |||||
communication | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: CommonLanguages (preferred): A human language.
| |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Practitioner.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Practitioner.identifier:ddccIdentifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Practitioner.identifier:ddccIdentifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Practitioner.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
Practitioner.qualification.code | example | v2.0360.2.7 (a valid code from http://terminology.hl7.org/CodeSystem/v2-0360|2.7 )http://terminology.hl7.org/ValueSet/v2-2.7-0360 from the FHIR Standard | ||||
Practitioner.communication | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Practitioner | A resource should have narrative for robust management : text.`div`.exists() | |
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 Practitioner
Summary
Mandatory: 6 elements
Must-Support: 5 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Differential View
This structure is derived from Practitioner
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Practitioner | Practitioner | |||
Slices for identifier | S | 1..* | Identifier | An identifier for the person as this agent Slice: Ordered, Open by value:use, profile:assigner.resolve() |
identifier:ddccIdentifier | 1..* | Identifier | An identifier for the person as this agent | |
use | S | 1..1 | code | usual | official | temp | secondary | old (If known) Required Pattern: official |
system | S | 1..1 | uri | The namespace for the identifier value |
value | S | 1..1 | string | The value that is unique |
assigner | S | 1..1 | Reference(DDCC Organization) | Organization that issued id (may be just text) |
Documentation for this format |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
Practitioner | 0..* | Practitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
Slices for identifier | SΣ | 1..* | Identifier | An identifier for the person as this agent Slice: Ordered, Open by value:use, profile:assigner.resolve() |
identifier:ddccIdentifier | Σ | 1..* | Identifier | An identifier for the person as this agent |
use | ?!SΣ | 1..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official |
system | SΣ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient |
value | SΣ | 1..1 | string | The value that is unique Example General: 123456 |
assigner | SΣ | 1..1 | Reference(DDCC Organization) | Organization that issued id (may be just text) |
Documentation for this format |
Path | Conformance | ValueSet / Code | URI |
Practitioner.identifier:ddccIdentifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Practitioner | A resource should have narrative for robust management : text.`div`.exists() | |
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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
Practitioner | 0..* | Practitioner | A person with a formal responsibility in the provisioning of healthcare or related services | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
Slices for identifier | SΣ | 1..* | Identifier | An identifier for the person as this agent Slice: Ordered, Open by value:use, profile:assigner.resolve() | ||||
identifier:ddccIdentifier | Σ | 1..* | Identifier | An identifier for the person as this agent | ||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
use | ?!SΣ | 1..1 | code | usual | official | temp | secondary | old (If known) Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
type | Σ | 0..1 | CodeableConcept | Description of identifier Binding: Identifier Type Codes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
system | SΣ | 1..1 | uri | The namespace for the identifier value Example General: http://www.acme.com/identifiers/patient | ||||
value | SΣ | 1..1 | string | The value that is unique Example General: 123456 | ||||
period | Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
assigner | SΣ | 1..1 | Reference(DDCC Organization) | Organization that issued id (may be just text) | ||||
active | Σ | 0..1 | boolean | Whether this practitioner's record is in active use | ||||
name | Σ | 0..* | HumanName | The name(s) associated with the practitioner | ||||
telecom | Σ | 0..* | ContactPoint | A contact detail for the practitioner (that apply to all roles) | ||||
address | Σ | 0..* | Address | Address(es) of the practitioner that are not role specific (typically home address) | ||||
gender | Σ | 0..1 | code | male | female | other | unknown Binding: AdministrativeGender (required): The gender of a person used for administrative purposes. | ||||
birthDate | Σ | 0..1 | date | The date on which the practitioner was born | ||||
photo | 0..* | Attachment | Image of the person | |||||
qualification | 0..* | BackboneElement | Certification, licenses, or training pertaining to the provision of care | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
identifier | 0..* | Identifier | An identifier for this qualification for the practitioner | |||||
code | 1..1 | CodeableConcept | Coded representation of the qualification Binding: v2 table 0360, Version 2.7 (example): Specific qualification the practitioner has to provide a service. | |||||
period | 0..1 | Period | Period during which the qualification is valid | |||||
issuer | 0..1 | Reference(Organization) | Organization that regulates and issues the qualification | |||||
communication | 0..* | CodeableConcept | A language the practitioner can use in patient communication Binding: CommonLanguages (preferred): A human language.
| |||||
Documentation for this format |
Path | Conformance | ValueSet / Code | URI | |||
Practitioner.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
Practitioner.identifier:ddccIdentifier.use | required | Pattern: officialhttp://hl7.org/fhir/ValueSet/identifier-use|4.0.1 from the FHIR Standard | ||||
Practitioner.identifier:ddccIdentifier.type | extensible | Identifier Type Codeshttp://hl7.org/fhir/ValueSet/identifier-type from the FHIR Standard | ||||
Practitioner.gender | required | AdministrativeGenderhttp://hl7.org/fhir/ValueSet/administrative-gender|4.0.1 from the FHIR Standard | ||||
Practitioner.qualification.code | example | v2.0360.2.7 (a valid code from http://terminology.hl7.org/CodeSystem/v2-0360|2.7 )http://terminology.hl7.org/ValueSet/v2-2.7-0360 from the FHIR Standard | ||||
Practitioner.communication | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
dom-2 | error | Practitioner | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | error | Practitioner | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource : contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty() | |
dom-4 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated : contained.meta.versionId.empty() and contained.meta.lastUpdated.empty() | |
dom-5 | error | Practitioner | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | best practice | Practitioner | A resource should have narrative for robust management : text.`div`.exists() | |
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 Practitioner
Summary
Mandatory: 6 elements
Must-Support: 5 elements
Structures
This structure refers to these other structures:
Slices
This structure defines the following Slices:
Other representations of profile: CSV, Excel, Schematron