Meeting minutes
Validating FHIR RDF examples
ericp: Iovka and CLaude and I are getting together in Lille to work on the latest implementation of ShEx in Jena, to improve error messages.
… I don't expect it to be perfect before our face-to-face. Then we'll proceed to Madrid for the FHIR connectathon, and work on the HAPI FHIR impelmentation.
… We'll work on running the examples and the ShEx that Deepak generated from the structure defs, through the Jena ShEx impl.
… The plan is to validate all the examples, and maybe do some fuzz testing and negative testing too.
… We expect to iteratively get bad error messages, improve them, and try again.
… We'll be cycling on examples, the shex that validates them, and the code for the xhes.
jim: I'll be in Geneva around that time, but it isn't close enough to Lille.
(EricP and Jim exchange contact info for talking when Jim is in Geneva)
deepak: I'm recommending the use of FHIR, and want to use shex. But the FHIR servers only return XML or JSON
ericP: Because you're using profiles, we can verify conformance using a 5 line HAPI FHIR program.
deepak: How to search patient data?
ericp: You want to use the schema language as a query language? Deepak: Yes.
ericp: That will depend on the Jena API. How many records in the search?
deepak: Mayo has millions of records.
… Changes happen daily
… The AI model works with features, i.e., constraints on the data. Each feature will be one set of constraints.
… Thinking of finding those data measures as small shex data elements, then figure out the cohort. Like SQL but using ShEx.
… The data is not in RDF.
ericp: You either need to translate the data into RDF, or translate the shex constraint into something that depends on the native store.
… You have a scaling problem w multiple millions of records.
… Shex could be useful. Or SPARQL. And there's a FHIR SPARQL tool that I wrote in typescript.
… It sees what kind of query it is. It takes the sparql query, breaks it into resources, then does FHIR REST API queries over the parts of that query that are expressible that way.
… That would work if Mayo has an efficient way to do FHIR REST API queries.
deepak: They have decently fast ones.
ericp: Then you could use SPARQL instead of shex.
… Look for FHIR-SPARQL. But the downside is it's written in typescript, using an inefficient JS sparqle engine. Best would be to finish porting that code to java.
… Claude started that, but didn't have funding to finish.
dbooth: Maybe you could get funding to do that?
ericp: Claude arrives May 7 in Lille. Madrid is May 9.
… I don't have funding to go, so I need to figure out how much I can couch surf.
… Want to loop in Jose Labra too, because he's doing another implementation that is portable across platforms, written in Rust.
dbooth: What help will you need from Deepak?
ericp: Need to be able to contact him for guidance on fixing problems we find.
jim: I'll be leaving Geneva Fri May 9.
ericp: We'll want to start on this while we're in Lille, because Jim will be in the same timezone.
IRI stems
gaurav: Sentence to clarify is ready for votes.
https://
… And updated source code for concept IRI test in FHIR playground, but I need to update examples.
Next meeting
ADJOURNED
ericp: Regrets for May 8
jim: Also for me
ADJOURNED AGAIN