Understanding Flat Composition JSON


I am trying to create a Flat JSON using the following Template:
Web Template (JSON)

I am using the EHRScape Rest API via Postman and it is successfully creating a JSON.
I am not able to understand a few fields in it.

I have highlighted the fields in the image

These fields are created with all the templates that I have tried.

For a custom template:

Can anyone please help me understand what these fields are.

Thank you,
Philips Healthcare.

1 Like

These are standard context data that openEHR supports for any composition. You can optionally commit this with the composition if required. Most of these are not mandatory and can be removed if not needed.


1 Like

This might help understanding. Essentially, those rows are extracted from deeper in the canonical model structures, to make life easier for many common cases. The commit logic in the server recreates the correct structures. See here for the field level correspondences.


When using the “template//example” method, the system creates an example WebTemplate composition in either FLAT or STRUCTURED format.

There is an additional parameter, namely “exampleFilter”, that can have a value of eiter “OUTPUT” or “INPUT”.

Your example used the “INPUT” value, which prepares a WebTemplate formatted composition ready to be stored in the CDR.

If you used the “OUTPUT” value, you’d get the example WebTemplate composition as if it were read from the CDR.

The field prefixed with “ctx/” are just Better EHR Server shortcuts for some RM fields and structures, as @Dileep_V_S and @thomas.beale correctly pointed out.

We support this as well in EHRbase, so I think it would be good if this will become part of the openEHR spec

@birger.haarbrandt can you say if what you support follows the UML diagram I referenced above, or what is the exact list of items you support? I’ll add the list to the Serial Data Formats spec.

@thomas.beale what’s the status of the serial data formats spec?

I’m working on migrating the whole conformance tests of EHRBASE to have a suite with flat format data sets, but found many formats on the spec with some differences between them from different vendors.

Do we have a formal definition of “flat format” or are we just mentioning formats provided by different vendors? Or is there some harmonization work going on?

I never worked with formats outside the canonical ones so this is all very new for me.


Bingo (apparently I can’t just say Bingo, it has to be 10 chars min. Never mind the quote above…)

This spec is the current attempt to standardise / normalise everyone’s current formats out there. Heavily under development. Next addition should be to do with the /ctx part. Note that EhrScape forms are included as well.

I am acting as editor for now in the purely concrete sense of writing the doc, based on material anyone supplies. Someone else may feel free to take over :wink:

@thomas.beale did the vendors provided schemas or documentation about these formats? is that available besides the spec? thanks

1 Like

The EhrScape part comes from a (not public) Better spec that we have a copy of. I have a task to copy the /ctx part of this into this spec.

1 Like