-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add new FhirContactPoints domain #253
base: main
Are you sure you want to change the base?
Conversation
93423e2
to
2ded69e
Compare
.../src/main/java/org/openmrs/module/initializer/api/fhir/cpm/FhirContactPointMapCsvParser.java
Outdated
Show resolved
Hide resolved
.../test/java/org/openmrs/module/initializer/api/FhirPatientContactPointMapIntegrationTest.java
Outdated
Show resolved
Hide resolved
@mherman22 Is there no way to get this to work without shifting to 2.0.0 of the FHIR2 module? I would prefer to support older versions. |
I was trying this out. I'm pushing it back to 1.11.0 however the challenge there has to do with the location type translator not being got as a bean i.e NoSuchBeanException |
5d7bd68
to
3aa66b2
Compare
3aa66b2
to
f778a03
Compare
825acb5
to
8bc7331
Compare
It looks like we're going to need to make 2.6 the minimum version for the LoaderTest and probably the validator too for this to work. @Ruhanga Do you have an opinion on that? Otherwise, we maybe add something to the Loader to not try to run a domain if a valid version of a loader isn't available. |
Fyi, I have done this locally though it is now not loading the loader for QUEUE so I am still looking for a workaround around that. |
6761356
to
a18324e
Compare
@ibacher, @mherman22 concerning the above, upgrading to OpenMRS Core greater than 2.4.0 might require refactoring on the part of the Validator to accommodate new changes + upgraded libraries on Core. This will consequently need some extensive testing of the Validator itself. |
f3907bf
to
07f2377
Compare
First bit looks like we need to change the calls like: executeChangelog("changelog", null); To: executeChangelog("changelog", (ChangeSetExecutorCallback) null); In ConfigTester... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mherman22 could you provide a detailed description to this PR so as to provide more context? Or @ibacher could you speak to it?
import org.springframework.stereotype.Component; | ||
|
||
@Component | ||
@OpenmrsProfile(modules = { "fhir2:1.11.* - 9.*" }, openmrsPlatformVersion = "2.6.3 - 2.6.*, 2.7.* - 9.*") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@OpenmrsProfile(modules = { "fhir2:1.11.* - 9.*" }, openmrsPlatformVersion = "2.6.3 - 2.6.*, 2.7.* - 9.*") | |
@OpenmrsProfile(modules = { "fhir2:1.11.* - 9.*" }, openmrsPlatformVersion = "2.6.3 - 9.*") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ibacher is this (namely → modules = { "fhir2:1.11.* - 9.*" }
) used because there is no way to say "1.11.*
and above"?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actually, I think we could just use fhir2:1.11.0
and possibly the same for openmrsPlatformVersion
. I always forget how these get parsed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's try these, here and elsewhere:
@OpenmrsProfile(modules = { "fhir2:1.11.* - 9.*" }, openmrsPlatformVersion = "2.6.3 - 2.6.*, 2.7.* - 9.*") | |
@OpenmrsProfile(modules = { "fhir2:1.11.0" }, openmrsPlatformVersion = "2.6.3") |
@mks-d This PR adds support for a feature that allows mapping between OMRS Attributes and FHIR ContactPoints. It populates a table that we use in the FHIR2 module to map between them. So, if you have an attribute that represents something covered by FHIR's ContactPoints type (phone number, email, website, etc.) as either a PersonAttribute or standard OMRS attribute, it will show up in the FHIR2 output for Patient, Provider, Location, etc. in the appropriate semantic field rather than as an OMRS-specific extension. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ibacher will you re-review this then?
README.md
Outdated
@@ -149,6 +150,7 @@ This is the list of currently supported domains in their loading order: | |||
1. [Cohort Attribute Types (CSV files)](readme/cohort.md#domain-cohortattributetypes) | |||
1. [FHIR Concept Sources (CSV files)](readme/fhir.md#domain-fhirconceptsources) | |||
1. [FHIR Patient Identifier Systems (CSV Files)](readme/fhir.md#domain-fhirpatientidentifiersystems) | |||
2. [FHIR ContactPointMap (CSV Files)](https://github.com/mherman22/openmrs-module-initializer/blob/ContactPointMap-impl/readme/fhir.md#domain-fhircontactpointmap) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The path is wrong here.
Also let's use normal Title Case: "Contact Point Map".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2. [FHIR ContactPointMap (CSV Files)](https://github.com/mherman22/openmrs-module-initializer/blob/ContactPointMap-impl/readme/fhir.md#domain-fhircontactpointmap) | |
2. [FHIR Contact Point Map (CSV Files)](readme/fhir.md#domain-fhircontactpointmap) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mherman22 Are you able to wrap up the necessary changes here?
README.md
Outdated
@@ -60,6 +60,7 @@ configuration/ | |||
├── encounterroles/ | |||
├── fhirconceptsources/ | |||
├── fhirpatientidentifiersystems/ | |||
├── fhirContactPointMap/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
├── fhirContactPointMap/ | |
├── fhircontactpointmaps/ |
README.md
Outdated
@@ -149,6 +150,7 @@ This is the list of currently supported domains in their loading order: | |||
1. [Cohort Attribute Types (CSV files)](readme/cohort.md#domain-cohortattributetypes) | |||
1. [FHIR Concept Sources (CSV files)](readme/fhir.md#domain-fhirconceptsources) | |||
1. [FHIR Patient Identifier Systems (CSV Files)](readme/fhir.md#domain-fhirpatientidentifiersystems) | |||
2. [FHIR ContactPointMap (CSV Files)](https://github.com/mherman22/openmrs-module-initializer/blob/ContactPointMap-impl/readme/fhir.md#domain-fhircontactpointmap) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
2. [FHIR ContactPointMap (CSV Files)](https://github.com/mherman22/openmrs-module-initializer/blob/ContactPointMap-impl/readme/fhir.md#domain-fhircontactpointmap) | |
2. [FHIR Contact Point Map (CSV Files)](readme/fhir.md#domain-fhircontactpointmap) |
import org.springframework.stereotype.Component; | ||
|
||
@Component | ||
@OpenmrsProfile(modules = { "fhir2:1.11.* - 9.*" }, openmrsPlatformVersion = "2.6.3 - 2.6.*, 2.7.* - 9.*") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's try these, here and elsewhere:
@OpenmrsProfile(modules = { "fhir2:1.11.* - 9.*" }, openmrsPlatformVersion = "2.6.3 - 2.6.*, 2.7.* - 9.*") | |
@OpenmrsProfile(modules = { "fhir2:1.11.0" }, openmrsPlatformVersion = "2.6.3") |
import static org.openmrs.module.initializer.api.fhir.cpm.FhirContactPointMapCsvParser.ATTRIBUTE_TYPE_DOMAIN_HEADER; | ||
|
||
@Component | ||
@OpenmrsProfile(modules = { "fhir2:1.11.* - 9.*" }, openmrsPlatformVersion = "2.6.3 - 2.6.*, 2.7.* - 9.*") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See previous
private static final String SYSTEM_HEADER = "system"; | ||
|
||
private static final String USE_HEADER = "use"; | ||
|
||
private static final String RANK_HEADER = "rank"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think headers are normally capitalized, e.g. "System", etc.
public static final String ATTRIBUTE_TYPE_DOMAIN_HEADER = "Entity name"; | ||
|
||
public static final String ATTRIBUTE_TYPE = "Attribute Type"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Headers at least should be like "Entity name", so, e.g., "Attribute type", etc.
|--------------------------------------|-------------|-------------|--------------------------------------|--------|------|------|-------------| | ||
| fa48acc4-ef1f-46d6-b0af-150b00ddee9d | | person | 717ec942-3c4a-11ea-b024-ffc81a23382e | PHONE | WORK | 1 | | | ||
| | | person | PAT_RENAME_NEW_NAME | PHONE | HOME | | | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the Attribute Type
field here correct?
On it |
88cc779
to
55f1658
Compare
api-2.6/pom.xml
Outdated
<parent> | ||
<groupId>org.openmrs.module</groupId> | ||
<artifactId>initializer</artifactId> | ||
<version>2.7.0-SNAPSHOT</version> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should update this now that 2.7.0 is released. I guess this should be 2.8.0-SNAPSHOT.
No description provided.