Skip to content
This repository has been archived by the owner on May 1, 2024. It is now read-only.

Issue 3: Support Broadcasting the FHIR ValueSet #5

Merged
merged 1 commit into from
Jan 11, 2018

Conversation

bdrillard
Copy link
Contributor

@bdrillard bdrillard commented Jan 8, 2018

Summary

This PR provides the enhancement described in #3, adding support for FHIR ValueSets and changing the underlying implementation of the ValueSetUdfs class to utilize ValueSets and a new Hierarchies class rather than ConceptMaps.

Additionally, it enforces immutable semantics across all tables holding data for ValueSets, ConceptMaps, and Hierarchies by ensuring the Url and Versions for the resources are unique.

It also makes minor changes to normalize style/doc where inconsistencies/misspellings were encountered.

Additional Details

This PR adds a full test suite for ValueSets and Hierarchies, and additional test cases in the Python API over ValueSet functions and ValueSetUdf functions.

@bdrillard bdrillard force-pushed the BUNSEN-3-3 branch 2 times, most recently from ea3998a to 9402d54 Compare January 8, 2018 03:06
}

@Test
public void testValuesAreSorted() {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here I was wanting to enforce the same sorting behavior that I thought was described in ConceptMapsTests, but that I noticed the test didn't fully describe sorting behavior since it lacks an additional group to sort against. It would actually appear that since groups are object-copied when removing the concepts, whatever order groups were specified is kept, even if that order isn't lexicographically ascending.

If keeping a sorting contract isn't necessary, we can remove the tests that would check it from both ConceptMapsTests and here.

@bdrillard bdrillard force-pushed the BUNSEN-3-3 branch 3 times, most recently from 5dde7a1 to 7b9edda Compare January 9, 2018 22:05
@bdrillard bdrillard requested a review from rbrush January 9, 2018 22:09
@bdrillard bdrillard force-pushed the BUNSEN-3-3 branch 2 times, most recently from 07e725e to f8feea0 Compare January 11, 2018 07:09

/**
* @author AE032532
*/
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks like an unnecessary author tag was generated by an IDE here.

@rbrush
Copy link
Collaborator

rbrush commented Jan 11, 2018

The build failed on CheckStyle warnings. (For future reference, running mvn clean install locally will expose these warnings.)

@rbrush
Copy link
Collaborator

rbrush commented Jan 11, 2018

Changes look good at first glance. I'll have a chance to do a more in depth review later this morning or early afternoon.

@bdrillard bdrillard force-pushed the BUNSEN-3-3 branch 2 times, most recently from 3222a0e to 533d79e Compare January 11, 2018 15:51
Issue 3: finishing valuesets api and tests

Issue 3: additional doc

Issue 3: running broadcastablevaluesets tests

Issue 3: changes to ConceptMaps

Issue 3: updating tests for valuesetudfs

Issue 3: tests working but valuesetudfs

Issue 3: adding new values implementation

Issue 3: finishing changes

Issue 3: initial python updates, existing tests pass

Issue 3: supporting arbitrary value sets

Issue 3: adding tests over value set udfs

Issue 3: using datasets for operations

Issue 3: solving issue with large descendant systems

Issue 3: using Hierarchies for snomed and loinc

Issue 3: updating python tests for hierarchies

Issue 3: updating python doc
@bdrillard
Copy link
Contributor Author

I noticed we aren't exposing withDirectory functionality for loading Concept Maps from local/remote filesystems in the Python API. Is that (and the withDirectoryDisjoint functionality) something we'd want to expose to a Jupyter session user for Concept Maps and Value Sets? It might be especially useful for Value Set UDFs where a user has an arbitrary value set file on hand, but that hasn't been loaded into tables.

@rbrush
Copy link
Collaborator

rbrush commented Jan 11, 2018

+1 to merge. I verified this build works with full LOINC and SNOMED and looks good.

I think there are additional tweaks we might make to the Python API, but I'd rather break those up into a separate, focused PR. This one already has quite a lot of updates and is generally solid, so I think we can land this and iterate afterwards.

@bdrillard bdrillard merged commit 02ff72b into cerner:master Jan 11, 2018
@bdrillard
Copy link
Contributor Author

bdrillard commented Jan 11, 2018

Merged. Thanks for the review!

@bdrillard bdrillard deleted the BUNSEN-3-3 branch February 22, 2019 19:36
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants