google / simhospital

Apache License 2.0
665 stars 76 forks source link

Option to generate FHIR format instead #11

Open Tshimanga opened 1 year ago

Tshimanga commented 1 year ago

The industry is federally mandated to move to FHIR and FHIR is easier to work with. Also, synthea supports FHIR.

sonjoonho commented 1 year ago

Hi Tshimanga, this functionality is partially supported by the generate_resources event which will trigger FHIR resource generation. See https://github.com/google/simhospital/blob/master/docs/write-pathways.md#generate-resources.

gedw99 commented 1 year ago

I use this:

https://github.com/samply/golang-fhir-models

As an example …

FHIR has “profiles” per country.

https://www.hl7.org/fhir/profiling.html

These are different from extensions btw.

Some regions or orgs generate schema on top of base schema to form Profiles.

google define FHIR using proto buffers and generates off those like the profiles here:

https://github.com/google/fhir/tree/master/examples/profiles

The GRPC based protocol buffers are often just called “proto” and are in the same repo in the proto folder.

there is a simpler way to generate code from proto’s:

https://github.com/bufbuild/buf

the advantage is that the generated code is less coupled to GRPC generated code. Sone prefer this but this Simukated Hospital uses the Google GRPC way.

official schema is kind of clunky . https://github.com/HL7/fhir/tree/master

google likekynhand codes or code generates their otitis off these official specs. That code is a mystery to me.

To see all the schema profiles by country this is pretty good:

https://simplifier.net/

for example KVB is for Germany. But you can filter by country , org etc.

https://simplifier.net/search?category=profile