Embrace domains and concept vocabularies that are DAGs #4
artgoldberg
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
The
LeafDB.app.Concepttable represents concept hierarchies in itsId,ParentId, andRootIdfields. This data structure works well for concepts that are structured as trees, like ICD-10-CM codes for conditions.However, some domains and concept vocabularies are not structured as trees. For example, the LOINC hierarchy for measurement provided by the UMLS is structured as a DAG. It has 190,217 records in the table generated from the UMLS that you shared with me @ndobb . Unfortunately, 27,640 of these records have multiple parents. And 4,245 of them are parents themselves.
In fact, one record has 6 parents:
The CPT4 hierarchy for procedures also has a dozen records with multiple parents.
I suppose that the easiest way to handle this will be to select 1 parent for each record that has multiple parents, and disconnect the record from the remaining ones. All records will still have a path to the root, because each record (except the root) will have at least 1 parent.
But concept domains with vocabularies that are represented as DAGs (instead of as trees) could be represented by breaking
LeafDB.app.Conceptinto two tables, one that represents the concepts and another that represents their parent - child relationships. In this approach the Leaf GUI could continue to represent concept domains as trees, and astute users could note that some concepts could be reached by multiple paths in the tree.Beta Was this translation helpful? Give feedback.
All reactions