Where do I put patient data in an openehr-based CDR?

Hello community,
I am trying to develop an ordered CDR. In order to have the patient data sorted and complete, where is it better to add patient data (name, address, phone…) in a CDR based on OpenEHR? Is it better to create a composition with this data? If so, is there any template related to this?

Thank you very much for everything.

Best regards

1 Like

IMO the CDR should be strictly for clinical data. For demographic data you would have a DDR.


Thank you so much Pablo

Note in the CDR you might have date of birth and sex, since those data points are relevant for clinical use.

Though some may say, it is also important to know the social, economic and environmental information for clinical use, which is true in some contexts like occupational medicine, so some might consider to put that info in the CDR, though having that in the Demographic Data Repository doesn’t mean clinicians can’t access the data, in fact they can, but that the data is managed separately from the EHR. Which has architectural and technical considerations, but doesn’t affect data accessibility.

In my experience, in the long term, it is better to put specific data in the specific system that is designed to manage that type of data. Though some people for some reasons put everything in the EHR. I guess each approach has it’s pros and cons. For instance, for a micro-service architectural approach, each component should have a specific responsibility in term of the data each component manage, the goal is to avoid duplicating data in different repositories and having one source of truth that other components can use, then a Clinical Repo and a Demographic Repo, each have a specific responsibility, and external apps can access the data from both and link the data together to be displayed in a clinical environment.


I agree Pablo, though as you say, there are often local reasons for implementing in different ways and/or carrying some demographics datra in the CDR like D0B and Sex/Gender - essentially as a cache for population querying.

But basically stand up or use a separate Demographics service.

This could be something based on the openEHR Demographics RM but although some vendors use this internally, I am not aware of any publicly available products, or even libraries.

For small=scale solutions, a simple service based on FHIR Demographics will work pretty well, using something like HAPI-FHIR, with the advantage that increasingly, full-blown Demographics service products will be exposing a FHIR Demographics facade.

Here is a student project that played with openEHR, FHIR Demographics and openEMPI.


Yes, specifically this data is very important for research queries