30 things I learned about FHIR

Here are 30 things I wish I knew about FHIR at the beginning.

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

---

Ways to Work With Me

Discover more from Darren Devitt

Subscribe now to keep reading and get access to the full archive.

Continue reading