WHO Digital Documentation of COVID-19 Certificates (DDCC)
1.0.0 - CI Build International flag

This is the continuous build for version 1.0.0. This version is based on the current content of https://github.com/WorldHealthOrganization/ddcc and changes regularly.

Logical Model: Certificate - DIVOC Verifiable Credential Logical Model ( Abstract )

Official URL: http://smart.who.int/ddcc/StructureDefinition/CertDIVOC Version: 1.0.0
Draft as of 2024-04-24 Computable Name: CertDIVOC

Data elements for the DIVOC Core Data Set.

The official DIVOC documentation appears to be at https://divoc.digit.org. However, this does not include a full list of elements included in DIVOC certificates.

There is a JSON-LD context referenced in DIVOC certificate examples (https://cowin.gov.in/credentials/vaccination/v1), which would provide some element-level information, but this URL does not resolve. There is a copy of this JSON-LD context at https://github.com/egovernments/DIVOC/blob/main/vaccination-context/vaccination-context.js.

It was not possible to find any online documentation regarding DIVOC proof of testing. Information on this was provided by the DIVOC team via email.

Some element descriptions in this logical model provide details that are not in publicly available DIVOC documentation.

Usage:

  • This Logical Model Profile is not used by any profiles in this Implementation Guide

Formal Views of Profile Content

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

This structure is derived from Base

NameFlagsCard.TypeDescription & Constraintsdoco
.. CertDIVOC 0..*BaseThis is an abstract type.
Certificate - DIVOC Verifiable Credential Logical Model
Instances of this logical model are not marked to be the target of a Reference
... context 1..*stringContext (JSON-LD) - should actually be `@context` but this name isn't supported by FHIR.
... type 1..*stringType
... issuer 1..1stringIssuer identifier
... nonTransferable 0..1booleanNon Trasnferability
... credentialSubject 1..1BackboneElementCredentialSubject
.... @id 0..1stringid
.... type 1..*stringtype
.... uhid 0..1stringanother id
.... refId 0..1stringreference id
.... name 0..1stringA name associated with the patient
.... gender 0..1stringGender (`Male` or `Female`; unknown if there are other options)
.... sex 0..1stringSex (not used in examples; presumably `Male` or `Female`; unknown if there are other options)
.... age 0..1stringAge
.... dob 0..1dateThe date of birth for the individual (V2 only)
.... nationality 0..1stringNationality
.... address 0..1BackboneElementAddress
..... streetAddress 0..1stringLine 1 of the address
..... streetAddress2 0..1stringLine 2 of the address
..... district 0..1stringDistrict name (aka county)
..... city 0..1stringName of city, town etc.
..... addressRegion 0..1stringSub-unit of country (abbreviations ok)
..... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
..... postalCode 0..1stringPostal code for area
... evidence 0..*BackboneElementEvidence
.... @id 0..1stringid
.... feedbackUrl 0..1stringURL for feedback
.... infoUrl 0..1stringURL for more information on this record
.... certificateId 0..1stringCertificate Unique Identifier
.... type 1..*stringtype
.... batch 0..1stringVaccine lot number
.... vaccine 0..1stringVaccine description. Might include vaccine type and brand
.... manufacturer 0..1stringName of the Vaccine/Test Manufacturer
.... date 0..1dateTimeDate of immunization
.... effectiveStart 0..1dateEffective immunization start date
.... effectiveUntil 0..1dateEffective immunization end date
.... dose 0..1positiveIntDose Number
.... totalDoses 0..1positiveIntTotal doses for this vaccine protocol regimen
.... verifier 0..1BackboneElementVerifier
..... name 0..1stringName of the practitioner
.... facility 0..1BackboneElementFacility
..... name 0..1stringName of the facility/entity
..... address 0..1AddressAddress of the facility
...... streetAddress 0..1stringLine 1 of the address
...... streetAddress2 0..1stringLine 2 of the address
...... district 0..1stringDistrict name (aka county)
...... city 0..1stringName of city, town etc.
...... addressRegion 0..1stringSub-unit of country (abbreviations ok)
...... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
Binding: Iso3166-1-3 (preferred)
...... postalCode 0..1stringPostal code for area
.... icd11Code 0..1stringICD-11 code of this vaccine type (no binding information in spec)
Binding: WHO Vaccine List (COVID-19) (preferred)
.... prophylaxis 0..1stringDescriptive details of the vaccine type
.... testName 0..1stringLab test results: Test name
.... testType 0..1stringLab test results: Type of test, either `RT-PCR` or `Rapid Antigen Test (RAT)`
Binding: Lab Test - Type - DIVOC (required)
.... sampleOrigin 0..1stringLab test results: Type of sample that was taken (e.g., `nasal swab`
Binding: Lab Test - Sample Origin - DIVOC (required)
.... disease 0..1stringLab test results: Disease or agent targeted
Binding: Lab Test - Pathogen - DIVOC (required)
.... sampleCollectionTimestamp 0..1dateTimeLab test results: Sample collection date and time; complete date, with time and time zone, following ISO 8601
.... resultTimestamp 0..1dateTimeLab test results: Results date and time; complete date, with time and time zone, following ISO 8601
.... result 0..1stringLab test results: result of test
Binding: Lab Test - Qualitative Result - DIVOC (required)
... proof 1..*BackboneElementProof
.... type 0..1stringType of proof
.... created 0..1dateTimeSignature date and time
.... verificationMethod 1..1stringResolvable issuer identifier
.... proofPurpose 0..1stringPurpose of the signature
.... jws 1..1stringSignature

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
CertDIVOC.evidence.facility.address.addressCountrypreferredIso3166-1-3
CertDIVOC.evidence.icd11CodepreferredWHO_DDCC_Vaccines_COVID_19
CertDIVOC.evidence.testTyperequiredLabTestTypeDivocValueSet
CertDIVOC.evidence.sampleOriginrequiredLabTestSampleOriginDivocValueSet
CertDIVOC.evidence.diseaserequiredLabTestPathogenDivocValueSet
CertDIVOC.evidence.resultrequiredLabTestQualitativeResultDivocValueSet
NameFlagsCard.TypeDescription & Constraintsdoco
.. CertDIVOC 0..*BaseThis is an abstract type.
Certificate - DIVOC Verifiable Credential Logical Model
Instances of this logical model are not marked to be the target of a Reference
... context 1..*stringContext (JSON-LD) - should actually be `@context` but this name isn't supported by FHIR.
... type 1..*stringType
... issuer 1..1stringIssuer identifier
... nonTransferable 0..1booleanNon Trasnferability
... credentialSubject 1..1BackboneElementCredentialSubject
.... @id 0..1stringid
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..*stringtype
.... uhid 0..1stringanother id
.... refId 0..1stringreference id
.... name 0..1stringA name associated with the patient
.... gender 0..1stringGender (`Male` or `Female`; unknown if there are other options)
.... sex 0..1stringSex (not used in examples; presumably `Male` or `Female`; unknown if there are other options)
.... age 0..1stringAge
.... dob 0..1dateThe date of birth for the individual (V2 only)
.... nationality 0..1stringNationality
.... address 0..1BackboneElementAddress
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... streetAddress 0..1stringLine 1 of the address
..... streetAddress2 0..1stringLine 2 of the address
..... district 0..1stringDistrict name (aka county)
..... city 0..1stringName of city, town etc.
..... addressRegion 0..1stringSub-unit of country (abbreviations ok)
..... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
..... postalCode 0..1stringPostal code for area
... evidence 0..*BackboneElementEvidence
.... @id 0..1stringid
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... feedbackUrl 0..1stringURL for feedback
.... infoUrl 0..1stringURL for more information on this record
.... certificateId 0..1stringCertificate Unique Identifier
.... type 1..*stringtype
.... batch 0..1stringVaccine lot number
.... vaccine 0..1stringVaccine description. Might include vaccine type and brand
.... manufacturer 0..1stringName of the Vaccine/Test Manufacturer
.... date 0..1dateTimeDate of immunization
.... effectiveStart 0..1dateEffective immunization start date
.... effectiveUntil 0..1dateEffective immunization end date
.... dose 0..1positiveIntDose Number
.... totalDoses 0..1positiveIntTotal doses for this vaccine protocol regimen
.... verifier 0..1BackboneElementVerifier
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the practitioner
.... facility 0..1BackboneElementFacility
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the facility/entity
..... address 0..1AddressAddress of the facility
...... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
...... city Σ0..1stringName of city, town etc.
Example General: Erewhon
...... district Σ0..1stringDistrict name (aka county)
Example General: Madison
...... postalCode Σ0..1stringPostal code for area
Example General: 9132
...... streetAddress 0..1stringLine 1 of the address
...... streetAddress2 0..1stringLine 2 of the address
...... addressRegion 0..1stringSub-unit of country (abbreviations ok)
...... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
Binding: Iso3166-1-3 (preferred)
.... icd11Code 0..1stringICD-11 code of this vaccine type (no binding information in spec)
Binding: WHO Vaccine List (COVID-19) (preferred)
.... prophylaxis 0..1stringDescriptive details of the vaccine type
.... testName 0..1stringLab test results: Test name
.... testType 0..1stringLab test results: Type of test, either `RT-PCR` or `Rapid Antigen Test (RAT)`
Binding: Lab Test - Type - DIVOC (required)
.... sampleOrigin 0..1stringLab test results: Type of sample that was taken (e.g., `nasal swab`
Binding: Lab Test - Sample Origin - DIVOC (required)
.... disease 0..1stringLab test results: Disease or agent targeted
Binding: Lab Test - Pathogen - DIVOC (required)
.... sampleCollectionTimestamp 0..1dateTimeLab test results: Sample collection date and time; complete date, with time and time zone, following ISO 8601
.... resultTimestamp 0..1dateTimeLab test results: Results date and time; complete date, with time and time zone, following ISO 8601
.... result 0..1stringLab test results: result of test
Binding: Lab Test - Qualitative Result - DIVOC (required)
... proof 1..*BackboneElementProof
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1stringType of proof
.... created 0..1dateTimeSignature date and time
.... verificationMethod 1..1stringResolvable issuer identifier
.... proofPurpose 0..1stringPurpose of the signature
.... jws 1..1stringSignature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CertDIVOC.evidence.facility.address.userequiredAddressUse
CertDIVOC.evidence.facility.address.addressCountrypreferredIso3166-1-3
CertDIVOC.evidence.icd11CodepreferredWHO_DDCC_Vaccines_COVID_19
CertDIVOC.evidence.testTyperequiredLabTestTypeDivocValueSet
CertDIVOC.evidence.sampleOriginrequiredLabTestSampleOriginDivocValueSet
CertDIVOC.evidence.diseaserequiredLabTestPathogenDivocValueSet
CertDIVOC.evidence.resultrequiredLabTestQualitativeResultDivocValueSet

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
NameFlagsCard.TypeDescription & Constraintsdoco
.. CertDIVOC 0..*BaseThis is an abstract type.
Certificate - DIVOC Verifiable Credential Logical Model
Instances of this logical model are not marked to be the target of a Reference
... context 1..*stringContext (JSON-LD) - should actually be `@context` but this name isn't supported by FHIR.
... type 1..*stringType
... issuer 1..1stringIssuer identifier
... nonTransferable 0..1booleanNon Trasnferability
... credentialSubject 1..1BackboneElementCredentialSubject
.... @id 0..1stringid
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..*stringtype
.... uhid 0..1stringanother id
.... refId 0..1stringreference id
.... name 0..1stringA name associated with the patient
.... gender 0..1stringGender (`Male` or `Female`; unknown if there are other options)
.... sex 0..1stringSex (not used in examples; presumably `Male` or `Female`; unknown if there are other options)
.... age 0..1stringAge
.... dob 0..1dateThe date of birth for the individual (V2 only)
.... nationality 0..1stringNationality
.... address 0..1BackboneElementAddress
..... @id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... streetAddress 0..1stringLine 1 of the address
..... streetAddress2 0..1stringLine 2 of the address
..... district 0..1stringDistrict name (aka county)
..... city 0..1stringName of city, town etc.
..... addressRegion 0..1stringSub-unit of country (abbreviations ok)
..... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
..... postalCode 0..1stringPostal code for area
... evidence 0..*BackboneElementEvidence
.... @id 0..1stringid
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... feedbackUrl 0..1stringURL for feedback
.... infoUrl 0..1stringURL for more information on this record
.... certificateId 0..1stringCertificate Unique Identifier
.... type 1..*stringtype
.... batch 0..1stringVaccine lot number
.... vaccine 0..1stringVaccine description. Might include vaccine type and brand
.... manufacturer 0..1stringName of the Vaccine/Test Manufacturer
.... date 0..1dateTimeDate of immunization
.... effectiveStart 0..1dateEffective immunization start date
.... effectiveUntil 0..1dateEffective immunization end date
.... dose 0..1positiveIntDose Number
.... totalDoses 0..1positiveIntTotal doses for this vaccine protocol regimen
.... verifier 0..1BackboneElementVerifier
..... @id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the practitioner
.... facility 0..1BackboneElementFacility
..... @id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the facility/entity
..... address 0..1AddressAddress of the facility
...... @id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
...... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
...... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
...... line Σ0..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
...... city Σ0..1stringName of city, town etc.
Example General: Erewhon
...... district Σ0..1stringDistrict name (aka county)
Example General: Madison
...... state Σ0..1stringSub-unit of country (abbreviations ok)
...... postalCode Σ0..1stringPostal code for area
Example General: 9132
...... country Σ0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
...... period Σ0..1PeriodTime period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
...... streetAddress 0..1stringLine 1 of the address
...... streetAddress2 0..1stringLine 2 of the address
...... addressRegion 0..1stringSub-unit of country (abbreviations ok)
...... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
Binding: Iso3166-1-3 (preferred)
.... icd11Code 0..1stringICD-11 code of this vaccine type (no binding information in spec)
Binding: WHO Vaccine List (COVID-19) (preferred)
.... prophylaxis 0..1stringDescriptive details of the vaccine type
.... testName 0..1stringLab test results: Test name
.... testType 0..1stringLab test results: Type of test, either `RT-PCR` or `Rapid Antigen Test (RAT)`
Binding: Lab Test - Type - DIVOC (required)
.... sampleOrigin 0..1stringLab test results: Type of sample that was taken (e.g., `nasal swab`
Binding: Lab Test - Sample Origin - DIVOC (required)
.... disease 0..1stringLab test results: Disease or agent targeted
Binding: Lab Test - Pathogen - DIVOC (required)
.... sampleCollectionTimestamp 0..1dateTimeLab test results: Sample collection date and time; complete date, with time and time zone, following ISO 8601
.... resultTimestamp 0..1dateTimeLab test results: Results date and time; complete date, with time and time zone, following ISO 8601
.... result 0..1stringLab test results: result of test
Binding: Lab Test - Qualitative Result - DIVOC (required)
... proof 1..*BackboneElementProof
.... @id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1stringType of proof
.... created 0..1dateTimeSignature date and time
.... verificationMethod 1..1stringResolvable issuer identifier
.... proofPurpose 0..1stringPurpose of the signature
.... jws 1..1stringSignature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CertDIVOC.evidence.facility.address.userequiredAddressUse
CertDIVOC.evidence.facility.address.typerequiredAddressType
CertDIVOC.evidence.facility.address.addressCountrypreferredIso3166-1-3
CertDIVOC.evidence.icd11CodepreferredWHO_DDCC_Vaccines_COVID_19
CertDIVOC.evidence.testTyperequiredLabTestTypeDivocValueSet
CertDIVOC.evidence.sampleOriginrequiredLabTestSampleOriginDivocValueSet
CertDIVOC.evidence.diseaserequiredLabTestPathogenDivocValueSet
CertDIVOC.evidence.resultrequiredLabTestQualitativeResultDivocValueSet

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Base

Summary

Mandatory: 0 element (10 nested mandatory elements)

Differential View

This structure is derived from Base

NameFlagsCard.TypeDescription & Constraintsdoco
.. CertDIVOC 0..*BaseThis is an abstract type.
Certificate - DIVOC Verifiable Credential Logical Model
Instances of this logical model are not marked to be the target of a Reference
... context 1..*stringContext (JSON-LD) - should actually be `@context` but this name isn't supported by FHIR.
... type 1..*stringType
... issuer 1..1stringIssuer identifier
... nonTransferable 0..1booleanNon Trasnferability
... credentialSubject 1..1BackboneElementCredentialSubject
.... @id 0..1stringid
.... type 1..*stringtype
.... uhid 0..1stringanother id
.... refId 0..1stringreference id
.... name 0..1stringA name associated with the patient
.... gender 0..1stringGender (`Male` or `Female`; unknown if there are other options)
.... sex 0..1stringSex (not used in examples; presumably `Male` or `Female`; unknown if there are other options)
.... age 0..1stringAge
.... dob 0..1dateThe date of birth for the individual (V2 only)
.... nationality 0..1stringNationality
.... address 0..1BackboneElementAddress
..... streetAddress 0..1stringLine 1 of the address
..... streetAddress2 0..1stringLine 2 of the address
..... district 0..1stringDistrict name (aka county)
..... city 0..1stringName of city, town etc.
..... addressRegion 0..1stringSub-unit of country (abbreviations ok)
..... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
..... postalCode 0..1stringPostal code for area
... evidence 0..*BackboneElementEvidence
.... @id 0..1stringid
.... feedbackUrl 0..1stringURL for feedback
.... infoUrl 0..1stringURL for more information on this record
.... certificateId 0..1stringCertificate Unique Identifier
.... type 1..*stringtype
.... batch 0..1stringVaccine lot number
.... vaccine 0..1stringVaccine description. Might include vaccine type and brand
.... manufacturer 0..1stringName of the Vaccine/Test Manufacturer
.... date 0..1dateTimeDate of immunization
.... effectiveStart 0..1dateEffective immunization start date
.... effectiveUntil 0..1dateEffective immunization end date
.... dose 0..1positiveIntDose Number
.... totalDoses 0..1positiveIntTotal doses for this vaccine protocol regimen
.... verifier 0..1BackboneElementVerifier
..... name 0..1stringName of the practitioner
.... facility 0..1BackboneElementFacility
..... name 0..1stringName of the facility/entity
..... address 0..1AddressAddress of the facility
...... streetAddress 0..1stringLine 1 of the address
...... streetAddress2 0..1stringLine 2 of the address
...... district 0..1stringDistrict name (aka county)
...... city 0..1stringName of city, town etc.
...... addressRegion 0..1stringSub-unit of country (abbreviations ok)
...... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
Binding: Iso3166-1-3 (preferred)
...... postalCode 0..1stringPostal code for area
.... icd11Code 0..1stringICD-11 code of this vaccine type (no binding information in spec)
Binding: WHO Vaccine List (COVID-19) (preferred)
.... prophylaxis 0..1stringDescriptive details of the vaccine type
.... testName 0..1stringLab test results: Test name
.... testType 0..1stringLab test results: Type of test, either `RT-PCR` or `Rapid Antigen Test (RAT)`
Binding: Lab Test - Type - DIVOC (required)
.... sampleOrigin 0..1stringLab test results: Type of sample that was taken (e.g., `nasal swab`
Binding: Lab Test - Sample Origin - DIVOC (required)
.... disease 0..1stringLab test results: Disease or agent targeted
Binding: Lab Test - Pathogen - DIVOC (required)
.... sampleCollectionTimestamp 0..1dateTimeLab test results: Sample collection date and time; complete date, with time and time zone, following ISO 8601
.... resultTimestamp 0..1dateTimeLab test results: Results date and time; complete date, with time and time zone, following ISO 8601
.... result 0..1stringLab test results: result of test
Binding: Lab Test - Qualitative Result - DIVOC (required)
... proof 1..*BackboneElementProof
.... type 0..1stringType of proof
.... created 0..1dateTimeSignature date and time
.... verificationMethod 1..1stringResolvable issuer identifier
.... proofPurpose 0..1stringPurpose of the signature
.... jws 1..1stringSignature

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
CertDIVOC.evidence.facility.address.addressCountrypreferredIso3166-1-3
CertDIVOC.evidence.icd11CodepreferredWHO_DDCC_Vaccines_COVID_19
CertDIVOC.evidence.testTyperequiredLabTestTypeDivocValueSet
CertDIVOC.evidence.sampleOriginrequiredLabTestSampleOriginDivocValueSet
CertDIVOC.evidence.diseaserequiredLabTestPathogenDivocValueSet
CertDIVOC.evidence.resultrequiredLabTestQualitativeResultDivocValueSet

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CertDIVOC 0..*BaseThis is an abstract type.
Certificate - DIVOC Verifiable Credential Logical Model
Instances of this logical model are not marked to be the target of a Reference
... context 1..*stringContext (JSON-LD) - should actually be `@context` but this name isn't supported by FHIR.
... type 1..*stringType
... issuer 1..1stringIssuer identifier
... nonTransferable 0..1booleanNon Trasnferability
... credentialSubject 1..1BackboneElementCredentialSubject
.... @id 0..1stringid
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..*stringtype
.... uhid 0..1stringanother id
.... refId 0..1stringreference id
.... name 0..1stringA name associated with the patient
.... gender 0..1stringGender (`Male` or `Female`; unknown if there are other options)
.... sex 0..1stringSex (not used in examples; presumably `Male` or `Female`; unknown if there are other options)
.... age 0..1stringAge
.... dob 0..1dateThe date of birth for the individual (V2 only)
.... nationality 0..1stringNationality
.... address 0..1BackboneElementAddress
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... streetAddress 0..1stringLine 1 of the address
..... streetAddress2 0..1stringLine 2 of the address
..... district 0..1stringDistrict name (aka county)
..... city 0..1stringName of city, town etc.
..... addressRegion 0..1stringSub-unit of country (abbreviations ok)
..... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
..... postalCode 0..1stringPostal code for area
... evidence 0..*BackboneElementEvidence
.... @id 0..1stringid
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... feedbackUrl 0..1stringURL for feedback
.... infoUrl 0..1stringURL for more information on this record
.... certificateId 0..1stringCertificate Unique Identifier
.... type 1..*stringtype
.... batch 0..1stringVaccine lot number
.... vaccine 0..1stringVaccine description. Might include vaccine type and brand
.... manufacturer 0..1stringName of the Vaccine/Test Manufacturer
.... date 0..1dateTimeDate of immunization
.... effectiveStart 0..1dateEffective immunization start date
.... effectiveUntil 0..1dateEffective immunization end date
.... dose 0..1positiveIntDose Number
.... totalDoses 0..1positiveIntTotal doses for this vaccine protocol regimen
.... verifier 0..1BackboneElementVerifier
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the practitioner
.... facility 0..1BackboneElementFacility
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the facility/entity
..... address 0..1AddressAddress of the facility
...... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
...... city Σ0..1stringName of city, town etc.
Example General: Erewhon
...... district Σ0..1stringDistrict name (aka county)
Example General: Madison
...... postalCode Σ0..1stringPostal code for area
Example General: 9132
...... streetAddress 0..1stringLine 1 of the address
...... streetAddress2 0..1stringLine 2 of the address
...... addressRegion 0..1stringSub-unit of country (abbreviations ok)
...... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
Binding: Iso3166-1-3 (preferred)
.... icd11Code 0..1stringICD-11 code of this vaccine type (no binding information in spec)
Binding: WHO Vaccine List (COVID-19) (preferred)
.... prophylaxis 0..1stringDescriptive details of the vaccine type
.... testName 0..1stringLab test results: Test name
.... testType 0..1stringLab test results: Type of test, either `RT-PCR` or `Rapid Antigen Test (RAT)`
Binding: Lab Test - Type - DIVOC (required)
.... sampleOrigin 0..1stringLab test results: Type of sample that was taken (e.g., `nasal swab`
Binding: Lab Test - Sample Origin - DIVOC (required)
.... disease 0..1stringLab test results: Disease or agent targeted
Binding: Lab Test - Pathogen - DIVOC (required)
.... sampleCollectionTimestamp 0..1dateTimeLab test results: Sample collection date and time; complete date, with time and time zone, following ISO 8601
.... resultTimestamp 0..1dateTimeLab test results: Results date and time; complete date, with time and time zone, following ISO 8601
.... result 0..1stringLab test results: result of test
Binding: Lab Test - Qualitative Result - DIVOC (required)
... proof 1..*BackboneElementProof
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1stringType of proof
.... created 0..1dateTimeSignature date and time
.... verificationMethod 1..1stringResolvable issuer identifier
.... proofPurpose 0..1stringPurpose of the signature
.... jws 1..1stringSignature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CertDIVOC.evidence.facility.address.userequiredAddressUse
CertDIVOC.evidence.facility.address.addressCountrypreferredIso3166-1-3
CertDIVOC.evidence.icd11CodepreferredWHO_DDCC_Vaccines_COVID_19
CertDIVOC.evidence.testTyperequiredLabTestTypeDivocValueSet
CertDIVOC.evidence.sampleOriginrequiredLabTestSampleOriginDivocValueSet
CertDIVOC.evidence.diseaserequiredLabTestPathogenDivocValueSet
CertDIVOC.evidence.resultrequiredLabTestQualitativeResultDivocValueSet

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. CertDIVOC 0..*BaseThis is an abstract type.
Certificate - DIVOC Verifiable Credential Logical Model
Instances of this logical model are not marked to be the target of a Reference
... context 1..*stringContext (JSON-LD) - should actually be `@context` but this name isn't supported by FHIR.
... type 1..*stringType
... issuer 1..1stringIssuer identifier
... nonTransferable 0..1booleanNon Trasnferability
... credentialSubject 1..1BackboneElementCredentialSubject
.... @id 0..1stringid
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 1..*stringtype
.... uhid 0..1stringanother id
.... refId 0..1stringreference id
.... name 0..1stringA name associated with the patient
.... gender 0..1stringGender (`Male` or `Female`; unknown if there are other options)
.... sex 0..1stringSex (not used in examples; presumably `Male` or `Female`; unknown if there are other options)
.... age 0..1stringAge
.... dob 0..1dateThe date of birth for the individual (V2 only)
.... nationality 0..1stringNationality
.... address 0..1BackboneElementAddress
..... @id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... streetAddress 0..1stringLine 1 of the address
..... streetAddress2 0..1stringLine 2 of the address
..... district 0..1stringDistrict name (aka county)
..... city 0..1stringName of city, town etc.
..... addressRegion 0..1stringSub-unit of country (abbreviations ok)
..... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
..... postalCode 0..1stringPostal code for area
... evidence 0..*BackboneElementEvidence
.... @id 0..1stringid
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... feedbackUrl 0..1stringURL for feedback
.... infoUrl 0..1stringURL for more information on this record
.... certificateId 0..1stringCertificate Unique Identifier
.... type 1..*stringtype
.... batch 0..1stringVaccine lot number
.... vaccine 0..1stringVaccine description. Might include vaccine type and brand
.... manufacturer 0..1stringName of the Vaccine/Test Manufacturer
.... date 0..1dateTimeDate of immunization
.... effectiveStart 0..1dateEffective immunization start date
.... effectiveUntil 0..1dateEffective immunization end date
.... dose 0..1positiveIntDose Number
.... totalDoses 0..1positiveIntTotal doses for this vaccine protocol regimen
.... verifier 0..1BackboneElementVerifier
..... @id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the practitioner
.... facility 0..1BackboneElementFacility
..... @id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... name 0..1stringName of the facility/entity
..... address 0..1AddressAddress of the facility
...... @id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... use ?!Σ0..1codehome | work | temp | old | billing - purpose of this address
Binding: AddressUse (required): The use of an address.


Example General: home
...... type Σ0..1codepostal | physical | both
Binding: AddressType (required): The type of an address (physical / postal).


Example General: both
...... text Σ0..1stringText representation of the address
Example General: 137 Nowhere Street, Erewhon 9132
...... line Σ0..*stringStreet name, number, direction & P.O. Box etc.
This repeating element order: The order in which lines should appear in an address label
Example General: 137 Nowhere Street
...... city Σ0..1stringName of city, town etc.
Example General: Erewhon
...... district Σ0..1stringDistrict name (aka county)
Example General: Madison
...... state Σ0..1stringSub-unit of country (abbreviations ok)
...... postalCode Σ0..1stringPostal code for area
Example General: 9132
...... country Σ0..1stringCountry (e.g. can be ISO 3166 2 or 3 letter code)
...... period Σ0..1PeriodTime period when address was/is in use
Example General: {"start":"2010-03-23","end":"2010-07-01"}
...... streetAddress 0..1stringLine 1 of the address
...... streetAddress2 0..1stringLine 2 of the address
...... addressRegion 0..1stringSub-unit of country (abbreviations ok)
...... addressCountry 0..1stringCountry (e.g. may be ISO 3166 2 or 3 letter code)
Binding: Iso3166-1-3 (preferred)
.... icd11Code 0..1stringICD-11 code of this vaccine type (no binding information in spec)
Binding: WHO Vaccine List (COVID-19) (preferred)
.... prophylaxis 0..1stringDescriptive details of the vaccine type
.... testName 0..1stringLab test results: Test name
.... testType 0..1stringLab test results: Type of test, either `RT-PCR` or `Rapid Antigen Test (RAT)`
Binding: Lab Test - Type - DIVOC (required)
.... sampleOrigin 0..1stringLab test results: Type of sample that was taken (e.g., `nasal swab`
Binding: Lab Test - Sample Origin - DIVOC (required)
.... disease 0..1stringLab test results: Disease or agent targeted
Binding: Lab Test - Pathogen - DIVOC (required)
.... sampleCollectionTimestamp 0..1dateTimeLab test results: Sample collection date and time; complete date, with time and time zone, following ISO 8601
.... resultTimestamp 0..1dateTimeLab test results: Results date and time; complete date, with time and time zone, following ISO 8601
.... result 0..1stringLab test results: result of test
Binding: Lab Test - Qualitative Result - DIVOC (required)
... proof 1..*BackboneElementProof
.... @id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... type 0..1stringType of proof
.... created 0..1dateTimeSignature date and time
.... verificationMethod 1..1stringResolvable issuer identifier
.... proofPurpose 0..1stringPurpose of the signature
.... jws 1..1stringSignature

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet
CertDIVOC.evidence.facility.address.userequiredAddressUse
CertDIVOC.evidence.facility.address.typerequiredAddressType
CertDIVOC.evidence.facility.address.addressCountrypreferredIso3166-1-3
CertDIVOC.evidence.icd11CodepreferredWHO_DDCC_Vaccines_COVID_19
CertDIVOC.evidence.testTyperequiredLabTestTypeDivocValueSet
CertDIVOC.evidence.sampleOriginrequiredLabTestSampleOriginDivocValueSet
CertDIVOC.evidence.diseaserequiredLabTestPathogenDivocValueSet
CertDIVOC.evidence.resultrequiredLabTestQualitativeResultDivocValueSet

Constraints

IdGradePath(s)DetailsRequirements
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

This structure is derived from Base

Summary

Mandatory: 0 element (10 nested mandatory elements)

 

Other representations of profile: CSV, Excel