Here are 30 things I wish I knew about FHIR at the beginning.
- That there is no OR parameter in the FHIR API.
- That transactions exist in FHIR and in FHIR SDKs.
- That free Docker images are available for mainstream FHIR servers.
- That some FHIR servers “truncate” included results.
- That all SearchParameters are clearly defined at the bottom of each resource’s page.
- That an OperationOutcome resource could signify success as well as failure.
- That creating and using extensions is a valid way to extend a FHIR data model.
- That transaction bundles are the safest way to update multiple resources.
- That the “_elements” parameter reduces response size.
- That not all FHIR servers include a “self” link in results.
- That conditional updates would allow me to create or update a resource with one request.
- That an element’s cardinality tells me how many of something there can be.
- That different FHIR servers handle pagination in different ways.
- That not all FHIR servers fully implement the “_total” parameter.
- That you can’t run heavy analytical queries on FHIR servers.
- That ResourceReferences can use an Identifier in place of a reference.
- That Terminology is always misunderstood, by the business as well as the devs.
- That extensions can be attached to any FHIR attribute, even primitives.
- That “Is Modifier” elements must always be checked before using a resource.
- That resources can change and even disappear between FHIR versions.
- That _revIncludes can cause speed issues on some FHIR servers.
- That FHIR security labels exist and should not be ignored.
- That Modifier extensions can alter the meaning of an element or resource.
- That FHIR version ids are not always sequential integers.
- That resources can contain other resources.
- That nested extensions exist and are common.
- That just because R5 is the most recent FHIR version doesn’t mean you should use it.
- 28.That there are two ways to get a resource count: “_summary=count” and “_count=0”
- That calling the _history endpoint gives me all versions of a resource.
- That failing to deal with Terminology will put your project at risk of failure.
---