Developing the "OCL for OpenMRS" Application

Good Afternoon

both @dkayiwa and myself are sitting on another call. May I suggest that we move this meeting an hour earlier?



@c.antwi if any of the product owners is around, a recording will be enough for me. :slight_smile:

Sorry, forgot to mention I was on holiday this week!

Hello Community,

The testing phase for OCL v1 has begun. Here is a link to the details

cc: @dkayiwa @c.antwi @darius @akanter @paynejd @karuhanga

1 Like

May I suggest that you create a new post inviting the community to test OCL v1 .


1 Like

Hello community,

We are glad to announce that OCL V1 is ready for testing. We shall be running the testing phase from 6/17/2019 - 6/26/2019

Please follow this link to test the application.

Key pointers:

  • If you do not have credentials, use the old OCL to sign up, and then be sure to come back to the new OCL, again here.
  • If you are unable to login even after you had signed up, the database may have been reset and you would have to sign up again

A more detailed guide can be found on the wiki, here.

All feedback so far and progress/ resolution on it can be tracked on this wiki.

cc @dkayiwa @akanter @darius @c.antwi @ball @ruffjm @karuhanga @danuluma @paynejd

Hello Community

We shall be having our weekly sync at 15:00 UTC today.

Here is the link to the call

cc: @dkayiwa @c.antwi @akanter @darius @paynejd @danuluma

Hey team,

Thanks for showing up for the call.

The recording is live here.

Summary of discussion;

When creating/ editting a custom concept:

  • When creating external mappings the code field should be before the optional name field- MVP
  • Name types should be; Fully Specified, null: Synonym in UI, SHORT: Short in UI, Index Term
  • Create issue on github to add Index Term to backend

When adding CIEL concepts:

  • When recursively importing concepts, a more informative spinner with what is actually going on is preferrable- MVP
  • Also, tell the user ehat happended, e.g the number of concepts added- MVP+(progress would be preffered MVP+)
  • Check for what exactly happens when a to concept that already exists, is added, when adding CIEL concepts
  • Test partial search to be sure that it was addressed

When viewing CIEL concepts:

  • Fix the header and footer for table to prevent jumping- MVP+(Ideally an infinite scroll)
  • Set 20 as default for now to reduce the number of times someone clicks through pages
  • Turn off sorting(MVP) and add sort by fields(MVP+)
  • Deemphasize clear/ reset buttons

When creating a dictionary;

  • Turn off copy from current collection
  • Support for mutltiple preffered sources- mvp+


  • Run through concepts to make sure all are correctly tagged
  • Adding view concept option might be MVP if time opens up

Just to be pedantic (for teaching purposes!): View concept option is not MVP, but it might go in the first release if time opens up. (MVP is a concept.)

Next week I’m unavailable Tuesday-Thursday. We could reschedule the catchup for Friday, or else if @akanter is definitely available then you all can catch up without me.

1 Like

I am available Wed, Thurs or Friday at the usual time.


Friday it is then.

Hey @darius, in regards to the Synonym nae type value being stored as null. Is there any particular reason we have to use null. I worry it might cause confusion between when a name_type is actually blank, that is not specified and when the user selects Synonym.
One particular place this is a worry is for example when setting defaults on names in the UI.

cc. @akanter @dkayiwa

Scratch that, just noticed OpenMRS treats null type names as synonyms. Thanks.

Hey @darius, @akanter

Is managing collections that are owned by an organization to which I belong within the scope of MVP? Currently, the collections page displays only collections the logged in user owns.

cc @c.antwi @dkayiwa

Yes this is required. You can already create collections belonging to an org. You also need to be able to see/edit them (assuming you have privileges).

Hello Community

We shall be having our weekly sync at 15:00 UTC today.

Here is the link to the call

cc: @dkayiwa @c.antwi @akanter @darius @paynejd @danuluma

Hello community,

The key conclusions from the Friday’s sync were;


  • Implement suggested color changes to allow for coherency and request community feedback
  • Feedback on suggested changes to the edit/ create concept page- include card labels, less padding, ensure that it remains a single page visually

cc. @dkayiwa @c.antwi @darius @akanter

Hey @darius @akanter, A few questions on my mind from the weekend.

First, on the page main user dictionaries page, How many orgs can someone realistically have on that page?
If the answer to this is > say 15, we might need to;

  • stop displaying the concept counts to eliminate the need for a verbose call or
  • implement pagination for this page On the latter point, further, given the API (afsaik) does not support something like get all collections I am allowed to manage, we currently have to fetch these separately for each org, meaning we might have to separate each org’s collections and paginate them separately.

Secondly, on the view all dictionaries page, I suppose this page can have a large amount of dictionaries. We currently fetch ALL collections here and then filter out those without OpenMRS validation. I think this might be a problem.
Introducing pagination using the API here would require us to either;

  • do that filter on the backend(for validated collections) or
  • we could display them all and grey out those that the OCL client can’t manage

*Given that we persist state between user visits, these issues sometimes aren’t obviously visible. But doing things like searching sometimes does expose them
**It would also be helpful to keep the extra test data that had been added last week, as it is harder to see these issues with a few collections. cc @paynejd

cc. @dkayiwa @c.antwi

1 Like

Hello Community

We shall be having our weekly sync at 15:00 UTC today.

Here is the link to the call

cc: @dkayiwa @c.antwi @akanter @darius @paynejd @karuhanga

Afraid that I will be in transit at this time. Not sure I will be able to attend.