FHIR Terminology by Grahame Grieve

27
© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office. ® FHIR Terminology Grahame Grieve FHIR Developer Days November 20th, 2015

Transcript of FHIR Terminology by Grahame Grieve

Page 1: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

FHIR Terminology

Grahame GrieveFHIR Developer DaysNovember 20th, 2015

Page 2: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®This presentation

Can be downloaded here: http://www.slideshare.net/DevDays2015

Is licensed for use under the Creative Commons, specifically: Creative Commons Attribution 3.0 Unported

License (Do with it as you wish – just give credit)

Page 3: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

SENDING CODED DATA

Page 4: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®Terminology Sub-system

SNOMED CT / LOINC / RxNORM

HGVS, ICPC, MIMS + 100s more

ICD-X+ ANZSCO, METEOR A drug formulary A config table in an

application A list of enums in a java class Country codes

Code System:Defines a set of concepts with a

coherent meaning

CodeDisplay

Definition

Page 5: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®Terminology Sub-system

Value Set:A selection of a set of codes for

use in a particular context

Code System:Defines a set of concepts with a

coherent meaning

CodeDisplay

Definition

Selects

“European country codes” “The LOINC codes I use” All LOINC order codes A SNOMED CT heirarchy

Page 6: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®Code System vs Value Set Often mixed in common usage E.g. am application table that mixes LOINC

codes and custom (self defined) codes The only way to know it’s a LOINC code is it has

the distinctive NNN-N syntax HL7 says: keep your definitions clean, or you’ll

get in trouble when you exchange data Separate the definition and use of a ‘concept’

Page 7: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®Terminology Sub-system

Code System:Defines a set of concepts with a

coherent meaning

CodeDisplay

Definition

Element Definition

Type and Value set reference

Value Set:A selection of a set of codes for

use in a particular context

SelectsBinds

Page 8: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

8

Bindings

Bindings identify what sort of codes are allowed for a given element

Can be: Value set

Defined set of codes from 1..* code systems Reference

E.g. Mime types Description

E.g. Location type codes

Page 9: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

9

Binding Strength required: You must use the specified codes

At least for concepts they apply to extensible: You must use the specified codes if they

apply Free to use other codes or text if value set doesn’t cover concept

preferred: You SHOULD use the specified codes But if you have a good reason, you can use something else

instead example: These codes just give an idea of what you

might use No expectation (or recommendation) of use

Page 10: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®Terminology Sub-system

Code System:Defines a set of concepts with a

coherent meaning

CodeDisplay

Definition

Element Definition

Type and Value set reference

Value Set:A selection of a set of codes for

use in a particular context

SelectsBinds

Element: code/

Coding/CodeableConcep

t

Refers to

Conforms

Page 11: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®Referring to a code systemEach “use of a code” (a reference into a code system) has 4 properties: system: URL of the code system version: stated version of the code system

(optional) code: the symbol defined for the concept

(code/expression) display: a human readable representation of

the concept (optional – debugging/display)

Page 12: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

12

CodeableConcept

All codings are “equal” One can be “primary” reflects “originally selected”,

not “what my profile wants” To maximize interoperability, send what

codings you know Text and coding.display are fallbacks for

systems that don’t recognize your code So good practice to include them

Page 13: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

VALUE SETS

13

Page 14: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

14

Value Set

Page 15: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

15

Value Set Parts

Meta data Logical definition:

Other value sets to include Codes to include/exclude – system, list or by filter Special: define a Code System & automatically

include it Expansion

What’s actually in the value set today, under local conditions

Page 16: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®Versions

A valueset that doesn’t use ValueSet.compose.include.version has unknown content Even if it lists codes explicitly

Until you decide on a version Decision is delegated to run time

Very common thing to do

Page 17: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

17

Defining Concepts

All code systems have a URL Code + definition Primary representation Multiple other representations

Alternate languages, alternate uses

Page 18: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

18

Selecting Concepts

Name the System (optional: version) If just a system, then all codes are included List codes

Can provide alternate descriptions Select codes by property

Name – defined by the code system Operation – equals, in, regex, etc Value – the value of the property E.g. LOINC: ORDER_OBS = Order

Page 19: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

19

Concept Map

A list of mappings between concepts from two different code systems or models

Page 20: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

20

Terminology Service

There’s a lot of complexity here: Code Systems Value Sets Bindings

Most applications much simpler List of codes and displays in some table structure This is a known problem

Page 21: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

21

Terminology Service

Delegate the complexity to specialist software

Provide a set of services that do what applications need

It becomes easy to write applications that do terminology well

Page 22: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

22

Application Needs

Give me a list of codes Is this code valid? How do I display a code? Translate this code to a different code

system Integrate terminology search into my

application

Page 23: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

23

Terminology Service

$expand – given a value set, get the expansion

$lookup – given a code & a value set, what’s the right display

$validate-code – is this valid? (Also, does subsumption testing)

$translate – can you translate this code to another code system

$closure – maintain a closure table for me

Page 24: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

24

Examples…

Page 25: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

25

Closure

Find any observations for male patients over the age of 50 who attended a particular clinic within a particular 2 week period, with a diagnosis of gout, and who had an elevated serum creatinine.

Some of this is terminology based, some isn’t. How do you make this work?

Page 26: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

26

Closure

Every new code in a context: Ask server what relationships exist with

codes already in that context Put them all in a ‘closure’ table

Concept table (key : system : code : display) Closure table (keySource, keyDest)

Can include joins on this table as part of other queries E.g.

Page 27: FHIR Terminology by Grahame Grieve

© 2015 HL7 ® Int’l. Licensed under Creative Commons. HL7, Health Level Seven, FHIR & flame logo are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

®

27