fhir rdf in action - home - fhir devdays€¦ · fhir.schema.org –potential use cases...

53
FHIR® is the registered trademark of HL7 and is used with the permission of HL7. The Flame Design mark is the registered trademark of HL7 and is used with the permission of HL7. Amsterdam, 15-17 November | @fhir_furore | #fhirdevdays17 | www.fhirdevdays.com FHIR RDF in Action Harold Solbrig, Mayo Clinic

Upload: others

Post on 08-Aug-2020

7 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

FHIR® is the registered trademark of HL7 and is used with the permission of HL7. The Flame Design mark is the registered trademark of HL7 and is used with the permission of HL7.

Amsterdam, 15-17 November | @fhir_furore | #fhirdevdays17 | www.fhirdevdays.com

FHIR RDF in Action

Harold Solbrig, Mayo Clinic

Page 2: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

About Me – Harold Solbrig

• Began in 1972 doing nuclear reactor safety software

• Began medical computing 1975-78 – Berkeley Scientific Labs

• First commercial Unix sysop

• Hardware - disc controllers / television newsrooms

• Worked on ASN.1, ISO 11179 (X3/L8) (metadata), ISO TC 215 (healthcare), OMG, HL7, WHO, IHTSDO / SNOMED International, ISO TC 37 (terminology)

• BS in Maths and Computer Science, MsC in Software Engineering

• With Mayo Clinic 1999-today (more or less)

Page 3: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

About Me – Harold Solbrig

Page 4: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

FHIR RDF in Action - Outline

• FHIR RDF with SNOMED and OWL

• FHIR RDF and i2b2

• fhir.schema.org (if time allows)

Page 5: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

FHIR Resource Instance in RDF

http://www.hl7.org/fhir/diagnosticreport-example-f201-brainct.ttl

Page 6: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

RDF Turtle Syntax

Page 7: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

RDF Rendering Extensions – Concept URIs

<http://snomed.info/id/394914008>JSON

Page 8: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

RDF Rendering Extensions – Resource Types

Construct the actual URI

Resource Type

Page 9: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Ontology Header

Requirement: import FHIR URI Catalog• No ‘import in RDF’ – have to use OWL• owl:imports requires owl:Ontology• ‘f201.ttl’ vs. ‘f201’ – reasoners don’t

cope well with something that is botha fhir:DiagnosticReport and an owl:Ontology (ontology describesreport, not IS the report)

Stay tuned:• Looking at

http://hl7.org/fhir/owl/DiagnosticReport/f201 (or variant thereof) as an alternative

Page 10: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Using FHIR RDF with a DL reasoner

FHIR DiagnosticReportInstance

Reasoner

Class CancerDiagnosis == any DiagnosticReport w/ a dx of a type of malignant neoplasm

Instance is (or is not) an instance of Class CancerDiagnosis

Page 11: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Using FHIR RDF with a DL reasoner

Reasoner

ConclusionsClassification

Rules

Page 12: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Conclusions

Using FHIR RDF with a DL Reasoner

Reasoner

ClassificationRules

InstanceDescriptions

reference Definition of the classes and predicates used in a FHIR

Resource Instance

DomainKnowledge

reference

reference

Page 13: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

FHIR Resource Instance

http://www.hl7.org/fhir/diagnosticreport-example-f201-brainct.ttl

Page 14: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Instance Descriptions – the FHIR URI Catalog

Page 15: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Conclusions

Using FHIR RDF with a DL Reasoner

Reasoner

ClassificationRules

fhir.ttlreference Definition of the classes and predicates used in a FHIR

Resource Instance

DomainKnowledge

reference

reference

Page 16: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Concept References – SNOMED CT

http://snomed.info/id/188340000

Page 17: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Conclusions

Using FHIR RDF with a DL Reasoner

Reasoner

ClassificationRules

fhir.ttlreference Definition of the classes and predicates used in a FHIR

Resource Instance

reference

reference

Page 18: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Classification Rule

Page 19: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Classification Rules

Page 20: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Conclusions

Using FHIR RDF with a DL Reasoner

Reasoner

Cancerreport.owl

fhir.ttlreference Definition of the classes and predicates used in a FHIR

Resource Instance

reference

reference

Page 21: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Loading the classification rules

https://github.com/BD2KOnFHIR/BLENDINGFHIRandRDF/yosemite_talk/cancerreport.owl

Page 22: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Run the Reasoner

Page 23: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Result

Page 24: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Restrict to Patients

Page 25: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Finalized Reports Only

Page 26: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Finalized Reports Only

Approach is “brittle”:

• Code system hierarchy is replicated as flattened strings

• No link to fact that system is being used

• DataProperty constraints potentially make reasoner more complex

Page 27: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Finalize Reports Only – Proposed Solution

Page 28: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Finalized Reports Only (cont)

Page 29: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Finalized Patient Reports with Cancer Diagnosis

Page 30: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Result

Page 31: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Post-coordinated expressions

One possible format for compositional expression

Equivalent expression in OWL

https://github.com/BD2KOnFHIR/BLENDINGFHIRandRDF/yosemite_talk/diagnosticreport-example-thyroidtumor.ttl

363346000 - Malignant tumor363698006 – Finding Site170787008 – Left lobe of thyroid gland

Page 32: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Post coordinated classifier

…Declaration(Class(:ReportOfThyroidDisease))AnnotationAssertion(dc:title :ReportOfThyroidDisease

"Thyroid Disease Dx - disorder of the thyroid gland (sct:14304000)")EquivalentClasses(:ReportOfThyroidDisease ObjectSomeValuesFrom(fhir:DiagnosticReport.codedDiagnosis.coding sct:14304000))

)

https://github.com/BD2KOnFHIR/BLENDINGFHIRandRDF/yosemite_talk/thyroidreport.owl

Page 33: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Results

Page 34: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

i2FHIRb2 – FHIR in i2b2

• I2b2 – Informatics for Integrating Biology and the Bedside

• Underlying model is “Star Schema”

https://www.i2b2.org/

Page 35: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

I2B2 Observation Fact Table

Core table maps encounter_num(which uniquely determines patient_num) + (…) + concept_cd + modifier_cd a data type instance.

Page 36: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

I2b2 Ontology Table

Ontology table maps a hierarchical path to…

… a SQL query that (amongst other things) …

… returns a set of concept codes + (optional) modifier codes

… that are used to select rows in the observation fact table

Page 37: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Loading FHIR into i2b2

FHIR Metadata Vocabulary

(fhir.ttl)I2B2 Ontology Cell

FHIR Resource Instance

FHIR Resource Instance1

FHIR Resource Instance1

FHIR Resource Instance

(RDF)

I2B2 CRC Cell(Observation_fact,

patient_dimension, etc.)

generate_i2b2

loadfacts

FHIR Resource Instance(JSON)

FHIR Resource Instance(JSON)

jsontordflibrary

https://github.com/BD2KOnFHIR/i2FHIRb2https://github.com/BD2KOnFHIR/jsontordf

Page 38: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

i2b2 queries

I2B2 Ontology Cell

I2b2 Client

I2B2 CRC Cell(Observation_fact,

patient_dimension, etc.)

Navigation

Query

Matching Patients

Page 39: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

fhir.ttl i2b2 ontology cell

FHIR Metadata Vocabulary Entry

I2B2 Ontology Table

Page 40: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

I2b2 Ontology Navigation

FHIR Observation Resource I2B2 Ontology

Page 41: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

I2b2 Observation Fact Table

Page 42: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal
Page 43: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

FHIR in i2b2 - Status

We have proven that it can work

Still have to:

• Merge FHIR data types w/ i2b2 value types

• Add URIs (codes) for values themselves for queries

• Demonstrate that ontology can be re-structured to show clinical view rather than FHIR Resource view

• https://github.com/BD2KOnFHIR/i2FHIRb2

Page 44: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

fhir.schema.org

Question: Is there a place for the FHIR URI catalog in the schema.orgspace?

Page 45: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Schema.org

• HTML Markup• Focus on online services and products• Used by Google, Bing, Yahoo! and others• Formats:

• Microdata• RDFa 1.1 Lite• JSON-LD

Page 46: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Embedded Microdata

Page 47: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Health-lifesci.schema.org

Page 48: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Embedded JSON-LD

Page 49: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Fhir.schema.org - Clinical research data?

Page 50: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Embedded RDF-A

Page 51: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

fhir.schema.org – Potential Use Cases

• Provenance for FHIR Narrative Text

• HTML FHIR Interchange Format

• Markup for personal device measurements

• Mapping for HL& Continuity of Care (CCD) and other data formats

• Markup for blogs and other Personal Health Records (PHR)

• Linking Medical Knowledge / Data / Products

Embedded RDF-A

Page 52: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

fhir.schema.org

NOTE:

Service is not currently active - it had been located on an appspotURL – will be re-established if interests

Original location:

http://fhir.fhir-schema-org.appspot.com

Page 53: FHIR RDF in Action - Home - FHIR DevDays€¦ · fhir.schema.org –Potential Use Cases •Provenance for FHIR Narrative Text •HTML FHIR Interchange Format •Markup for personal

Credits

This work is supported in part by NIH grants U01 HG009450 and U01 CA18094.

This work was conducted using the Protégé resource, which is supported by grant GM10331601 from the National Institute of General Medical Sciences of the United States National Institutes of Health.

Eric Prud’hommeaux David Booth Dr. Guoqian JiangGrahame Grieve

The HCLS working group