- From: David Booth <david@dbooth.org>
- Date: Fri, 13 Aug 2021 10:14:20 -0400
- To: "its@lists.hl7.org" <its@lists.HL7.org>, w3c semweb HCLS <public-semweb-lifesci@w3.org>
Minutes are here: https://www.w3.org/2021/08/12-hcls-minutes.html And below in plain text. --------------------------------- – DRAFT – FHIR RDF 12 August 2021 [2]IRC log. [2] https://www.w3.org/2021/08/12-hcls-irc Attendees Present Brad Simons, Darrell Woelk, David Booth, Emily Pfaff, EricP, Gopi, Guoqian Jiang, Harold Solbrig, Sajjad Regrets - Chair David Booth Scribe dbooth Contents 1. [3]Brad Simons, SureScripts 2. [4]FHIR RDF R4 issues collected by Harold Solbrig 3. [5]Summary of action items Meeting minutes Brad Simons, SureScripts brad: Motivation for the project was to reuse info from C-CDA: strip out wanted data and get at it more effectively. Work is patented. … We take a FHIR RDF model and a SureScripts model. … We created our own full FHIR model: all resources, all property, all constraints, cardinalities, datatypes. Then added SureScripts model, to: 1. add properties. … Grahame's model does not have a system name on coding. We added one to make it more readable. … Also the SureScripts model has a whole mapping model -- what a C-CDA would be to FHIR. … Take in the FHIR model and SureScripts model and take all the possible xpath permutations, and breadcrumb trail of all resources and properties needed to populate it. … So an instance or attribute that contains a problem.code it knows what all the components are, so it can instantiate it. … I'm able to execute those to extract the relevant data to build all the RDF objects that you see, to populate them with the appropriate data. … Can also generate a list of instances w data values. … For coding value I can get the relevant info from the FHIR model and give it to HAPI, and HAPI will generate the proper code using reflection. sajjad: FHIR in RDF vs FHIR RDF? You have your own ont of FHIR. brad: the base FHIR model is our own ont, but if you lay it next to the FHIR ont, it is very similar. … My goal is to adopt yours. eric: The stuff you add is to make it more readable? brad: I also have my own mappings to get from C-CDA to FHIR, but also rules in that add-on model. sajjad: scalability and maintenance issue, when FHIR spec changes? Diff between FHIR RDF and FHIR in RDF. brad: Yes, and I want to get off of using my own model. Want to be able to use your FHIR RDF. sajjad: you're taking xpaths to populate your schema? Why not JSON into FHIR schema? brad: If the purpose was to go from XML to FHIR, you probably wouldn't need to go through RDF, but you cannot do rules processing on JSON. sajjad: There are rules reasoners available on RDF. brad: Can support augmentation, process breadcrumb trail, capture data from text section and auto-populate the coded section. brad: Ran into naming convention issues -- not consistent across FHIR RDF models. … Also ran into recursion issue. … contains can have a "contains" and the names keep being concatenated. eric: questionnaire response has that recursion problem too. harold: Yes, there are recursive structures in FHIR, and that's one of the reasons we need JSON-LD 1.1 brad: You don't want to keep concatenating contains.contains.contains .... brad: Instead, we just had valueset expansion contains component and left it at that. harold: I think we've addressed this with JSON-D 1.1 eric: Q about xpath annotations. brad: We have a mapping file, w a multitude of nodes with xpath segments, and those segments have an affiliation w a particular FHIR resource property. … When I churn through that stuff, I dynamically build full xpath from breadcrumb trail. eric: Do those end up on instance data, like Sally's diagnosis, or on metadata. brad: The xpath that I built is captured in a binary file, and access them at parse time. They're never passed through to anybody. … Point is to generate a FHIR rep of the C-CDA data, but there's too much unnecessary stuff in C-CDA. eric: Could we see one of the instances, populated with your extra stuff? guoqian: When you convert C-CDA to RDF, how many FHIR resources do you cover? brad: A lot of the resources are reused: Allergy, Med, Immun, Problems, Condition, OBservations (incl familiy history, vitals, etc.), insurance. guoqian: Do you have issues with your FHIR RDF to the XML representation? brad: None. Part of the reason I'm converting to FHIR, is a lot of vendors (Epic, etc.) want to consume FHIR. Meaningful Use caused vendors to use C-CDA, but it didn't tell them how, so the C-CDAs differ. … I want to be able to pass on only the info that is needed, to maintain privacy. guoqian: No issues w HAPI FHIR? brad: None. brad: I'm using HAPI to take my FHIR RDF and produce JSON, and using reflection it produces everything, with only hundreds of lines of code. brad: I'm generating metadata that a colleague uses to generate from POJOs in HAPI. eric: C-CDA diversity was the shortcoming? And will that be any better with FHIR? brad: Probably more structured, but not better. … Consider Allergies. people will codify your Allergies, or your lab results, with ranges, etc. … But if you go into the doc's office and say which meds you are taking, they never look up the codes. Allergies are even worse: 9/10 times its coded in the text section -- never codified. … But here, I'm able to extract info like that and put it into the codified section. gopi: Our EHR only provides text fields for the user, so it's not codified david: How to improve FHIR RDF model? brad: We compared w ours, and matched it as much as possible. … We saw that if we could fix the recursion and standardize on naming, we could drop our model and go with yours. david: Got the list of diffs between yours and ours? brad: I had a few data augmentations that I put into the base FHIR model that are not relevant to you -- branch points. david: Lists? brad: We have lists of lists. Action: Brad to find the comparison of their FHIR RDF to ours sajjad: Suppose you have Organization w a name, assume it is 0 or 1. How would you define the cardinality in RDF? brad: We use OWL to capture the cardinality. sajjad: For usability, from C-CDA, vendors are more interested in being in FHIR. When you transform C-CDA to FHIR, how do you deal w templating? E.g. family history? They all go to Observation. Specialized rules/templates? brad: i have mappings defined for specific sections like Family History. They're driven off of LOINC code in C-CDA for the section. sajjad: There is a mapping from C-CDA to FHIR: Link from sajjad: [6]https://github.com/GoogleCloudPlatform/ healthcare-data-harmonization/tree/master/mapping_configs/ cda_fhir_r4 [6] https://github.com/GoogleCloudPlatform/healthcare-data-harmonization/tree/master/mapping_configs/cda_fhir_r4 brad: Our models are very close. eric: From working w this at NHS, one challenge I've seen in usability is the lenght of the predicates and the lack of connection betweeen similar predicates. … FHIR folks have make a big effort to harmonize them. We're now looking at using just the last segment of the predicates. Does that alarm you or okay with it? brad: I'll have to see. FHIR RDF R4 issues collected by Harold Solbrig [7]https://github.com/fhircat/fhir_rdf_validator/tree/master/ tutorial [7] https://github.com/fhircat/fhir_rdf_validator/tree/master/tutorial We'll discuss these on a future call, but wanted to give you the link, to start looking at them. ADJOURNED On 8/10/21 5:37 PM, David Booth wrote: > FHIR RDF teleconference > Thursday 11am (Boston timezone) > Zoom URL: http://tinyurl.com/fhirrdfzoom > > Agenda: > > - Brad Simons (SureScript) will discuss his experiences with FHIR RDF, > challenges he faced, and suggestions for the R5 version > > - Other FHIR RDF issues we hope to address in R5 to improve ease of use > > More info: > URL: https://confluence.hl7.org/pages/viewpage.action?pageId=66922543 > > Download a calendar invite for this weekly teleconference: > https://confluence.hl7.org/download/attachments/66922543/fhir-rdf-weekly-teleconference.ics?api=v2 > > > Thanks, > David Booth, Chair >
Received on Friday, 13 August 2021 14:14:35 UTC