Overview
Details features of this terminology server.
License
This software is offered with a standard Apache 2 licence. Like other free software licenses, the license allows the user of the software the freedom to use the software for any purpose, to distribute it, to modify it, and to distribute modified versions of the software, under the terms of the license, without concern for royalties.[1]
Features
- Mobile-friendly user interface (e.g. responsive design)
- Data model built around the UMLS data
- Natively handles RRF, some of the unusual and not-very-useful complexity of the UMLS is removed.
- Supports multiple terminologies and versions.
- Capable of handling any UMLS-based terminology, such as MeSH, SNOMEDCT_US, ICD10CM, etc.
- Supports transitive closure computation and maintenance.
- Ancestor/descendant (and parent/child) computations are simple lookups and do not require computationally expensive graph walking.
- Supports a customizable authentication/authorization mechanism
- Default implementations for UTS (http://uts.nlm.nih.gov), and guest-only security.
- Supports a customizable “graph resolver” mechanism to define the depth into the graph that various read and write calls should support.
- Default implementation of this mechanism supports reading/writing a concept that includes descriptions, language refset members, and relationships.
- Other data types are read/written through API calls.
- Supports a customizable validation framework that allows testing of data states prior to persistence.
- Default implementation includes a few basic checks to demonstrate use.
- Supports paging, filtering, and sorting at the API level.
- For example, a “find concepts” call can be combined with sorting and filtering and can also page results one page at a time with flexible page sizes.
- Supports a customizable “workflow listener” mechanism to interface with an external or third party workflow management system.
- Workflow can be tracked at the concept, description, or relationship level but is not itself maintained by the system.
- Changes to model objects triggers a callback to a custom handler to integrate with an external workflow management system.
- Includes complete administrative, technical, and user documentation, and a full swagger API with example values that yield legitimate results.
- Flexible back-end data store.
- Default support for MySQL and uses Hibernate to facilitate connections to a variety of other database environments, including document-based and graph databases.
- Default support for MySQL and uses Hibernate to facilitate connections to a variety of other database environments, including document-based and graph databases.
Extensibility
Next Features
- Support a DL classification with default Snorocket implementation (full and incremental).
- Support for "semantic search".
- Support multiple, simultaneous editing of the same concepts for dual independent review, conflict identification, and conflict resolution.
- Support branch-and-merge "project" based editing to isolate, modularize, and package sets of work.
- Support REST API for batch changes.
- Support default release process for performing identifier assignment and delta RF2 generation.
Emerging Features
- Support for “dynamic” refset definitions and data.
- Support for classifier concrete domains and other features (like GCIs).
- Support for sharding and a synchronization service (to support shadowing or distributed editing). Such a mechanism could also be used to synchronize IHTSDO editing changes with an extension-editing environment.
- Internationalization of error messages and labels. There’s a standard approach to this that will be undertaken once MVP is ready.
- Javascript client library for wrapping REST API calls and allowing application developers consistent access to the services.
- Support for post coordinated expression maintenance and resusability.
- Support for expression-based searching.
- Support for template-based authoring.