-
Notifications
You must be signed in to change notification settings - Fork 0
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 core__procedure table #329
base: main
Are you sure you want to change the base?
Conversation
@@ -45,6 +45,7 @@ in this table. | |||
AND BOOL_OR(ec.table_name = 'documentreference') | |||
AND BOOL_OR(ec.table_name = 'medicationrequest') | |||
AND BOOL_OR(ec.table_name = 'observation') | |||
AND BOOL_OR(ec.table_name = 'procedure') |
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.
So I think this deserves a tiny callout.
For context, the way completion works is that we ignore any encounters for which all the listed associated tables have not been loaded by the ETL yet.
So adding a new resource like this to the list of "required resources" means:
- Transition pain: if a site hasn't ETL'd procedures yet, the next time they rebuild
core
, all encounters will disappear. - Ongoing pain:
core
requires more and more resources (like procedures) to be exported and ETL'd before it can function as expected
However... This pain is also... the point of completion tracking?
Would we want to draw a line between "resources we really care about" and "resources we kind of care about"? If we didn't add Procedure to the encounter-completion check, but your study used core__procedure
, you would now be subject to the reasons we added the completion table - engineers ETL'ing data behind the scenes can cause inconsistent/incomplete results when querying.
This "ignore encounters" trick was so that studies didn't have to know about the whole completion table feature. They just would inner join
on encounters at some point and incomplete data would be ignored. But another approach is maybe we have a list of 2nd-tier resources for which studies are expected to manually check the completion tables? (the logic isn't necessarily fun, but we could write some docs with examples)
Or we just accept the pain points listed above as we add resources.
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'm of two minds about this:
- Long term, I think this is ok/most correct.
- Short term, we are getting a lot of partial drips of data, and this makes it harder for folks to spin up/participate
I kinda want to have a discussion at the product level about what's best here and then circle back on the implementation side of things? We can take this as is for now and then backsolve later if we want.
☂️ Python Coverage
Overall Coverage
New Files
Modified Files
|
2040bd4
to
eb80a1a
Compare
eb80a1a
to
b1f533b
Compare
Should include Procedure Category , which "should" be implemented at most sites because it is easy, BCH Cerner is not a good indicator for procedure coding because it was DIY home grown. |
STU4 https://hl7.org/fhir/us/core/STU4/StructureDefinition-us-core-procedure.html |
b1f533b
to
193a49a
Compare
Done! |
193a49a
to
d73ebe8
Compare
d73ebe8
to
542f40d
Compare
@@ -45,6 +45,7 @@ in this table. | |||
AND BOOL_OR(ec.table_name = 'documentreference') | |||
AND BOOL_OR(ec.table_name = 'medicationrequest') | |||
AND BOOL_OR(ec.table_name = 'observation') | |||
AND BOOL_OR(ec.table_name = 'procedure') |
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'm of two minds about this:
- Long term, I think this is ok/most correct.
- Short term, we are getting a lot of partial drips of data, and this makes it harder for folks to spin up/participate
I kinda want to have a discussion at the product level about what's best here and then circle back on the implementation side of things? We can take this as is for now and then backsolve later if we want.
-- | ||
-- AND ADDING: | ||
-- * the `category` field, because it's helpful for classification | ||
-- * the `encounter` field, because come on, why is it left out of the US Core profile |
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.
you've got to be kidding me
Puts another brick in the wall of #139
Checklist
docs/
needs to be updatedgenerate-md
core
study fields that not in US Core, update our list of those incore-study-details.md
manifest.toml