© 2015 hl7 ® international. licensed under creative commons. hl7 & health level seven are...

Post on 21-Jan-2016

222 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

FHIR for Specifiers

Michel Rutten

Hilversum, 12 november 2015

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Who am I?

Name: Michel Rutten Company: Furore, Amsterdam Background:

Professional software developer since 1998 Microsoft .NET; Healthcare industries Technical Specialist at Furore since May 2014 Member of the Furore FHIR development team Tool Smith - Lead developer of Forge

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Contents of this tutorial

FHIR 1.0 DSTU 2 Introduction to FHIR Conformance Layer Principal components FHIR Conformance Resources Implementation Guides ValueSet StructureDefinition Registry

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

FHIR 1.0 DSTU2Overview of changes

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

5

DSTU 2 Version History

Version Name Publication date

1.0.0 DSTU 2 QA Preview Aug 31 2015

1.0.1 DSTU 2 Sept 23 2015

1.0.2 Technical Correction 1 Oct 24 2015

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Maturity Framework

Level Description

0 Published on current build

1 Produces no warnings during the build processSubstantially complete and ready for implementation

2 Successfully exchanged between 3+ systems at a connectathonResults reported to the FHIR Management Group

3 Meets DSTU Quality Guidelines Subject to a round of formal balloting; 10+ implementer comments drawn from 3+ organizations resulting in 1+ substantive changes.

4 Tested across its scopePublished in a formal publication (e.g. DSTU)Implemented in multiple prototype projects.Sufficiently stable to require implementer consensus for subsequent non-backward compatible changes.

5 Published in two formal publication release cycles at FMM1+ (i.e. DSTU level)Implemented in 5+ independent production systems in >1 country

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

7

RESTful API

Add batch Several clarifications around versioning &

transactional integrity Changed Bundle URL resolution rules

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

8

Search

Changed the way <> etc. works Added _list parameter Changed rules around contained and

included resources

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

9

Data Types

New data types Markdown Annotation

Changed data types Coding Quantity Signature Timing Address ContactPoint

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

10

Data Types

Changes to ElementDefinition Add base

Specifies path & cardinality of base element Make type.profile repeat

Target resource must conform to all profiles Remove constraint.name and replace with

constraint.requirements Remove binding.name Add minValue[x] and maxValue[x]

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

11

Resources

New Account ImplementationGuide TestScript

Removed Supply

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

12

Resources

Renamed resources Contraindication -> DetectedIssue MedicationPrescription -> MedicationOrder QuestionnaireAnswers -> QuestionnaireResponse

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

13

Resources

Changed Almost all resources Too many to list (1317 tasks worth of changes) Add, remove elements Change types, references, definitions & value sets Re-order elements Provide much more documentation and new

examples

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

14

Implementation Guides

Move Argonaut content out http://argonautwiki.hl7.org/index.php?title=Main_Page

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

15

1.0.1

Changes of significance during the QA process: Remove the Clinical Quality Improvement

Framework (CQIF) from this published version Made fixes to generated schematrons Updated generated comformance resources

(StructureDefinitions and SearchParameters) so they were consistent with the specification

Many spelling / grammar / broken link fixes

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

1.0.2

Series of technical corrections to the specification following extensive review: Corrections to Extension cardinalities in

implementation guides Corrections in the conformance resources that

support the specifications Correct several erroneous invariants Various typos, broken links, and fixes in examples For a comprehensive list of corrections, see the

Task list for FHIR DSTU2 Technical Correction 116

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

PRINCIPAL COMPONENTSFHIR CONFORMANCE LAYER

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

22

Conformance Resources

Terminology

Naming System

Value Set

Concept Map

Content

Structure Definition

Data Element

Operations

Conformance

Operation Definition

Search Parameter

Misc.

Implementation Guide

Test Script

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

23

Conformance

Conformance Resources

23

“Profile”

StructureDefinition

SearchParamDefinition

ValueSet

ConceptMap

NamingSystem OperationDefinition

Forge

ExcelImplementation

Guide

TestScript

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

24

Terminology

• Define which terminologies to use in which elements

ValueSet

• Define namespaces with unique symbols

NamingSystem

• Define mappings between terms from different systems

ConceptMap

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

25

Content

• Define data structures• Define restrictions and/or extensions

StructureDefinition

• Define data elements (ISO 11179)

DataElement

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

26

Operations

• Define server capabilities• Define supported API methods

Conformance

• Define additional (custom) operations

OperationDefinition

• Define additional (custom) searches

SearchParameter

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

27

Miscellaneous

• Author and publish an implementation guide

ImplementationGuide

• Define compliance tests against a FHIR server

TestScript

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

OVERVIEWFHIR CONFORMANCE RESOURCES

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

29

ImplementationGuide

• Define scope of usage• Describes requirements for an implementation

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

30

ImplementationGuide

Usage: Allow authors to publish an implementation

guide Allow tools to validate conformance Computable!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

32

StructureDefinition

Defines datastructures• Core resources & datatypes (see validation.zip)• Constraints on resources & datatypes• Extensions

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

33

StructureDefinition

Share/publish to repository / registry Compare Validate resource Use to drive

Code generation Report generation UI generation (e.g. ClinFhir ResourceBuilder)

Computable!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

NamingSystem

Describes “logical” numbering systems in use• What’s the name?• What are equivalent uri/uuid/oids

Represents a "System" used within the Identifier and Coding data types.

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

35

ValueSet

Define codes

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

36

ValueSet

Code System Defines a set of codes with meanings (also

known as enumeration, terminology, classification, and/or ontology)

Value Set Selects a set of codes from those defined by

one or more code systems

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

37

ConceptMap

Define mappingFrom one set of concepts to one or more other concept(s)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

OperationDefinition

• Extend/restrict the API• Defines interactions

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

39

OperationDefinition

Describes additional operations over and above the RESTful interactions defined in the specification What is the name? Input/output parameters What does it do? Works on which resources?

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

SearchParameter

Extend/restrict searchesDescribes additional searches to filter resources• What is the name?• Elements filtered• Resource the search works on

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Conformance

A set of capabilities of a FHIR Server

Binds all conformance resources together

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

42

Conformance

Describes how a client or server uses or should use the FHIR API Which wire formats supported? Which resources? Which operations supported? Which profiles supported? Is this a test server? What’s the name of the software?

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

For implementer convenience, the specification itself publishes its base definitions using these same resources!

Used in the core spec

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

For implementer convenience, the specification itself publishes its base definitions using these same resources!

Used in the core spec

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

45

Define FHIR “Profiling”?

General term: The process of creating an implementation

guide The process of creating a conformance

package The process of creating a conformance

resource

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

IMPLEMENTATION GUIDES

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

47

Examples

fhir.hl7.org Implementation > Implementation Guides

Argonaut DAF QICore SDC USLab

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

48

Different Kinds

Strategy•National scope guide•e.g. infrastructure, security

Principles•Overarching principles•e.g. basic components

Subject•Subject with multiple usecases•e.g. medication process

Usecase•Single usecase•e.g. prescription

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

50

Typical Content

Title Table of contents Document information Introduction to the guide Principles & background Functional requirements and high-level use cases Design considerations Package contents (= use case?) Privacy and security guidance Testing and certification Appendix List of all artifacts used in this guide

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

ImplementationGuide

New resource type introduced in DSTU2 1.0

Defines: Conformance Packages Documentation Pages Global Profiles Dependencies

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Conformance Package

Defines a set of conceptually related conformance resources

Provides example resources Allows conformance validation of resources

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Documentation Pages

Provides detailed description of the included conformance resources

E.g. HTML, Markdown Binaries: css, js, img, …

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

54

Global Profiles

A set of profiles that all resources covered by this implementation guide must conform to

Note: A resource can conform to the default profile by conforming to any profile derived from it

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

55

Dependencies

Other ImplementationGuide resources this guide depends on

Type Reference (hyperlink) Inclusion (embed)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

56

Publish!

Test & Verify

Publish

Guide

Author & Store

Implementhttp://simplifier.nethttp://registry.fhir.org

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

57

Forge - Lipid

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

VALUE SETS

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Coded types

Codes are defined in code systems

In a Profile, we may want to limit the codes that can possibly be used in coded elements in the Resources

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

“Code System”

CodeSystem vs. ValueSet

“Dante’s deadly sins”

PrideEnvyWrathSloth

AvariceGluttony

Lust

“ValueSet”

Takes concepts from…

An enumeration of terms

Definition of terms

Example: SNOMED-CT Example: “Childhood diseases”

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

“Special” cases

“All words under B”

“All words in theMerriam-Webster dictionary”

Takes concepts from…

No need to write them all down!

Takes concepts from…

Takes concepts from…

“Words for ‘nerd’”

BookwormGeekGrind

WeenieWonk

Dink (slang)Dork (slang)Swot (slang)

Can take concepts from multipe codingsystems!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Identification of CodeSystems

If you refer to CodeSystems, you use a URL (instead of OID in v2 and v3): http://snomed.info/sct http://loinc.org http://hl7.org/fhir/sid/icd-10

We have introduced them for v2 and v3: http://hl7.org/fhir/v2/0078 http://hl7.org/fhir/v3/ActClass

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Coded types (again)

The uri of the system

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

ValueSets

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

66

ValueSets

This models what we have been discussing so far:

• A ValueSet has metadata (much like Profile: identifier, version, name, etc)

• A ValueSet is built by inclusion of terms from CodeSystems

• A ValueSet can exclude specific codes from other valuesets

• A ValueSet can import codes from other ValueSets

Metadata

Include/Exclude Concepts

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

67

ValueSets

But it can also enumerate (and so indirectly define) all concepts for a new codesystem

• A ValueSet has metadata (much like Profile: identifier, version, name, etc)• A ValueSet is built by defining terms from and for a new CodeSystem• These new concepts have a display label and a definition • …and may be hierarchically organized

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Bindings

When used in a Resource, the modelers include Bindings

Bindings specify which codes can be used

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Profiling bindings

Depending on “core” spec, you can: “required”: not specify a different binding “extensible”: specify a different binding if needed “preferred”: specify a different binding if desired “example”: very likely specify a different binding

Change the bindings as specified in core: Define a new ValueSet

Allow additional codes, Restrict to a subset Specify whether implementers of your profile can

deviate from your valueset.

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

This is not too hard…

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

71

ValueSet Editor

Grahame Apolon …

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

72

ValueSet Editor

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

73

ValueSet Editor

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

STRUCTUREDEFINITION

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Profiling a resource

“Must use only the Dutch national patient identifier”

“Need to register an administrative race code for a Patient in the US”

“Patient Discharge documents must at least contain section “Discharge Medication” and section “Discharge Diagnosis”

“In our Patient registration system, we use these maritalStatus codes beyond those provided by HL7…”

“Our patient registration system, only supports having one single name per Patient”

+

+

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Profiling a resource

Demand that the identifier uses your national patient identifier

Limit names to just 1 (instead of 0..*)

Limit maritalStatus to another set of codes that extends the one from HL7 international

Add an extension to support “RaceCode”

Note: hardly any mandatory elements in the core spec!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Uses for profiles

Server & client may publish and check their conformance to a profile

Validating instances, messages

Implement "FHIR spec-like" website from Profiles as part of an Implementation Guide

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

In v3 CDA…”text-based”

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Write by hand…? Forge!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Publish!

http://simplifier.nethttp://registry.fhir.org

Find & maintain

Retrieve & use

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Who publishes?

http://www.hl7.org/Profile/iso-21090

http://www.hl7.nl/Profile/patient-nl

http://www.health4all.nl/h4all-vitals

http://www.fit4all.nl/f4all-vitals

http://www.data4all.nl/d4all-obs

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

85

Fee

dbac

k

Layered profiles

HL7 Norge adapts Patient for Norway

Helse Nord/Vest/… introduces regional differences

Use-case specific constraints

Constrain

Constrain

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

(Distributed) validation

DIPS’s server

Norway national validation server

Validate NO

Profile HNIKT, DIPS

Profile NO

Dow

nload &

Validate

StoreProfile

NO

Profile

HNIK

T

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

87

Examples…

Let’s look at DAF Profiles

http://fhir.hl7.org Implementation

Implementation Guides• DAF

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

METADATA AND VERSIONS

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

What’s in a profile?

Metadata “Lipid Profile” v1.0.0 Drafturn:acme.org:lipid-profile:v1Author: e.kramer@furore.com

Structure “LipidProfile”Element Definitions …

StructureDefinition for DiagnosticReport

Extension “calculated”

StructureObservation“Triglyceride”

StructureObservation“LDLCholesterol”

DiagnosticReportinstances (via Tag)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Referring to a profile

ObservationCholesterol

6.3 mmol/LHigh(recommended 4.5)

Metadata “Lipid Profile” v1.0.0 Drafturn:acme.org:lipid-profile:v1Author: e.kramer@furore.com

Structure “cholesterol”

http://acme.org/

http://acme.org/StructureDefinition/LDLCholesterol

I’m conforming to

http://acme.org/StructureDefinition/LDLCholesterol

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Versioning…

A “version” – author assigned So what if you change something after

publishing? Just a typo? Change of definition? Make something optional that wasn’t? Make something mandatory that was optional? Add an extension?

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

“Non-breaking change”?

If old data can still be:

1. Validated against the new profile

2. Correctly interpreted against the new profile This can only be determined by the profile’s

authors (and even depends on the way it is used) A breaking change means you are

producing a new profile The profile’s author-assigned identifier changes A new Profile on the server, with a new REST utl

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Authoring a Profile

Excel

Let’s do this in Forge Click “New Profile” Select base resource, e.g. Observation Edit metadata on tab page “Properties”

Name URL

Save!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

STRUCTURES

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

What’s in a profile?

Conformance Package: Lipid Report

Extension“calculated”

StructureObservation“Triglyceride”

StructureObservation“LDLCholesterol”

Structure Diagnostic Report“Lipid Profile”

StructureObservation“HDLCholesterol”

StructureObservation“Cholesterol”

DiagnosticReportinstances (via Tag)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

What’s in a profile?

Metadata “Lipid Profile” v1.0.0 Drafturn:acme.org:lipid-profile:v1Author: john.smith@furore.com

Structure “LipidProfile”Element Definitions …

StructureDefinition: DiagnosticReport

Structure DefinitionExtension“calculated”

Structure DefinitionObservation“Triglyceride”

Structure DefinitionObservation“LDLCholesterol”

Resource Reference

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Structure Definitions

Profiles contain “Structure Definitions” Base definition of a core Resource or Datatype A set of constraints on (nested) elements of a

Resource or Datatype An extension definition

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Observation resource

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Let’s start constraining

0..1

= ‘ok’

“if no value…”

1..1

1..1 Subject 0..1? Why not 1..1 in spec?

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Must support?

Authors: SHALL be capable of providing a value for the element and resource

Consumers: SHALL be capable of extracting and doing something useful with the data element.

"Something useful" is context dependent. The Profile SHALL describe what it means for applications to “support” the element

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

104

Lipid

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

FORMAL CONSTRAINTS

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Formal constraints

…beyond cardinalities and bindings, there are a lot of other conditions you might want to formulate: “If a Cholesterol value result is not available, use

the comments field” “A patient’s birthdate must be on or before today’s

date” These may concern a single element, or

cover multiple elements.

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Formal constraints

Uses free text (human) + xpath (executable) Constraints should be declared on lowest

element in the hierarchy that is common to all nodes referenced by the constraint.

Identified by (local) ‘Key’, involved elements refer to that id

Specify severity (“error” or “warning”)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Context of the constraint

• This constraint is on the elements “valueQuantity” and “comments”

• We would have to formulate this constraint on the Observation, this is the context of the constraint

• We assign the constraint a “key” value that’s unique within the Observations’ constraints

• We refer from both “value[x]” and “comments” to this “key”. This means: if my value changes -> revalidate the constraint

“If a Cholesterol value result is not available, use the comments field”

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Example xpath

Keep in mind: the condition is satisfied when the XPath expression evaluates to “true”

“If a Cholesterol value result is not available, use the comments field”

Note: to use both is ok! Otherwise said: not both empty In Xpath: exists(f:valueQuantity) or exists(f:comment) That’s a logical or, so not exclusive!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

More xpath

“Either a valueQuantity or a comment is permitted” not( exists(f:valueQuantity) and exists(f:comment) )

“Can only have normal range if there is a valueQuantity” exists(f:valueQuantity) or not(exists(f:normalRange))

Steal from the spec (e.g. from Profile)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

EXTENSIONS

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Extension Context

An extension has a context type Resource, Datatype, Extension, Mapping

And a context path (Resource) Observation

“The observation was calculated” (Resource) Observation.value

“The observation’s ‘value’ was calculated” (Datatype) Quantity

“This quantity was calculated” (any Quantity used in any resource!)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Extension Definition

Note: multiplecontexts!

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Extending a name

Key = location of formal definition

Value = value according to definition

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Extensions

Let’s find a representative extension for Practitioner

Add it to the Practitioner (and show it’s both a reference & a definition)

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

The “Basic” resource

Now, what if you have the need for a completely “new” resource?

…then add extensions for each element

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

FHIR REGISTRYSimplifier

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Collaborate

Manage projects Authorize team members Collaborate on profiles Github integration

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Publish

Publish your conformance resources User-friendly structure rendering Detailed descriptions for elements Download as XML, JSON Related example resources

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Find

Find existing conformance resources Constraints & Extensions (StructureDefinitions) Value Sets Concept Maps Naming Systems Search Parameters Operation Definitions Conformance Packages Implementation Guides

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Resolve

Resolve conformance resources by canonical Url Globally unique identifier SHOULD be the URL at which it is published Example:

http://example.org/fhir/StructureDefinition/MyPatient.xml

Alternative: Resolve from a global registry

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

127

Simplifier.net

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

128

Search

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

129

Constraint

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

130

ValueSet

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

131

User

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

132

Project

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

133

Versioning strategy

FHIR Normative no breaking changes => OK! Published resources will always remain available

and functional

FHIR Draft (current phase) FHIR spec may introduce breaking changes How should registry handle breaking changes?

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

134

Versioning strategy

Registry is based on a specific version of the .NET FHIR API

Uploaded resources are tagged with current API version at time of upload

Registry displays a warning if current system API version differs from saved resource API version => Author should update the resource

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

135

Security

Under development…

https OAuth2 OpenID.Connect

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

136

Base url claims

Under development… Proposal:

User can issue a claim for a specific base url E.g. http://example.org/fhir/

Granted claim provides exclusive permission to publish conformance resources on this base url

Delegation; grant claim permissions to other users Conflicting claim requests => prove domain

ownership

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

137

Forge Integration

Under development…

Configure your simplifier credentials & project(s) in Forge

Publish resources Publish ImplementationGuide packages Integrate simplifier resource rendering

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

Q&A

© 2015 HL7 ® International. Licensed under Creative Commons. HL7 & Health Level Seven are registered trademarks of Health Level Seven International. Reg. U.S. TM Office.

139139

International HL7 FHIR Developer DaysNovember 18-20, 2015 in Amsterdam

Education 34 tutorials/presentations

pick & choose

Connectathon Meet fellow developers Put FHIR to the test

Networking FHIR experts and authors on hand

http://fhir.furore.com/devdays

top related