CKM Release 1.16.0
Date: February 2021
New & Improved Functionality
Key | Summary | Description |
|---|---|---|
CKM-374 | Ability to directly open the archetypes after bulk-upload | When an editor bulk-uploads archetypes to CKM, the uploaded archetypes should directly be accessible afterwards. Therefore, after completion of the bulk-upload, the report of the successfully updated/imported archetypes now supports opening the archetypes directly from this report. |
CKM-854 | Reactivation of review rounds directly by editors (if e.g. closed accidentally) | Editors can now reactivate a recently closed Review Round directly from CKM. Reactivating a review round re-enables review submission by reviewers. This is occasionally useful if a review round was closed accidentally or further reviews are expected. Reactivating a review round was previously only possibly by contacting Ocean. Even now, reactivating a review round should remain an exception: On closing a review round, all active review invitations have expired, and need to be reinstated on reactivating the review round. To reactivate a review round, right-click on a review round in the Review Round Overview and select Reactivate Review Round. |
CKM-1099 | DV_SCALE support in archetypes | Add support for the new data type DV_SCALE as per https://openehr.atlassian.net/browse/SPECRM-19 for archetypes uploaded to CKM. The data type is nearly identical to DV_ORDINAL but enables unconventional scales such as the BORG CR10 scale which allows non-integer values, e.g.
DV_SCALE may replace DV_ORDINAL over time since it offers a superset of functionality. The most important difference is that REAL numbers are allowed and not only INTEGER. See https://specifications.openehr.org/releases/RM/latest/data_types.html#_dv_scale_class for details on DV_SCALE. To support DV_SCALE in CKM archetypes, changes are required in the parsing, the canonical hash calculation, various display scripts, the comparison report, validation reporting, the new Data points reports, etc. Also cp. CKM-1321: “DV_SCALE support in Templates”. |
CKM-1209 | Template Upload: Ability to download all current archetypes with warnings or errors to support editors in updating the template locally | On uploading a new or updated template to CKM: If there are archetypes with errors or warnings (such a that the canonical hash is not found or refers to an older revision of an archetype), it is now possible to conveniently download all available archetypes with warnings or errors in one zip-file. This is so that editors can more easily update the template with the latest or latest published archetypes. For this purpose, it is possible to download either the latest published (i.e. stable whenever available) revisions or the latest (i.e. potentially unstable) revisions of these archetypes. |
CKM-1238 | Comprehensive Display of FHIR®Value Sets provided by an external Terminology Server and referenced in CKM archetypes in CKM | In CKM 1.15.0, we introduced support to connect to an external Terminology Server with a FHIR® API to display FHIR® Value Sets inline in the various archetype and template displays ( CKM-1216 Resolved - Connect to External Terminology Server to show value sets inline in the various archetype and template displays). In addition to this, we now introduce a more comprehensive display of FHIR® Value Sets that have been registered with an external Terminology Server and are referenced in CKM archetypes. In the display of an archetype in CKM, whenever an element links to a value set of the (configurable) external terminology server, a button will now displayed to open the value set in a new CKM tab. There, the Value Set is presented in more detail than this is possible inline. Example
Example Rule in an oet template:
CKM can only display information that is provided by the terminology server for the value set in its expanded form and using “includeDefinition=true”. Not all investigated Terminology Servers currently honour this parameter of the ValueSet $expand operation, cp. https://www.hl7.org/fhir/valueset-operation-expand.html Customers that have access to a terminology server FHIR® API and would like to configure this terminology server for use with CKM, please contact Ocean. |
CKM-1239 | Related Resources tab of a template: Differentiate between directly and indirectly embedded templates and finetune display | The related resources view tab of a template lists all directly and indirectly embedded templates. However no indication is given if the embedding is only indirect. This is useful especially when updating a cascade of embedded templates: Assume that Template C is embedded in Template B which in turn is embedded in Template A. If Template C is now updated, then Template B and - subsequently - Template A must be updated as well for the change to be picked up in the next revision of Template A. If CKM detects that a template has an embedded template which itself has an embedded template, CKM will now split the embedded templates into directly and indirectly embedded templates and present them under different headings on the Related Resources Tab. |
CKM-1258 | Archetype Data Points Report for all or selected projects / with certain states | New report available from the Reports/Archetype Data Points Menu: Report on the frequency of ELEMENT data types in archetypes. Can report on data points in all or selected subdomains/projects as well as for archetypes with certain states (e.g. only PUBLISHED archetypes). |
CKM-1261 | FHIR® Value Sets - If a 'designation' exists without a specific use for the requested language, display this as the main display and then the normal display value in brackets | This is only relevant for CKMs where a terminology server with a FHIR® API has been configured for use by CKM. If a FHIR Value Set is referenced by an archetype or template in CKM and this value set contains designations for the various concepts without a specific use for the requested language, display this and then the normal display value in brackets when displaying this inline (when displaying an archetype or template). For displaying inline this is useful because otherwise a Snomed value set that has been translated for, say, German by providing the German translation as a 'designation' would just display the English Snomed codes. Example Value Set extract: <system value="http://snomed.info/sct" />
<concept>
<code value="21522001" />
<display value="Abdominal pain (finding)" />
<designation>
<language value="de-DE" />
<value value="Bauchschmerzen" />
</designation>
</concept>
Whenever there is a designation in the requested main language (without region/variant), this is used as main inline display by CKM. The original display value from the value set is added afterwards in brackets. Assumptions/restrictions:
|
CKM-1273 | Improve warning on missing parent archetype when publishing a specialised archetype | On publishing a specialised archetype: If the parent archetype is missing, the WRANF error message should be clearer, and explain that the v0 major version is updated to v1 when the parent archetype is published. On publishing a specialised archetype, the parent (assuming it is already published) is not updated in the ADL except as a manual process.
In this case, a WRANF error with a warning like this should be displayed: This archetype specialises the parent archetype {0}, which cannot be found in CKM. Please note that on initial publication of the parent archetype, its archetype id changes from .v0 to .v1. This may need to be updated in any specialised archetypes as well. |
CKM-1282 | Remove number of different languages spoken from the community dashboard widget | Remove number of different languages spoken by users from the community dashboard widget. This is not very informative and could be misunderstood as the number of distinct translation languages for archetypes. |
CKM-1283 | Report on number of archetype languages as dashboard widget | Report on the number of translation languages for archetypes on the Dashboard as part of the “Our CKM Community in Action” widget. Number of active archetypes → Number of different translation languages in these archetypes. When clicking on this, open the detailed archetype translation details report. |
CKM-1285 | Create new user via REST API | Enable user creation via CKM’s REST API. The Create User API operation accepts the following data elements:
A successful request of this operation creates the CKM user and may activate the user account immediately, depending on hasToActivate. A welcome email to the new user using the email address provided in the request will be sent as part of the successful request. An error response will be returned when the username or email address is the same for an existing user. Likewise, an error response will be returned if a user with a matching username who previously unregistered from CKM has contributed to CKM for example in review rounds or discussions. In this case, follow the process in the CKM user interface. An error response will also be returned if request data is invalid or causes integrity issues within CKM. When an initial password is not provided in the Create User request, a password will be auto generated by CKM and the user will be required to use the Forgotten Password functionality to retrieve (reset) their password. Administrators that have opted to receive new user notification emails are sent the new user notification email for each new user. Example call:
|
CKM-1292 | Add a configurable style tag to all ckm generated emails to support limited styling of ckm emails | CKM now supports the configuration of some limited CSS styling for emails sent out by CKM. The following is an example configuration to customize font and font color, link color and style, and the also configurable email-suffix to be displayed in a different colour:
(The email suffix can also be configured and usually contains information on how to unregister.) Note that not all email clients support all styling. This is beyond the control of CKM and it is therefore preferable that only simple styling is used for maximum display consistency across email clients. Customers that would like to configure these styles are asked to contact Ocean with the configuration details. |
CKM-1293 | Internal: Add/improve sanity checks on creating/updating a review | Add additional internal sanity checks before a review can be submitted to better pick up any accidental problems (and resist malicious attacks):
|
CKM-1298 | Minor display finetuning of various panels, tabs & windows | This issue includes various minor finetuning for the display of various panels, tabs & windows:
|
CKM-1302 | Internal: Improve transaction handling of reverting archetypes, checking out resources and other services | Improve internal transaction handling to avoid some extremely rare circumstances where the following operations may fail to set some relationships (e.g. from a resource to its owning project or incubator):
Errors would only ever occur if the server fails at the exact time of the operation. The one example where this is known to have occurred has caused a template no longer to be assigned to a project after updating. (This is easily fixed manually, but should obviously not occur). |
CKM-1308 | Set default search to AND and various minor display finetuning on the Find Resources tab | Inline with major search engines these days, set the default search to AND (=all words required). Also, various related minor display finetuning on the Find Resources tab, including:
|
CKM-1311 | Internal: Finetune use of async/defer to load the javascript files for faster initial rendering | Internal: Finetune use of async/defer to load the javascript files for faster initial loading and rendering. |
CKM-1312 | Internal: Support backend user creation with the help of a full name only (no username, no separate first + lastname) and with the possibility to generate a password if none is specified | Internal: Support backend user creation with the help of a full name only (no username, no separate first + lastname) and with the possibility to generate a password if none is specified. Simplifies some backend tasks. |
CKM-1319 | Add a more general frontend check to determine if the user session has changed/manually expired and if so enable user to relogin | Add a more general CKM frontend check to see if the user session has changed/manually expired and enable the user to relogin by displaying the login dialog. This is important if the session cookie is deleted for whatever reason (by an addon or manually). |
CKM-1321 | DV_SCALE support in Templates | The new data type DV_SCALE needs to be supported within templates uploaded to CKM and thus by
as used by CKM. The data type is nearly identical to DV_ORDINAL but enables unconventional scales such as the BORG CR10 scale which allows non-integer values, e.g.
DV_SCALE may replace DV_ORDINAL over time since it offers a superset of functionality. The most important difference is that REAL numbers are allowed and not only INTEGER. See https://specifications.openehr.org/releases/RM/latest/data_types.html#_dv_scale_class for details on DV_SCALE. |
CKM-1323 | On the Related Resources tab of a template, archetypes of embedded templates should be sorted inline with archetypes directly used in the template | On the Related Resources tab of a template with embedded templates, the archetypes of the embedded template were listed underneath any archetypes that are directly used in the template. These archetypes from embedded templates should simply be sorted inline with the directly used archetypes, because the other order is hard to understand. Note that this change in sorting only makes a difference in templates that use embedded templates AND archetypes directly. |
CKM-1324 | Import Archetypes From Remote: Always display demographic archetypes below EHR archetypes | In the Import Archetypes From Remote Overview of importable archetypes, EHR archetypes should be separated from demographic archetypes, with demographic archetypes sorted underneath. Currently, most archetypes are sorted per class, but there are DEMOGRAPHIC archetypes mixed in between EHR archetypes. |
CKM-1325 | Visualisation of "Qualified Real" in DV_QUANTITY: Remove the units from the archetype display completely if there is only one unit and that unit is “1” (and there are no other constraints such as on magnitude or precision) | The current display of the Qualified Real (non-)unit as Units: can only really be understood when you know the details of DV_QUANTITY. Therefore, remove the units from the display completely if there is only one unit and that unit is “1”. |
CKM-1327 | Hide empty protocol attribute in template display also for CARE_ENTRY-level templates | In CKM 1.15.0, CKM-1165: “In Template display: Automatically hide the attribute name (e.g. protocol) if there is nothing underneath (i.e. all elements are constrained out and only unfilled ARCHETYPE_SLOTs)” introduced the ability to automatically hide the attribute name (e.g. protocol) in template displays if there is nothing underneath (i.e. all elements are constrained out and only unfilled ARCHETYPE_SLOTs) for COMPOSITION and SECTION templates. However, CARE_ENTRY-level templates require additional handling to specifically hide the special case of the two top-level attributes (data and protocol) as well when empty. |
CKM-1333 | For consistency, Archetype Statistics 'Remote vs Local' Donut Chart should show absolute numbers instead of percentages in the donut itself | For consistency, the Archetype Statistics Remote vs Local Donut Chart should show absolute numbers instead of percentages in the donut itself. On hovering, both is shown in the tooltip. Available via Reports/Archetype Statistics. |
CKM-1336 | Internal: Add more convenient way for system admins to clear some database caches | Add system admin ability to clear the xodb object and xodb binary caches of the database system direclty from the frontend as system administrator. |
CKM-1337 | Internal: Ability to restrict opt regeneration service to the opts of one (oet) template in all revisions | Extend CKM backend services to regenerate operational templates of one (oet) template in all revisions. Currently, when regenerating the opt cache and assets, we can only invalidate all or nothing. |
CKM-1338 | Display concept name of archetypes in current archetype language (if available) when clicking on the Included/Excluded Buttons for a Slot; improve Slot icons | Display concept name of archetypes in current archetype language when clicking on the Included/Excluded Buttons for a Slot. Use the actual concept names of the archetypes in the current language of the archetype (where available) and add the archetype id minus the - usually fixed - qualified rm type in brackets, e.g. Medical Device (device.v1) Also improve SLOT icons. |
CKM-1340 | Introduce a slight delay before prefetching additional images/icons (to ensure priorisation of more important requests) | Introduce a slight delay before prefetching additional images/icons. This is to ensure that more important requests are prioritised on initial startup. |
CKM-1341 | Shorten very long resource display names in context menu and tab title | Shorten very long resource display names in context menu, tab title and in the title of a resource when searching via the Find Resources tab. Some CKM instances use very long resource names, especially for templates and this can otherwise cause (minor) layout problems. |
CKM-1342 | Cache User Report to increase loading speed, especially for the "Our CKM community in action" widget on the Dashboard | Especially when the server is very busy or the database is slow for whatever reason, the user report takes long to calculate. This shows as a significant delay on the Dashboard's Our CKM Community in Action widget. Also, when the server is working normally, this is one of the biggest strains on the server and generally slows down startup. Therefore, cache this for an hour (per locale) and then recalculate lazily. |
CKM-1343 | Cache Archetype Statistics to increase loading speed, especially for the "What we've been up to" widget on the Dashboard and the initial Archetype Statistics Report | Especially when the server is very busy or the database is slow for whatever reason, the archetype statics report on the Dashboard’s “What we’ve been up to widget” takes fairly long to calculate. Also, when the server is working normally, this has previously been one of the biggest strains on the server and generally slows down startup. Therefore, cache this for a few hours and then recalculate lazily. Also invalidate upon direct changes to the archetypes. Similiarly, this cache is now used to increase the loading speed of the initial view of the default Archetype Statistics report. |
CKM-1349 | Add configurable prefix for all ckm generated emails to enable organisations to for example add the organisation name or logo etc. to the top of any CKM email | CKM now supports a configurable prefix for all ckm generated emails. This enables the customer organisation to add for example the organisation name, logo etc. to the top of any email, thus making it potentially more likely that recipients just dismiss the email. Simple example configuration to display the CKM’s header logo at the top of the email with a little margin:
Customers that would like to configure such a prefix, please contact Ocean. |
CKM-1351 | Search for Projects (via Find Resources) should also yield results from partial matches | Search for Projects (via the normal search on the Find resources tab) should also yield results from partial matches of the project name for sufficiently long search texts. E.g. searching for "report" will now find a project named "Common reporting". |
CKM-1358 | Add an instance-wide option to show the review round initiator in Review Round Overview Grids (Editor's review round on Dashboard & Reviews/Review Round Overview) by default | Add an instance-wide option to show the review round initiator in Review Round Overview Grids (Editor's review round on Dashboard & Reviews/Review Round Overview) by default. This field is already available and can always be shown on demand by clicking on the grid header and selecting the appropriate column, however the requirement is to have this field displayed by default in some CKMs. Customers that would like this field to be displayed by default, please advice. |
CKM-1359 | Extend and finetune User Overview List to include more details relevant for selecting reviewers | With a continually increasing number of users, making informed choices when inviting people to review rounds is becoming increasingly difficult. Therefore, add the following information to the user overview lists:
Also:
|
CKM-1362 | Minor finetuning of the display for the process for new user registration, user reactivation and user details, especially email updating | Some minor finetuning of the display for the process for new user registration, user reactivation and user details, especially the process to update the user’s email address.
|
CKM-1363 | Finetune some widths and columns of the Dashboards for signed-in and not-signed-in users | With the additional column of the initiator of a review round in the Active Review Round widget as introduced as a config option in CKM-1358 Resolved , especially this widget is too small to display the various columns well. Therefore:
|
CKM-1364 | Update Git Connector to be able to use an access token because current authentication mechanism is being phased out by GitHub | Update CKM’s Git Connector to be able to use an access token. This is required because the current authentification mechanism is being phased out by GitHub. See https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for details. |
CKM-1365 | New search option on the advanced user search tab to only find users/reviewers with a specified minimum login date (and finetune options form) | Add a search option to the advanced user search (e.g. available for reviewer selection or via Manage Users) to only find users with a specified minimum login date. This can for example be useful to quickly exclude reviewers that haven’t logged in for a long period of time. Also finetune the options form on the Advanced user search panel and the corresponding grid heights. |
CKM-1402 | Display user's local time for modification times in a resource's revision history | The Resource modification times in the resource’s Revision History Panel were displayed in Server Timezone. |
42 issues
Bug Fixes
Key | Summary | Description |
|---|---|---|
CKM-1281 | Archetype with VUNP (unknown path in use_node) errors should not be possible to be uploaded & should not cause a NullPointerException on display | The upload of archetypes with an invalid path (VUNP validation error) should be prevented so that the uploader can directly correct the archetype. A comprehensive + meanigful display of such an archetype is otherwise not really possible and it should not be possible to upload an archetype with such a validation problem, neither as resource proposal nor as a new or updated archetype. Invalid path: /items[at0020.1]/items[at0.10]/items[at0.1]/items[at0005.1] of archetype internal reference at /items[at0055]/items[at0.8]/items. Use_node path validity: the path mentioned in a use_node statement must refer to an object node defined elsewhere in the same archetype or any of its specialisation parent archetypes, that is not itself an internal reference node, and which carries a node identifier if one is needed at the reference point. For potentially already existing archetypes with this error, a Null Pointer Exception should be avoided and a best effort to display be made. |
CKM-1288 | Archetype displays fails with a ClassCastException if a term binding in the archetype contains a URI | A ClassCastException is causing the display of an archetype to fail if a binding in the archetype contains a URI. In this case, a QueryBindingItem is constructed and not a TermBindingItem - leading to a ClassCastException and preventing the display of the archetype. |
CKM-1290 | Extreme sluggishness of some ckm servers after the system has been running fine for several days and even weeks in a row | Some CKM servers running on 1.15.0 have experienced extreme sluggishness usually after the system has been running fine for several days and sometimes weeks in a row. Ocean has thoroughly investigated this issue and worked with the supplier of CKM’s asset management system on identifying the root cause of this problem and providing a solution for this problem that occurred under very specific circumstances. CKM 1.16.0 version fixes the core of the problem by upgrading to the latest version of the asset management system. Ocean has also worked together with the supplier of the asset management system to be able to implement a workaround for this problem in the meantime (i.e until deployment of CKM 1.16.0). |
CKM-1291 | Review invitation and review invitation summary emails: Completion Deadline is not properly embedded in enclosing tags (thus preventing some formatting) | The starting <p> tag was missing from the review invitation summary email sent out to reviewers. In the review invitation email: If you add some styling applicable to this paragraph, it is not applied to the completion deadline displayed in the email. |
CKM-1294 | Internal: Improve AtomicTransactions for various review related activities | Under some very rare circumstances, it may be theoretically possible that multiple users running the following services simultaneously (in the same split second) might run into problems when
|