Why RDF? 1.Semantics, not syntax 45
Why RDF? 1.Semantics, not syntax 2.Self describing – derefenceable URIs 46
Why RDF? 1.Semantics, not syntax 2.Self describing 3.Schema promiscuous 47
Why RDF? Schema promiscuous • Blue App has model Blue Model Country Address FirstName LastName Email City ZipCode 48
Why RDF? Schema promiscuous • Red App has model Red Model HomePhone Town ZipPlus4 FullName Country 49
Why RDF? Schema promiscuous • Merge RDF data • Same nodes (URIs) join automatically Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email City ZipCode 50
Why RDF? Schema promiscuous • Add relationships and rules • (Relationships are also RDF) Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email hasFirst hasLast sameAs City ZipCode subClassOf 51
Why RDF? Schema promiscuous • Later add Green model (Using Red & Blue models) Green Model Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email hasFirst hasLast sameAs City ZipCode subClassOf Multiple models peacefully coexist 52
Why RDF? Schema promiscuous • What the Blue app sees: – No difference! Green Model Blue Model Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Country Country Address Address FirstName FirstName LastName LastName Email Email City City ZipCode ZipCode 53
Why RDF? Schema promiscuous • What the Red app sees – No difference! Green Model Blue Model Red Model Red Model HomePhone HomePhone Town Town ZipPlus4 ZipPlus4 FullName FullName Country Country Country Address FirstName LastName Email City ZipCode 54
Why RDF? Schema promiscuous • What the Green app sees – No difference! Green Model Green Model Blue Model Red Model HomePhone HomePhone Town Town ZipPlus4 ZipPlus4 FullName Country Country Country Country Address FirstName FirstName LastName LastName Email Email City ZipCode 55
Why RDF? 1.Semantics, not syntax 2.Self describing 3.Schema promiscuous 4.Neutral, mature, international standard 56
Why RDF? 1.Semantics, not syntax 2.Self describing 3.Schema promiscuous 4.Neutral, mature, international standard Best available candidate for a universal healthcare exchange language! 57
How? 58
Semantic interoperability involves data transformations Sender1 HL7 v2.x Receiver Universal Healthcare CSV Exchange Sender2 Language FHIR How? 59
Syntactic and Semantic Transformations Sender1 Syntactic Semantic Syntactic RDF m1 m1 HL7 v2.x To RDF Receiver m3 RDF to RDF To CSV CSV Sender2 RDF m2 to RDF To RDF FHIR 60
Sender1 data: HL7 v2.x Sender1 Sender1 OBX|1|CE|3727-0^BPsystolic, m1 m1 HL7 v2.x HL7 v2.x To RDF Receiver sitting||120||mmHg| m3 RDF to RDF To CSV CSV Sender2 RDF m2 to RDF To RDF FHIR (Fictitious examples for illustration) 61
Sender2 data: FHIR Sender1 <Observation xmlns="http://hl7.org/fhir"> m1 m1 HL7 v2.x To RDF Receiver m3 <system value="http://loinc.org"/> RDF to RDF <code value="8580-6"/> To CSV CSV <display value="Systolic BP"/> Sender2 Sender2 RDF m2 <value value="107"/> to RDF To RDF <units value="mm[Hg]"/> FHIR FHIR </Observation> (Fictitious example for illustration) 62
Receiver data expected: RDF Sender1 d1:obs042 a m3:Observation ; m1 m1 a m3:BP_systolic ; HL7 v2.x To RDF Receiver Receiver m3:value 120 ; m3 RDF m3:units m3:mmHg ; to RDF To CSV m3:position m3:sitting . CSV CSV d2:obs-091 a m3:Observation ; Sender2 RDF m2 a m3:BP_systolic ; to RDF m3:value 107 ; To RDF FHIR m3:units m3:mmHg . 63
Step 1: Syntactic transformation Sender1 Sender1 Syntactic RDF m1 m1 m1 HL7 v2.x HL7 v2.x To RDF To RDF Receiver m3 RDF to RDF To CSV CSV Sender2 Sender2 RDF m2 m2 to RDF To RDF To RDF FHIR FHIR • Transform from source format to substrate model (RDF) • Allows data to be merged • Data may not join semantically due to differing vocabularies 64
Sender1 syntactic transformation OBX|1|CE|3727-0^BPsystolic, Sender1 Sender1 Syntactic sitting||120||mmHg| m1 m1 m1 m1 HL7 v2.x HL7 v2.x To RDF To RDF Receiver m3 RDF to RDF RDF To CSV CSV Sender2 RDF d1:obs042 a m1:PatientObservation ; m2 to RDF m1:code "3727-0" ; To RDF FHIR m1:description "BPsystolic, sitting" ; m1:value 120 ; m1:units "mmHg" . 65
Sender2 syntactic transformation <Observation Sender1 xmlns="http://hl7.org/fhir"> <system value="http://loinc.org/"/> <code value="8580-6"/> m1 m1 HL7 v2.x To RDF Receiver <display value="Systolic BP"/> m3 <value value="107"/> RDF to RDF <units value="mm[Hg]"/> To CSV CSV </Observation> Sender2 Sender2 RDF m2 m2 to RDF To RDF To RDF FHIR FHIR RDF d2:obs-091 a m2:Observation ; m2:system "http://loinc.org/" ; m2:code "8580-6" ; m2:display "Systolic BP" ; m2:value 107 ; m2:units "mm[Hg]" . 66
Step 2: Semantic Transformations Sender1 Syntactic Semantic Syntactic RDF m1 m1 HL7 v2.x To RDF Receiver m3 RDF to RDF To CSV CSV Sender2 RDF m2 to RDF To RDF FHIR 67
Sender1 semantic transformation Sender1 m1 m1 m1 m1 HL7 v2.x To RDF Receiver m3 m3 RDF RDF to RDF to RDF To CSV CSV Sender2 CONSTRUCT { RDF m2 to RDF ?observation a m3:Observation ; To RDF a m3:BP_systolic ; FHIR m3:value ?value ; m3:units m3:mmHg ; m3:position m3:sitting . } WHERE { ?observation a m1:PatientObservation ; m1:code "3727-0" ; m1:value ?value ; m1:units "mmHg" . } 68
Sender2 semantic transformation CONSTRUCT { ?observation a m3:Observation ; a m3:BP_systolic ; Sender1 m3:value ?value ; m3:units m3:mmHg . } WHERE { m1 m1 ?observation a m2:Observation ; HL7 v2.x To RDF Receiver m2:system "http://loinc.org/" ; m3 m3 RDF m2:code "8580-6" ; to RDF m2:value ?value ; To CSV CSV m2:units "mm[Hg]" . } Sender2 RDF RDF m2 m2 to RDF to RDF To RDF FHIR 69
Merged RDF Sender1 Syntactic d1:obs042 a m3:Observation ; a m3:BP_systolic ; m1 m1 HL7 v2.x m3:value 120 ; To RDF Receiver Receiver m3 m3 m3:units m3:mmHg ; RDF m3:position m3:sitting . to RDF To CSV To CSV CSV CSV d2:obs-091 a m3:Observation ; Sender2 a m3:BP_systolic ; RDF m2 m3:value 107 ; to RDF m3:units m3:mmHg . To RDF FHIR • m3 can be understood by Receiver • Ready for syntactic transform to CSV 70
Summary of transformations Sender1 Syntactic Semantic Syntactic RDF m1 m1 HL7 v2.x To RDF Receiver m3 RDF to RDF To CSV CSV Sender2 RDF m2 to RDF To RDF FHIR Ideally, transformations should be standardized 71
Proprietary vocabularies • Impede semantic interoperability • Exchanged healthcare information should be based on free and open vocabularies – But proprietary can be used internally 72
Yosemite Manifesto on RDF as a Universal Healthcare Exchange Language 1. RDF is the best available candidate for a universal healthcare exchange language. 2. Electronic healthcare information should be exchanged in a format that either: (a) is an RDF format directly; or (b) has a standard mapping to RDF. 3. Existing standard healthcare vocabularies, data models and exchange languages should be leveraged by defining standard mappings to RDF, and any new standards should have RDF representations. 4. Government agencies should mandate or incentivize the use of RDF as a universal healthcare exchange language. 5. Exchanged healthcare information should be self-describing, using Linked Data principles, so that each concept URI is de-referenceable to its free and open definition. Sign at http://YosemiteManifesto.org/ 73
Research needed to prove feasibility • Build and demonstrate a reference implementation – At least two senders and one receiver • Demonstrate all important features: – Syntactic & semantic transformations – Selecting and applying transformations – Incorporate new vocabularies & deprecate old – Privacy & security – Hosting concept definitions • Run stress tests to simulate scaling to nationwide adoption • Recommend conventions 74
Data Transformation Wiki Lookup / Lookup / Download Download W IKI T RANSFORMI A Upload For Health Data Languages Upload 75
What would it be like? • Better treatment • Better research • Lower cost Goal: True semantic interoperability 76
What does semantic interoperability involve? • Machine processable information • Common vocabularies • Unambiguous concepts 77
Why is this so difficult to standardize? • Healthcare is complex: thousands of interrelated concepts, many domains • Standardization progress diminishes toward zero as committee size grows • Moving target: medical science and technology continually changing 78
Unambiguous concepts 79
Semantic interoperability Sender1 Receiver Sender2 • Requires standardization 80
Assumption: Not standardizing internal systems • Not politically feasible • Too costly • Unwise: would inhibit innovation 81
82
"PCAST has also concluded that to achieve these objectives it is crucial that the Federal Government facilitate the nationwide adoption of a universal exchange language for healthcare information" 83
Semantic interoperability Sender1 Receiver Sender2 84
Semantic interoperability-2 Sender1 HL7 v2.x Receiver Universal Healthcare CSV Exchange Sender2 Language FHIR 85
Step 2: Semantic transformation RDF Sender1 HL7 v2.x to RDF HL7 v2.x Receiver m1 to m3 RDF to CSV CSV Sender2 FHIR m2 to m3 to RDF FHIR 86
Data transformations Sender1 RDF HL7 v2.x Receiver Transformations Transformations RDF Syntactic Syntactic Semantic to CSV CSV Transformations RDF Sender2 to RDF FHIR 87
Data transformations RDF Transformations Transformations Syntactic Syntactic Semantic Transformations RDF to RDF 88
Step 2: Semantic transformation Semantic Semantic Semantic Transformations Transformations Transformations RDF 89
Syntactic and Semantic Transforms Sender1 Syntactic Semantic Syntactic (RDF) HL7 v2.x HL7 v2.x Receiver to RDF RDF to RDF RDF CSV to CSV Sender2 RDF to RDF FHIR FHIR to RDF 90
Syntactic and Semantic Transforms Sender1 Syntactic Semantic Syntactic m1 m1 HL7 v2.x To RDF Receiver m3 RDF to RDF To CSV CSV Sender2 RDF m2 to RDF To RDF FHIR 91
Syntactic and Semantic Transforms Sender1 m1 m1 HL7 v2.x To RDF Receiver m3 RDF to RDF To CSV CSV Sender2 RDF m2 to RDF To RDF FHIR 92
Step 2: Semantic transformation Sender1 HL7 v2.x RDF to RDF to RDF HL7 v2.x Receiver Transformations Transformations RDF Syntactic Syntactic Semantic to CSV CSV Transformations RDF Sender2 to RDF FHIR to RDF FHIR 93
Why RDF? Schema promiscuous Green Model Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email hasFirst hasLast sameAs City ZipCode subClassOf 94
Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email hasFirst hasLast sameAs City ZipCode subClassOf 95
Green Model Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email City ZipCode 96
Green Model Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email City ZipCode 97
Green Model Blue Model Red Model HomePhone Town ZipPlus4 FullName Country Country Address FirstName LastName Email City ZipCode 98
Green model Green Model HomePhone Town ZipPlus4 Country FirstName LastName Email 99
Blue view Blue Model Country Address FirstName LastName Email City ZipCode 100
Recommend
More recommend