An older, but well-written overview is here: http://www.pythoncentral.io/sqlalchemy-vs-orms
This post says that SQLAlchemy seems to be sluggish and overcomplicated, and prefers Storm or GeniuSQL.
Question is, wether an ORM is wanted/needed anyway or if it would be better to directly access the DB from the server/middleware. The only way *I* can think of implementing a RBAC is using an ORM/ODM - or at least a web interface (REST?) which separates the database (and server side business logic) from the client. Especially in Open Source software this is a must: If the implementation of the RBAC is on the client side, noone can ensure that there has not been tampered with the client code.
Within the database there could be some kind of “namespaces”, Gnumed does this in a very clean way:
This meanwhile is worth an own draft page.
FHIR (pronounced like “fire”) should be an integral part of MedUX from the start. It is an international attempt to consolidate health data of patient data in a structured manner. One possibility could be to create a FHIR implementation using Django, and pointing the frontend (Angular, native?) directly to that REST API.
All Data regarding lab results should be saved, or at least be interchangeable by the worldwide used LOINC format.