Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

...

Immunization

Changes and decisions

Decision

Reason

Date

Approved 






















Data Structure

This section describes the actual data structure in eHealth MongoDB and how does it correspond to FHIR standard.
Some fields in Data Model may not correspond directly to the API interfaces. They are transformed on the application level.

...

Info

Important!

Next objects contain audit fields by default:

  • Episode

  • Visit

  • Encounter

  • Observation

  • Condition

  • Immunization

  • Allergy_intolerance

  • Device

  • Risk_assessment

  • Medication_statement

Audit fields: 

Name

Type

M/O


inserted_at

dateTime

M


updated_at

dateTime

M


inserted_by

uuid

M


updated_by

uuid

M



Patient

Object name: patient

Name

Type

M/O

Description and constraints

id

AES+base16

M

hash

status

string

M


inserted_by

uuid

M


preperson

boolean

M



Episode of care

Object name: episode_of_care


HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"identifier" : [{ Identifier }], // Business Identifier(s) relevant for this EpisodeOfCare

id

uuid

M


Ok

Approved


name

string

M


Ok


"status" : "<code>"

status

code

M

active, closed, entered_in_error

Ok

Approved


number

string

M

Human readable episode number. Is a shared identifier common to all service requests related to this episode of care

No implementation [3.12.2018]



cancellation_reason

codeable_concept

O


No implementation



closing_reason

codeable_concept

O


No implementation



status_reason

codeable_concept

O

eHealth/closing_reasons,
eHealth/cancellation_reasons




explanatory_letter

string

O





closing_summary

string

O




"statusHistory" : BackboneElement

status_history

[status_history]

M

only start date

Ok

Approved

"type" : [{ CodeableConcept }], // Type/class - e.g. specialist referral, disease management

type

coding

M

deafult value: primary_care
changed from string to coding [1.12.2018]

Ok

Approved


current_diagnoses

[diagnosis]

O




"diagnosis" : BackboneElement

diagnoses_history

[diagnoses_hstr]

M

Included all diagnoses from latest encounter (current_diagnoses) and all diagnoses from previous encounters

Ok

Approved

"patient" : { Reference(Patient) }, // R! The patient who is the focus of this episode of care

patient

reference(patient)

M


Is a part of the corresponding collection

Approved

"managingOrganization" : { Reference(Organization) }, // Organization that assumes care

managing_organization

reference(organization)

M

Legal_entity

Ok

Approved

"period" : { Period }, // Interval during responsibility is assumed

 period

 period_date


Only date handled

Approved

"referralRequest" : [{ Reference(ReferralRequest) }], // Originating Referral Request(s)




Referral Request(s) that are fulfilled by this EpisodeOfCare, incoming referrals.

No implementation

Approved

"careManager" : { Reference(Practitioner) }, // Care manager/care co-ordinator for the patient

care_manager

reference(employee)

M

 Employee

Ok

Approved

"team" : [{ Reference(CareTeam) }], // Other practitioners facilitating this episode of care





No implementation

Approved

"account" : [{ Reference(Account) }] // The set of accounts that may be used for billing for this EpisodeOfCare }





No implementation

Approved


encounters

[encounter]

M


mongo

No implementation

Encounter

Object name: encounter

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"identifier" : [{ Identifier }], // Identifier(s) by which this encounter is known

id

uuid

M


Ok

"status" : "<code>", // R! planned | arrived | triaged | in-progress | onleave | finished | cancelled +

status

string

M

finished, entered_in_error

Ok


contexts

array[reference(visit)|reference(episode)]

M

visit, episode

No implementation [07.09.2018]


explanatory_letter

string

O




cancellation_reason

codeable_concept

O



"statusHistory" : BackboneElement

status_history

status_history

M


No implementation

"classHistory" : BackboneElement





No implementation

"period" : { Period } // R! The time that the episode was in the specified status }],

period

period

M


No implementation


date

string

M

Date when the encounter was performed

Changed to ISO8601 [1.12.2018]

"class" : { Coding }, // inpatient | outpatient | ambulatory | emergency +

class

coding

M

eHealth/encounter_classes

Ok

"type" : [{ CodeableConcept }], // Specific type of encounter

type

codeable_concept

M

email consultation, phone consultation

Ok

"priority" : { CodeableConcept }, // Indicates the urgency of the encounter


codeable_concept

O

eHealth/encounter_priority

Ok

"subject" : { Reference(Patient|Group) }, // The patient ro group present at the encounter

patient

 reference(patient)

 M


No implementation

"episodeOfCare" : [{ Reference(EpisodeOfCare) }], // Episode(s) of care that this encounter should be recorded against

episode

 reference(episode)

M


Ok


visit

reference(visit)

M



"incomingReferral" : [{ Reference(ReferralRequest) }], // The ReferralRequest that initiated this encounter

incoming_referral

 reference(service_request)

 O



Ok

"participant":BackboneElement

performer

reference(employee)



Ok

"appointment" : { Reference(Appointment) }, // The appointment that scheduled this encounter





No implementation

"length" : { Duration }, // Quantity of time the encounter lasted (less time absent)

duration

 duration

 M


No implementation

"reason" : [{ CodeableConcept }], // Reason the encounter takes place (code)

reasons

[codeable_concept]

M

array of ICPC reasons codes

Ok

"diagnosis" : BackboneElement

diagnoses

[diagnosis]

M


Ok

"serviceProvider" : { Reference(Organization) }, // The custodian organization of this Encounter record

service_provider

reference(legal_entity)

 M

 legal_entity

Is already in Episode

"partOf" : { Reference(Encounter) } // Another Encounter this encounter is part of }





No implementation

"location": BackboneElement





No implementation

Absent in FHIR

division

 reference(division)

 O

 division_id
optional from [1.01.2018]


Absent in FHIR

actions

[codeable_concept]

 O

array of ICPC actions codes

Obligation depends on encounter class, e.g. mandatory for PHC and optional for AMB 


Absent in FHIR

action_reference

array

O

array of references to medical services which were provided to the patient during encounter


Absent in FHIR

signed_content_links

[string]

 M

array of links to media storage 


Absent in FHIR

prescriptions

string

O

Field designed to store prescriptions and recommendations made by the doctor during the encounter. Will be deprecated after medication statements implemented.


Absent in FHIR

supporting_info

[reference(observation|diagnostic_report)]

O

Diagnostic reports and observations that were used during the encounter

New

Code Block
 "hospitalization" : 
{ 
    "preAdmissionIdentifier" : { Identifier },
    "origin" : { Reference(Location|Organization) },
    "admitSource" : { CodeableConcept }, 
    "reAdmission" : { CodeableConcept }, 
    "dietPreference" : [{ CodeableConcept }], 
    "specialCourtesy" : [{ CodeableConcept }], 
    "specialArrangement" : [{ CodeableConcept }], 
    "destination":{ Reference(Location|Organization)}, 
    "dischargeDisposition" : { CodeableConcept },
    "dischargeDepartment" :  { CodeableConcept }
  },

hospitalization
- admit_source
- re_admission
- destination
- discharge_disposition
- pre_admission_identifier

- discharge_department

hospitalization
- dict. Health/encounter_admit_source
- dict. Health/encounter_re_admission
- reference (division/legal_entity)
- dict. Health/encounter_discharge_disposition
- string

- dict. Health/encounter_discharge_department

O

is mandatory for encounter class = SS, ACUTE, NONAC


Absent in FHIR

paper_referral

paper_referral

O



Code Block

Visit

Object name: visit


HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

No

id

uuid

M



No

period

period

M



Observation

Object name: observation

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"identifier" : [{ Identifier }], // Business Identifier for observation

id

uuid

M


Ok

"basedOn" : [{ Reference(CarePlan|DeviceRequest|ImmunizationRecommendation| MedicationRequest|NutritionOrder|ProcedureRequest|ReferralRequest) }], // Fulfills plan, proposal or order

based_on

[reference(medication_request,referral_request)]

O

for future use

Ok

"status" : "<code>", // R! registered | preliminary | final | amended +

status

string

M

valid, entered_in_error


"category" : [{ CodeableConcept }], // Classification of type of observation

categories

[codeable_concept]

M

https://www.hl7.org/fhir/valueset-observation-category.html

Ok

"code" : { CodeableConcept }, // R! Type of observation (code / type)

code

codeable_concept

M

http://hl7.org/fhir/ValueSet/observation-codes

Ok

"subject" : { Reference(Patient|Group|Device|Location) }, // Who and/or what this is about

patient

 uuid

M


Ok

"context" : { Reference(Encounter|EpisodeOfCare) }, // Healthcare event during which this observation is made

context

 reference(encounter)

M


Ok


Medical Events MongoDB Data Model#effective_at

Medical Events MongoDB Data Model#effective_at

O


Ok

"effectiveDateTime" : "<dateTime>"

effective_date_time

dateTime

O

Covered effective_at

No implementation

"effectivePeriod" : { Period }

effective_period

period

O

Covered effective_at

No implementation

"issued" : "<instant>", // Date/Time this was made available

issued

string

M

dateTime

Ok


primary_source

boolean

M



"performer" : [{ Reference(Practitioner|Organization|Patient|RelatedPerson) }], // Who is responsible for the observation

Medical Events MongoDB Data Model#source

Medical Events MongoDB Data Model#source

M


Ok


value

Medical Events MongoDB Data Model#value

M


Ok

"valueQuantity" : { Quantity }

value

quantity

O

Covered by Medical Events MongoDB Data Model#value

Ok

"valueCodeableConcept" : { CodeableConcept }

value

codeable_concept

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valueString" : "<string>"

value

string

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valueBoolean" : <boolean>

value

boolean

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valueRange" : { Range }

value

range

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valueRatio" : { Ratio }

value

ratio

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valueSampledData" : { SampledData }

value

sampled_data

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valueAttachment" : { Attachment }

value_attachment

attachment

O


No implementation

"valueTime" : "<time>"

value

time

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valueDateTime" : "<dateTime>"

value

date_time

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"valuePeriod" : { Period }

value

period

O

Covered by  Medical Events MongoDB Data Model#value

Ok

"dataAbsentReason" : { CodeableConcept }, // C? Why the result is missing

data_absent_reason

codeable_concept

O

 Why the result is missing
https://www.hl7.org/fhir/valueset-observation-valueabsentreason.html

No implementation

"interpretation" : { CodeableConcept }, // High, low, normal, etc.

interpretation

codeable_concept

O

High, low, normal, etc.
https://www.hl7.org/fhir/valueset-observation-interpretation.html

Ok

"comment" : "<string>", // Comments about result

comment

 string

O


Ok

"bodySite" : { CodeableConcept }, // Observed body part

body_site

codeable_concept

O


Ok

"method" : { CodeableConcept }, // How it was done

method

codeable_concept

O


Ok

"specimen" : { Reference(Specimen) }, // Specimen used for this observation





No implementation

"device" : { Reference(Device|DeviceMetric) }, // (Measurement) Device




 Measurement device
Should we have this? 

No implementation

"referenceRange" : BackboneElement

 reference_ranges

[reference_range]

O


Ok

where it should come from?

"related" : BackboneElement





No implementation

"component" : BackboneElement

components

[Medical Events MongoDB Data Model#component]

O


Ok

Medication request

Object name: medication_request

...

Condition

Object name: condition

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"identifier" : [{ Identifier }], // Business identifier

id

uuid

M


Ok

Approved

"clinicalStatus" : "<code>", // C? active | recurrence | inactive | remission | resolved

clinical_status

string

M

active | recurrence | inactive | remission | resolved

Ok



"verificationStatus" : "<code>", // C? provisional | differential | confirmed | refuted | entered-in-error | unknown

verification_status

string

M

provisional | differential | confirmed | refuted | entered_in_error 

Ok



"category" : [{ CodeableConcept }], // problem-list-item | encounter-diagnosis

category

codeable_concept

M


No implementation


"severity" : { CodeableConcept }, // Subjective severity of condition

severity 

codeable_concept

O


Ok


"code" : { CodeableConcept }, // Identification of the condition, problem or diagnosis

code

codeable_concept

M

ICPC2  or ICD10 code: depends on context encounter class

Ok


"bodySite" : [{ CodeableConcept }], // Anatomical location, if relevant

body_sites

[codeable_concept]

O


Ok


"subject" : { Reference(Patient|Group) }, // R! Who has the condition?

patient

uuid

M


Ok


"context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter or episode when condition first asserted

context

reference(encounter)

M


Ok


"onsetDateTime" : "<dateTime>",

onset_date

string

M

date_time

Ok


"onsetAge" : { Age },

onset_age

positiveInt

O


Ok

No implementation

"onsetPeriod" : { Period },

onset_period

period

O


Ok

No implementation

"onsetRange" : { Range },

onset_range

range

O


Ok

No implementation

"onsetString" : "<string>",

onset_string

string

O


Ok

No implementation

"abatementDateTime" : "<dateTime>",

abatement_date_time

date_time

O


Ok

No implementation

"abatementAge" : { Age },

abatement_age

age

O


Ok

No implementation

"abatementBoolean" : <boolean>,

abatement_boolean

boolean

O


Ok

No implementation

"abatementPeriod" : { Period },

abatement_period

period

O


Ok

No implementation

"abatementRange" : { Range },

abatement_range

range

O


Ok

No implementation

"abatementString" : "<string>",

abatement_string

string

O


Ok

No implementation

"assertedDate" : "<dateTime>", // Date record was believed accurate

asserted_date 

string

O

Date record was believed accurate

date_time

Ok



primary_source

boolean

M





Medical Events MongoDB Data Model#source

Medical Events MongoDB Data Model#source

M





report_origin

codeable_concept

O


Covered by Medical Events MongoDB Data Model#source

No implementation

"asserter" : { Reference(Practitioner|Patient|RelatedPerson) }, // Person who asserts this condition

asserter

reference(employee|patient)

O


Covered by Medical Events MongoDB Data Model#source

No implementation

"stage" : Backbone

stage

stage

O


Ok


"evidence" : Backbone

evidences

[evidence]

O


Ok


"note" : [{ Annotation }] // Additional information about the Condition

note

[annotation]

O


Ok

No implementation


Immunization

Object name: immunization

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"identifier" : [{ Identifier }], // Business identifier

id

uuid

M


Ok

"status" : "<code>", // R! completed | entered-in-error

status

string

M

completed | entered_in_error

Ok

"notGiven" : <boolean>, // R! Flag for whether immunization was given

not_given

boolean

M


Ok

"vaccineCode" : { CodeableConcept }, // R! Vaccine product administered

vaccine_code

codeable_concept

M


Ok

"patient" : { Reference(Patient) }, // R! Who was immunized

patient

reference(patient)

M


No implementation

"encounter" : { Reference(Encounter) }, // Encounter administered as part of

context

reference(encounter)

M

This a encounter on which immunization was registered

Ok

"date" : "<dateTime>", // Vaccination administration date

date

string

M

string

Ok

"primarySource" : <boolean>, // R! Indicates context the data was recorded in

primary_source

boolean

M


Ok


Medical Events MongoDB Data Model#source

Medical Events MongoDB Data Model#source

M



"reportOrigin" : { CodeableConcept }, // Indicates the source of a secondarily reported record

report_origin

codeable_concept

O

Covered by Medical Events MongoDB Data Model#source

Ok

"location" : { Reference(Location) }, // Where vaccination occurred

legal_entity

reference(legal_entity)

O


Ok

"manufacturer" : { Reference(Organization) }, // Vaccine manufacturer

manufacturer

string

O


Ok

"lotNumber" : "<string>", // Vaccine lot number

lot_number

string

O


Ok

"expirationDate" : "<date>", // Vaccine expiration date

expiration_date

string

O

date_time

Ok

"site" : { CodeableConcept }, // Body site vaccine was administered

site

codeable_concept

O


Ok

"route" : { CodeableConcept }, // How vaccine entered body

route

codeable_concept

O


Ok

"doseQuantity" : { Quantity(SimpleQuantity) }, // Amount of vaccine administered

dose_quantity

quantity

O


Ok

"practitioner" : BackboneElement

performer

reference(employee)

O

Covered by Medical Events MongoDB Data Model#source

ok

"note" : [{ Annotation }], // Vaccination notes





No implementation

"explanation" : BackboneElement

explanation

explanation

O


Ok

"reaction" : BackboneElement

reactions

[reaction]

O


Ok

"vaccinationProtocol" : BackboneElement

vaccination_protocols

[vaccination_protocol]

O


Ok

Allergy intolerance 

Object name: allergy_intolerance

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"identifier" : [{ Identifier }], // Business identifier

id

uuid

M


Ok

"clinicalStatus" : "<code>", // C? active | inactive | resolved

clinical_status

string

M

dictionary

Ok

"verificationStatus" : "<code>", // C? R! unconfirmed | confirmed | refuted | entered-in-error

verification_status

string

M

dictionary

Ok

"type" : "<code>", // allergy | intolerance - Underlying mechanism (if known)

type

string

M


Ok

"category" : ["<code>"], // food | medication | environment | biologic

category

string

M

dictionary

Ok

"criticality" : "<code>", // low | high | unable-to-assess

criticality

string

M

dictionary

Ok

"code" : { CodeableConcept }, // Code that identifies the allergy or intolerance

code

codeable_concept

M


Ok

"patient" : { Reference(Patient) }, // R! Who the sensitivity is for


reference(patient)

M


No implementation

"onsetDateTime" : "<dateTime>",

onset_date_time

string

M

date_time

Ok

"onsetAge" : { Age },





No implementation

"onsetPeriod" : { Period },





No implementation

"onsetRange" : { Range },





No implementation

"onsetString" : "<string>",





No implementation

"assertedDate" : "<dateTime>", // Date record was believed accurate

asserted_date

string

M

date_time

Ok

"recorder" : { Reference(Practitioner|Patient) }, // Who recorded the sensitivity

recorder

reference(patient| employee)

M


No implementation


primary_source

boolean

M




Medical Events MongoDB Data Model#source

Medical Events MongoDB Data Model#source

M




report_origin

codeable_concept

O

Covered by Medical Events MongoDB Data Model#source

ok

"asserter" : { Reference(Patient|RelatedPerson|Practitioner) }, // Source of the information about the allergy

asserter

reference(patient|employee)

O

Covered by Medical Events MongoDB Data Model#source

ok

"lastOccurrence" : "<dateTime>", // Date(/time) of last known occurrence of a reaction

last_occurence

string

O

date_time

Ok

"note" : [{ Annotation }], // Additional text not captured in other fields





No implementation

"reaction" : BackboneElement

reaction

reaction

M


No implementation


context

reference(encounter)

M


Ok

Risk Assessment

Object name: risk_assessment

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"identifier" : { Identifier }, // Unique identifier for the assessment

id

uuid

M


Ok


"basedOn" : { Reference(Any) }, // Request fulfilled by this assessment

based_on

reference(service_request)

O

service request?

No implementation


"parent" : { Reference(Any) }, // Part of this occurrence

parent



use case? can't find an example

No implementation


"status" : "<code>", // R! registered | preliminary | final | amended +

status

string

M

Dictionary

Ok


"method" : { CodeableConcept }, // Evaluation mechanism

method

codeable_concept

O

Dictionary: deafult_code

Ok


"code" : { CodeableConcept }, // Type of assessment

code

codeable_concept

M


Ok


"subject" : { Reference(Patient|Group) }, // Who/what does assessment apply to?

subject

reference(patient)


No implementation, because risk assessment is already in patient's collection

Ok


"context" : { Reference(Encounter|EpisodeOfCare) }, // Where was assessment performed?

context

reference(encounter)

M


Ok


// occurrence[x]: When was assessment made?. One of these 2: "occurrenceDateTime" : "<dateTime>", "occurrencePeriod" : { Period },

asserted_date

string

M

only datetime
in the past

Ok


"condition" : { Reference(Condition) }, // Condition assessed

condition



Use case?
 Why do we need that? 

No implementation
Нужно сделать обратную связь



primary_source






"performer" : { Reference(Practitioner|Device) }, // Who did assessment?

performer

reference(employee)

M


Ok



report_origin






// reason[x]: Why the assessment was necessary?. One of these 2: "reasonCodeableConcept" : { CodeableConcept }, "reasonReference" : { Reference(Any) },

one of

  • reason_codes

  • reason_references

reason

O


Ok


"basis" : [{ Reference(Any) }], // Information used in assessment

basis

extended_reference(text+[reference(condition|observation|diagnostic_report)])

O


Ok


"prediction" : [{ Backbone element }],

predictions

[prediction]





"mitigation" : "<string>", // How to reduce risk

mitigation

string

O


Ok


"comment" : "<string>" // Comments on the risk assessment

comment

string

O


Ok


Device

Object name: device

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"identifier" : [{ Identifier }], // Instance identifier

id

uuid

M


Ok


"udi" : { // Unique Device Identifier (UDI) Barcode string "deviceIdentifier" : "<string>", // Mandatory fixed portion of UDI "name" : "<string>", // Device Name as appears on UDI label "jurisdiction" : "<uri>", // Regional UDI authority "carrierHRF" : "<string>", // UDI Human Readable Barcode String "carrierAIDC" : "<base64Binary>", // UDI Machine Readable Barcode String "issuer" : "<uri>", // UDI Issuing Organization "entryType" : "<code>" // barcode | rfid | manual + },

udi

string

M

what format is suitable for Ukraine?

No implementation


"status" : "<code>", // active | inactive | entered-in-error | unknown

status

string

M

Dictionary

Ok



status_history


M


No implementation
There is no need in this field if each state is in new item



asserted_date

string

M

date_time





usage_period

Period

M





context

reference(encounter)

M





primary_source

boolean

M





report_origin

source

M




"type" : { CodeableConcept }, // What kind of device this is

type

codeable_concept

M

example - implant

Ok


"lotNumber" : "<string>", // Lot number of manufacture

lot_number

string

O


Ok


"manufacturer" : "<string>", // Name of device manufacturer

manufacturer

string

O


Ok


"manufactureDate" : "<dateTime>", // Date when the device was made

manufacture_date

string

O

date_time

Ok


Code Block
"expirationDate" : "<dateTime>", // Date and time of expiry of this device (if applicable)

expiration_date

string

O

date_time

Ok


"model" : "<string>", // Model id assigned by the manufacturer

model

string

O


Ok


"version" : "<string>", // Version number (i.e. software)

version

string

O


Ok


"patient" : { Reference(Patient) }, // Patient to whom Device is affixed





No implementation


"owner" : { Reference(Organization) }, // Organization responsible for device





No implementation for now


"contact" : [{ ContactPoint }], // Details for human/organization for support

contact_point

string



No implementation


"location" : { Reference(Location) }, // Where the resource is found

location




No implementation for now


"url" : "<uri>", // Network address to contact device

uri

string



No implementation for now


"note" : [{ Annotation }], // Device notes and comments

note

string

O


Ok


"safety" : [{ CodeableConcept }] // Safety Characteristics of Device

safety

[codeable_concept]

O


No implementation


Medication Statement

Object name: medication_statement

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"identifier" : [{ Identifier }], // External identifier

id

uuid

M


Ok


"basedOn" : [{ Reference(MedicationRequest|CarePlan|ServiceRequest) }], // Fulfils plan, proposal or order

based_on

reference(medication_request)

O


Ok


"partOf" : [{ Reference(MedicationAdministration|MedicationDispense| MedicationStatement|Procedure|Observation) }], // Part of referenced event

part_of

reference(?)


What is the difference between this one and the previous one?

No implementation


"status" : "<code>", // R! active | completed | entered-in-error | intended | stopped | on-hold | unknown | not-taken

status

string

M

dictionary: 
active | stopped| entered-in-error 



"statusReason" : [{ CodeableConcept }], // Reason for current status

status_reason

codeable_concept

M


No implementation


"category" : { CodeableConcept }, // Type of medication usage

category

codeable_concept

M


No implementation


// medication[x]: What medication was taken. One of these 2: "medicationCodeableConcept" : { CodeableConcept }, "medicationReference" : { Reference(Medication) },

medication_code

codeable_concept

M


Ok
No  medication reference


"subject" : { Reference(Patient|Group) }, // R! Who is/was taking the medication




No implementation, because medication statement is already stored in the patient collection

Ok


context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter / Episode associated with MedicationStatement

context

reference(encounter)

M


Ok


Code Block
// effective[x]: The date/time or interval when the medication is/was/will taken. One of these 2:
  "effectiveDateTime" : "<dateTime>",
  "effectivePeriod" : { Period },

effective_period

string

O

IT'S JUST A STRING. NO DATE_TIME VALIDATION

Changed


"dateAsserted" : "<dateTime>", // When the statement was asserted?

asserted_date

string

M

date_time

Ok



primary_source

boolean

M





asserter

reference(employee)

O




"informationSource" : { Reference(Patient|Practitioner|RelatedPerson| Organization) }, // Person or organization that provided the information about the taking of this medication

report_origin

codeable_concept

O


Ok


"derivedFrom" : [{ Reference(Any) }], // Additional supporting information





No implementation


"reasonCode" : [{ CodeableConcept }], // Reason for why the medication is being/was taken







"reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport) }], // Condition or observation that supports why the medication is being/was taken







"note" : [{ Annotation }], // Further information about the statement

note

string

O


Ok


"dosage" : [{ Dosage }] // Details of how medication is/was taken or should be taken

dosage

string

O


Type changed


Medication Administration

FHIR

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"identifier" : [{ Identifier }], // External identifier

id

uuid

M




"instantiates" : ["<uri>"],
// Instantiates protocol or definition

?



A protocol, guideline, orderset, or other definition that was adhered to in whole or in part by this event.

No implementation


"partOf" : [{ Reference(MedicationAdministration|Procedure) }],
// Part of referenced event

part_of

[reference(

Medication_administration,

Procedure

)]

O




"status" : "<code>",
// R! in-progress | not-done | on-hold | completed | entered-in-error | stopped | unknown

status

string

M

dictionary (completed,entered_in_error)



"statusReason" : [{ CodeableConcept }], // Reason administration not performed

status_reason

codeable_concept

O

mandatory for entered_in_error



"category" : { CodeableConcept }, // Type of medication usage

 category

codeable_concept

M




// medication[x]: What was administered. One of these 2: "medicationCodeableConcept" : { CodeableConcept }, "medicationReference" : { Reference(Medication) },

medication

reference(medication)

M

Reference to the medication (with the type BRAND) 



"subject" : { Reference(Patient|Group) }, // R! Who received medication

subject

reference(person)


No implementation, because risk assessment is already in patient's collection



"context" : { Reference(Encounter|EpisodeOfCare) },
// Encounter or Episode of Care administered as part of

context

reference(encounter)

M




"supportingInformation" : [{ Reference(Any) }],
// Additional information to support administration

?






// effective[x]: Start and end time of administration. One of these 2: "effectiveDateTime" : "<dateTime>", "effectivePeriod" : { Period },

performed_date_time

 date_time

M

datetime



"performer" : [{ // Who performed the medication administration and what they did "function" : { CodeableConcept }, // Type of performance "actor" : { Reference(Practitioner|PractitionerRole|Patient|RelatedPerson|Device) }
// R! Who performed the medication administration }],

performer

reference(employee)

M





managing_organization

managing_organization


autofilled for ABAK



"reasonCode" : [{ CodeableConcept }], // Reason administration performed

?




No implementation


"reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport) }], // Condition or observation that supports why the medication was administered

reason_references

[{ Reference(Condition|Observation|DiagnosticReport) }]

O




"request" : { Reference(MedicationRequest) }, // Request administration performed against

request

{ Reference(MedicationRequest) }

O

validate with ATC codes in medication



"device" : [{ Reference(Device) }], // Device used to administer

?device

[{ Reference(Device) }]

O


No implementation


"note" : [{ Annotation }], // Information about the administration

note

string

O




"dosage" : { // Details of how medication was taken "text" : "<string>", // Free text dosage instructions e.g. SIG "site" : { CodeableConcept }, // Body site administered to "route" : { CodeableConcept }, // Path of substance into body "method" : { CodeableConcept }, // How drug was administered "dose" : { Quantity(SimpleQuantity) }, // Amount of medication per dose // rate[x]: Dose quantity per unit of time. One of these 2: "rateRatio" : { Ratio } "rateQuantity" : { Quantity(SimpleQuantity) } },

dosage

[dosage]

M




"eventHistory" : [{ Reference(Provenance) }] // A list of events of interest in the lifecycle

?






Procedure

FHIR

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"identifier" : [{ Identifier }], // External Identifiers for this procedure

id

uuid

M

Unique identifier of current record

+

"instantiatesCanonical" : [{ canonical(PlanDefinition|ActivityDefinition| Measure|OperationDefinition|Questionnaire) }], // Instantiates FHIR protocol or definition





No implementation

"instantiatesUri" : ["<uri>"], // Instantiates external protocol or definition





No implementation

"basedOn" : [{ Reference(CarePlan|ServiceRequest) }], // A request for this procedure

based_on

reference(ServiceRequest)

O

Mandatory for encounter package,

could be send with  encounter package type PHC

+

"partOf" : [{ Reference(Procedure|Observation|MedicationAdministration) }], // Part of referenced event

part_of

reference(procedure)

O

Only type procedure allowed

No Implementation

"status" : "<code>", // R! preparation | in-progress | not-done | suspended | aborted | completed | entered-in-error | unknown

status

string

M

Only these statuses allowed:

entered_in_error, completed

+

"statusReason" : { CodeableConcept }, // Reason for current status

status_reason

codeable_concept

O

mandatory for enterred_in_error

+


explanatory_letter

string

O

mandatory for enterred_in_error

+

"category" : { CodeableConcept }, // Classification of the procedure



?

No dictionary will be provided any  soon

No implemenation

"code" : { CodeableConcept }, // Identification of the procedure

code

reference(services)

M

reference on services

+

"subject" : { Reference(Patient|Group) }, // R! Who the procedure was performed on



M

part of patients collection

+

"encounter" : { Reference(Encounter) }, // Encounter created as part of

encounter

reference(encounter)

O

mandatory for encounter package, 

can not be submitted in DR in separate route

+

// performed[x]: When the procedure was performed. One of these 5: "performedDateTime" : "<dateTime>", "performedPeriod" : { Period }, "performedString" : "<string>", "performedAge" : { Age }, "performedRange" : { Range },

performed_date_time

date_time

M

datetime

+

"recorder" : { Reference(Patient|RelatedPerson|Practitioner| PractitionerRole) }, // Who recorded the procedure

recorded_by

reference(employee)

M

signature or encounter performer

+

"asserter" : { Reference(Patient|RelatedPerson|Practitioner| PractitionerRole) }, // Person who asserts this procedure





No implementation


primary_source

boolean

M

determines the source of data in current record: whether the procedure was posted by its performer (true) or it was posted by third party, for example by family doctor based on the patients words (false) 



report_origin

codeable_concept

O

should be filled, if primary_source=false


"performer" : [{ // The people who performed the procedure "function" : { CodeableConcept }, // Type of performance "actor" : { Reference(Practitioner|PractitionerRole|Organization|Patient| RelatedPerson|Device) }, // R! The reference to the practitioner "onBehalfOf" : { Reference(Organization) } // Organization the device or practitioner was acting for }],

performer

extended_reference

M

should be filled by reference, if primary_source=true

if reference, then it should be an employee with type 'DOCTOR', 'SPECIALIST', 'ASSISTANT'

+

Code Block
  "location" : { Reference(Location) }, // Where the procedure happened

division

reference(division)

O

Legal entity division where procedure was performed



managing_organization

reference(legal_entity)

M

Organization (legal entity) which is responsible for current procedure 


Code Block
 "reasonCode" : [{ CodeableConcept }], // Coded reason procedure performed





No implementation

Code Block
 "reasonReference" : [{ Reference(Condition|Observation|Procedure|
   DiagnosticReport|DocumentReference) }], // The justification that the procedure was performed

reason_references

[reference(condition|procedure|diagnostic_report)]

O

The justification of why the procedure was performed

+

Code Block
 "bodySite" : [{ CodeableConcept }], // Target body sites

body_sites

[codeable_concept]

O

No implementation cause there is no corresponding dictionary and no implementation of such field on Service Requests at the moment. If doctor needs to specify body site, he/she will do it using text in code attribute.

No implementation

Code Block
 "outcome" : { CodeableConcept }, // The result of procedure

outcome

codeable_concept

O

The outcome of the procedure - did it resolve the reasons for the procedure being performed.

+

Code Block
 "report" : [{ Reference(DiagnosticReport|DocumentReference|Composition) }], // Any report resulting from the procedure

report

reference(diagnostic_report)

O

No implementation cause currently there is no need in posting of diagnostic procedure reports with separate  procedure to the system 

No implementation

Code Block
  "complication" : [{ CodeableConcept }], // Complication following the procedure

complications

[codeable_concept]

O

No implementation cause there is no corresponding dictionaries. Doctor should use text part in outcome field instead or complicationDetail as a reference to condition

No implementation

Code Block
  "complicationDetail" : [{ Reference(Condition) }], // A condition that is a result of the procedure

complication_details

[reference(condition)]

O

Could be filled only for procedure in encounter package and only with reference to condition from same encounter

+

Code Block
  "followUp" : [{ CodeableConcept }], // Instructions for follow up


-



No implementation

Code Block
"note" : [{ Annotation }], // Additional information about the procedure

note

string

O

Any other notes and comments about the procedure that are not specified in corresponding attributes 


Code Block
 "focalDevice" : [{ // Manipulated, implanted, or removed device
    "action" : { CodeableConcept }, // Kind of change to device
    "manipulated" : { Reference(Device) } // R!  Device that was changed
  }],


-



No implementation

Code Block
  "usedReference" : [{ Reference(Device|Medication|Substance) }], // Items used during procedure

used_references

[reference(medication)]

O

Useful attribute, but it could be implemented without national medicine registry, which is currently unavailable. Mecications structure in e-health contains only medications, which take part in reimbursement national program.

No implementation

Code Block
  "usedCode" : [{ CodeableConcept }] // Coded items used during the procedure


-



No implementation


origin_episode

reference(episode)

M

Episode of care during which Service Request, dispensed by Procedure, was initialised


Complex Types

reference

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"reference" : "<string>", // C? Literal reference, Relative, internal or absolute URL





No implementation

"identifier" : { Identifier }, // Logical reference, when literal reference is not known

identifier

identifier

M


Ok


display_value

string

O


This field is filled on creating and never updated after

"display" : "<string>" // Text alternative for the resource





No implementation

identifier
Anchor
idintifier
idintifier

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"use" : "<code>", // usual | official | temp | secondary (If known)

use


M


No implementation

"type" : { CodeableConcept }, // Description of identifier

type

codeable_concept

M

Plain text representation of the concept

Ok

"system" : "<uri>", // The namespace for the identifier value

system

string

M


No implementation

"value" : "<string>", // The value that is unique

value

string

M


Ok

"period" : { Period }, // Time period when id is/was valid for use

period




No implementation

"assigner" : { Reference(Organization) } // Organization that issued id (may be just text)

assigner




No implementation


Anchor
codeable_concept
codeable_concept
codeable_concept

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"coding" : [{ Coding }], // Code defined by a terminology system

coding

[coding]

M


Ok

"text" : "<string>" // Plain text representation of the concept

text

string

O

Plain text representation of the concept

Ok


coding
Anchor
coding
coding

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"system" : "<uri>", // Identity of the terminology system

system

string

M


Ok

"version" : "<string>", // Version of the system - if relevant

version

string

O

Version of the system - if relevant

No

"code" : "<code>", // Symbol in syntax defined by the system

code

string

M

Any dictionary

Ok

"display" : "<string>", // Representation defined by the system

display

string

O


Ok

"userSelected" : <boolean> // If this coding was chosen directly by the user





No implementetion

Anchor
period
period
period

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"start" : "<dateTime>", // C? Starting time with inclusive boundary

start

dateTime

M


Ok

"end" : "<dateTime>" // C? End time with inclusive boundary, if not ongoing

end

dateTime

O


Ok

period_date

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"start" : "<dateTime>", // C? Starting time with inclusive boundary

start

date

M


-

"end" : "<dateTime>" // C? End time with inclusive boundary, if not ongoing

end

date

O


-

status_history

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

"status" : "<code>"

status

string

M

dictionary

Ok


status_reason

codeable_concept

O




inserted_at

string

M

date



inserted_by

uuid

M

user_id


"period" : { Period } // R! Duration the EpisodeOfCare was in the specified status

period

period

M


No implementation

diagnosis

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result


"condition" : { Reference(Condition) }, // R! Conditions/problems/diagnoses this episode of care is for

condition

reference(condition)

M


Ok

Approved

"role" : { CodeableConcept }, // Role that this diagnosis has within the episode of care (e.g. admission, billing, discharge …)

role

codeable_concept

M

Own dictionary

Ok

Approved

"rank" : "<positiveInt>" // Ranking of the diagnosis (for each role type)

rank

positiveInt

O

max 10

Ok

Approved


code

codeable_concept

M


Ok



diagnoses_hstr


HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result



date

string

M

date_time




evidence

reference(encounter)

M





diagnoses

[diagnosis]

M





is_active

boolean

M

true by default




stage

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result


"summary" : { CodeableConcept }, // C? Simple summary (disease specific)

summary

codeable_concept

M


Ok


"assessment" : [{ Reference(ClinicalImpression|DiagnosticReport|Observation) }] // C? Formal record of assessment

assessment


M

Own dictionary

No implementation


evidence

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result


"code" : [{ CodeableConcept }], // C? Manifestation/symptom

codes

[codeable_concept]

M


Ok


"detail" : [{ Reference(Any) }] // C? Supporting information found elsewhere

details

[reference(observation)]

M


Ok


explanation

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result



type

string

M

reasons, reasons_not_given




value

[codeable_concept]

M




"reason" : [{ CodeableConcept }], // Why immunization occurred

reasons

[codeable_concept]

O


Covered by explanation.value

No implementation

"reasonNotGiven" : [{ CodeableConcept }] // Why immunization did not occur

reasons_not_given

[codeable_concept]

O


Covered by explanation.value

No implementation

reaction

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result


"date" : "<dateTime>", // When reaction started

date

date_time

O


No implementation


"detail" : { Reference(Observation) }, // Additional information on reaction

detail

reference(observation)

O


Ok


"reported" : <boolean> // Indicates self-reported reaction

reported

boolean

O


No implementation



vaccination_protocol

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result


"doseSequence" : "<positiveInt>", // Dose number within series

dose_sequence

positive_int

O


Ok


"description" : "<string>", // Details of vaccine protocol

description

string

O


Ok


"authority" : { Reference(Organization) }, // Who is responsible for protocol

authority

codeable_concept

O


Ok


"series" : "<string>", // Name of vaccine series

series

string

O


Ok


"seriesDoses" : "<positiveInt>", // Recommended number of doses for immunity

series_doses

postive_int

O


Ok


"targetDisease" : [{ CodeableConcept }], // R! Disease immunized against

target_diseases

[codeable_concept]

M


Ok


"doseStatus" : { CodeableConcept }, // R! Indicates if dose counts towards immunity

dose_status

codeable_concept

M


Removed 26.02.2019


"doseStatusReason" : { CodeableConcept } // Why dose does (not) count

dose_status_reason

codeable_concept

O


Removed 26.02.2019




value

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result



type

string

M

quantity, codeable_concept, string, boolean, range, ratio, sampled_data, time, date_time, period

Ok



value

ONE OF: quantity, codeable_concept, string, boolean, range, ratio, sampled_data, time, date_time, period

M


Ok



component

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"code" : { CodeableConcept }, // R! Type of component observation (code / type)

code

codeable_concept

M


Ok



value

Medical Events MongoDB Data Model#value

M


Ok


"valueQuantity" : { Quantity },





Covered by value

No implementation

"valueCodeableConcept" : { CodeableConcept }





Covered by value

No implementation

"valueString" : "<string>"





Covered by value

No implementation

"valueRange" : { Range }





Covered by value

No implementation

"valueRatio" : { Ratio }





Covered by value

No implementation

"valueSampledData" : { SampledData }





Covered by value

No implementation

"valueTime" : "<time>"





Covered by value

No implementation

"valueDateTime" : "<dateTime>"





Covered by value

No implementation

"valuePeriod" : { Period }





Covered by value

No implementation

"interpretation" : { CodeableConcept }

interpretation

codeable_concept

O



Ok

"referenceRange" : [{ Content as for Observation.referenceRange }]

reference_ranges

[reference_range]

O



Ok

reference_range

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"low" : { Quantity(SimpleQuantity) }, // C? Low Range, if relevant

low

quantity

O


Ok


"high" : { Quantity(SimpleQuantity) }, // C? High Range, if relevant

high

quantity

O


Ok


"type" : { CodeableConcept }, // Reference range qualifier

type

codeable_concept

O


Ok


"appliesTo" : [{ CodeableConcept }], // Reference range population

applies_to

[codeable_concept]

O


Ok


"age" : { Range }, // Applicable age range, if relevant

age

range

O


Ok


"text" : "<string>" // Text based reference range in an observation

text

string

O


Ok


effective_at

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result



type

string

M

effective_date_time, effective_period

Ok



value

string or period

M


Ok



source

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result



type

string

M

report_origin, performer, asserter

Ok



value

for report_origin - codeable_concept
for performer - reference(employee)

for asserter - reference(employee)

M


Ok


quantity

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"value" : <decimal>, // Numerical value (with implicit precision)

value

decimal

M


Ok


"comparator" : "<code>", // < | <= | >= | > - how to understand the value

comparator

string

enum

O

< | <= | >= | >

Ok


"unit" : "<string>", // Unit representation

unit

string

enum

O

for future use

Ok


"system" : "<uri>", // C? System that defines coded unit form

system

string enum

M

eHealth/ucum/units

Ok


"code" : "<code>" // Coded form of the unit

code

string enum

M


Ok



range

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"low" : { Quantity(SimpleQuantity) }, // C? Low limit

low

quantity

O


Ok


"high" : { Quantity(SimpleQuantity) } // C? High limit

high

quantity

O


Ok



prediction

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

"outcome" : { CodeableConcept }, // R! Possible outcome for the subject

outcome

codeable_concept

M


Ok


// probability[x]: Likelihood of specified outcome.One of these 2:

"probabilityDecimal" : <decimal>,

"probabilityRange" : { Range },

probability

probability

O


Ok


"qualitativeRisk" : { CodeableConcept }, // Likelihood of specified outcome as a qualitative value

qualitative_risk

codeable_concept

O


Ok


"relativeRisk" : <decimal>, // Relative likelihood

relative_risk

decimal

O


Ok


// when[x]: Timeframe or age range. One of these 2:

"whenPeriod" : { Period },

"whenRange" : { Range },

when


O

is a stupid name for a field =\ 

Ok


"rationale" : "<string>" // Explanation of prediction

rationale

string

O



Ok



probability

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status


type

string

M

enum: probability_decimalprobability_range 

ok



value

ONE_OF:

probability_decimal - decimal,

probability_range - Range

M


ok



when

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status


type

string

M

enum: when_period, when_range

ok



value

ONE_OF:

when_period - Period,

when_range - Range

M


ok



UDI

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

Code Block
"deviceIdentifier" : "<string>", // Mandatory fixed portion of UDI

device_number






Code Block
"name" : "<string>", // Device Name as appears on UDI label







Code Block
"jurisdiction" : "<uri>", // Regional UDI authority







Code Block
 "carrierHRF" : "<string>", // UDI Human Readable Barcode String







Code Block
"carrierAIDC" : "<base64Binary>", // UDI Machine Readable Barcode String







Code Block
"issuer" : "<uri>", // UDI Issuing Organization







Code Block
"entryType" : "<code>" // barcode | rfid | manual +








extended_reference

This type can be used when a reference cannot be defined and text should be used instead.

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status


text

string

O





references

[reference]

O





reason


HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status


type

string

М

enum: reason_codes, reason_references




value

ONE_OF: reason_codes - [codeable_concept], reason_references-[reference]

М





paper_referral

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status


requisition

string

O

Service request number




requester_legal_entity_name

string

O

Requester legal entity name




requester_legal_entity_edrpou

string

M

Requester legal entity edrpou




requester_employee_name

string

M

Requester employee name




service_request_date

date

M

Service request date




note

string

O

Some notes



dosage


HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

Code Block
"sequence" : <integer>, // The order of the dosage instructions







Code Block
"text" : "<string>", // Free text dosage instructions e.g. SIG







Code Block
"additionalInstruction" : [{ CodeableConcept }], // Supplemental instruction or warnings to the patient - e.g. "with meals", "may cause drowsiness"







Code Block
"patientInstruction" : "<string>", // Patient or consumer oriented instructions







Code Block
  "timing" : { Timing }, // When medication should be administered
  // asNeeded[x]: Take "as needed" (for x). One of these 2:
  "asNeededBoolean" : <boolean>,
  "asNeededCodeableConcept" : { CodeableConcept },







Code Block
"site" : { CodeableConcept }, // Body site to administer to







Code Block
 "route" : { CodeableConcept }, // How drug should enter body







Code Block
"method" : { CodeableConcept }, // Technique for administering medication







Code Block
 "doseAndRate" : [{ // Amount of medication administered
    "type" : { CodeableConcept }, // The kind of dose or rate specified
    // dose[x]: Amount of medication per dose. One of these 2:
    "doseRange" : { Range },
    "doseQuantity" : { Quantity(SimpleQuantity) },
    // rate[x]: Amount of medication per unit of time. One of these 3:
    "rateRatio" : { Ratio }
    "rateRange" : { Range }
    "rateQuantity" : { Quantity(SimpleQuantity) }
  }],







Code Block
  "maxDosePerPeriod" : { Ratio }, // Upper limit on medication per unit of time







Code Block
"maxDosePerAdministration" : { Quantity(SimpleQuantity) }, // Upper limit on medication per administration







Code Block
"maxDosePerLifetime" : { Quantity(SimpleQuantity) } // Upper limit on medication per lifetime of the patient








timing

HL7

Name

Type

M/O

Description and constraints

HL7 vs eHealth comparison result

Status

Code Block
"event" : ["<dateTime>"], // When the event occurs

Code Block
"repeat" : { // When the event is to occur
// bounds[x]: Length/Range of lengths, or (Start and/or end) limits. One of these 3:
"boundsDuration" : { Duration },
"boundsRange" : { Range },
"boundsPeriod" : { Period },
"count" : "<positiveInt>", // Number of times to repeat
"countMax" : "<positiveInt>", // Maximum number of times to repeat
"duration" : <decimal>, // How long when it happens
"durationMax" : <decimal>, // How long when it happens (Max)
"durationUnit" : "<code>", // s | min | h | d | wk | mo | a - unit of time (UCUM)
"frequency" : "<positiveInt>", // Event occurs frequency times per period
"frequencyMax" : "<positiveInt>", // Event occurs up to frequencyMax times per period
"period" : <decimal>, // Event occurs frequency times per period
"periodMax" : <decimal>, // Upper limit of period (3-4 hours)
"periodUnit" : "<code>", // s | min | h | d | wk | mo | a - unit of time (UCUM)
"dayOfWeek" : ["<code>"], // mon | tue | wed | thu | fri | sat | sun
"timeOfDay" : ["<time>"], // Time of day for action
"when" : ["<code>"], // Code for time period of occurrence
"offset" : "<unsignedInt>" // Minutes from event (before or after)
}

Code Block
"code" : { CodeableConcept } // BID | TID | QID | AM | PM | QD | QOD | +