Attributes for concepts

Dear All, Can OpenMRS concepts support attributes something like attributes for person or provider or visit? I believe it will for better definition of concepts.

  • think of defining concept for a test. With attributes we can define important aspects like scale, method, components, body sites etc.
  • it would be great if we can specify what attr apply to what classes of concept. In BD SHR project we use OpenMRS concept dictionary for terminology mgmt. While in many cases it suffices, but with custom attributes we can make this so much better.

Would like to know what you guys think?

We did have a discussion about this recently. I think you are right since it is necessary, for example, to have a concept participate in more than one class. We discussed a concept_tag table. Perhaps @burke can weigh in.

1 Like

I support the idea of implementation-configurable Concept Attributes. (And broadly we approve of any addition of XyzAttribute to openmrs-core that someone has a legitimate use case for, and wants to do the work to implement.)

I would think the next step is for you to propose a design call about this (fyi @jthomas) to work through any details (e.g. what impact will this have on CIEL, various concept-sharing tools, etc).

(I also like the idea of Concept Tags, though it’s not obvious that “tags” provide any additional functionality beyond just using Concept Sets for that purpose. Besides that one could distribute a dictionary like CIEL without tags, and let people locally add tags.)


We have some open times this month. Let me know when your ready for a design call. Could get you on as early as Wednesday, January 13th.

Jan 13th seems great. Thank you

Sure. You are now on the schedule.

@akanter hopefully you can join us on the Jan 13 design call (2pm EST) to talk about attributes for concepts.

@angshu, this is 12:30am IST (after midnight); are you sure that time works for you?

We can move it to Monday, January 25 @4pm UTC if that would work better @angshuonline?

I will plan to attend!

Andrew S. Kanter, MD MPH FACMI

Asst. Prof. of Clinical Biomedical Informatics and Clinical Epidemiology Columbia University Email: andrew.kanter@■■■■■■■■■■■■■■■■■ Mobile: +1 (646) ■■■■■■■■ Office: +1 (212) ■■■■■■■■ Skype: akanter-ippnw Yahoo: andy_kanter

@angshuonline, we discussed this on yesterday’s Design Forum. Full notes here.

The summary is that:

  • Adding Concept.attributes makes sense. Do go ahead and implement this in openmrs-core.
  • It should follow the implementation of AttributeType/Attribute as implemented for Location and Provider
  • Andy and Burke recommend against putting data in attributes that really belong in a referenced data source that your concept is mapped to (e.g. LOINC, SNOMED)
  • but of course the point of attributes is that you don’t need there permission to do it that way.

Just to be super clear… we want concept_attributes to have attributes which are required for business logic and use cases within the EHR and don’t necessarily duplicate what is available in the reference source. For example, if a SNOMED code has an associated body location and a method, then the SNOMED code which is a mapped reference term, would have these secondary SNOMED codes available in the REFERENCE_REFERENCE_MAP table. If you want to break down a lab test by its specimen, units, etc… then the LOINC map would carry this information to a separate table where the LOINC code is exploded out to its axes. If the OpenMRS concept is not mapped SAME-AS to the reference term, then it is not always possible to leverage the reference term modeling or attributes and these then WOULD be in the concept_attribute table.

1 Like

Sorry, i have been super busy for the last month. I will check with the team and figure out how we can take up development for this feature. @akanter, I agree. Will check with you for more details.

We are planning on implementing attributes for concepts. It would be similar to the implementation of Person/Provider Attributes. An implementer would be able to configure attributes for concepts, make them searchable and they will be able to select the values for attributes while adding/editing a concept.

We want to discuss this in a design call. @jthomas Please allot a time slot.

1 Like

Hi @akhilmalhotra we have immediate availability on Wednesday, April 6th and 13th from 6-7pm UTC. Our first Monday opening is looking like April 25th. Is this too far out?

Hi @jthomas, Wednesday April 6th, 6-7pm UTC works fine for us. Thanks.

(Akhil, btw, this call is 11:30pm IST today.)

For what it’s worth, you have “automatic” permission to start adding concept attributes, following the same pattern that’s already in the codebase for location attributes and provider attributes, and to do this in the master branch of the openmrs-core codebase.

I had a sidebar conversation with Angshuman about whether this can actually be added to the 1.12.x and 2.0.x code branches. I think we’ll need @burke on the call to actually decide this (and maybe @maany), but I think that Burke is on service at the hospital today so I don’t know if he’ll be able to join.

Beyond that I don’t know the specifics you intend to discuss on today’s design call, but I’ll be there. :slight_smile:

It appears from the wiki design page from today that there was not a design call. @akhilmalhotra do we still need to get something on the design call schedule or is this moving forward with out a call?

@jthomas, we have a few questions around the implementation. @angshuonline and myself were planning on joining the call. So it would be great if we can have the call today, if possible but if we can’t then we can reschedule to next available slot.

Actually this is the hour of the call (right now).

Angshuman and I were on, but nobody else, so we dropped. But if someone pings us soon on irc/skype, we can rejoin.

Hi @jthomas, can we schedule a design call on Monday or Thursday (preferably Monday)? We have a few questions/clarifications before we can start work on it.