SlideShare a Scribd company logo
1 of 20
1
The openEHR Developers
workshop
Pablo Pazos Gutiérrez
pablo.pazos@cabolabs.com
Experiences on developing software with openEHR
2
We've worked on interesting topics
• Clinical Databases / Clinical Data Repositories
• Web Services / REST APIs
• GUI Auto-generation
• Rules for Clinical Decision Support
• An Open EHR Platform (combination of ^)
• Open Source Software
• All based on
3
Open EHR Platform
reusing components and services
to build you own apps and systems
4
EHRServer
Service-oriented clinical data
repository for shared EHRs, based
on the openEHR standard.
5
EHRServer
• Services
– commit
• feed data to the EHR of a patient
• openEHR XML documents
• validates against the openEHR XSD
• versioned data (no physical delete or modification of data)
– query
• clinical documents by complex criteria
• data points with different groupings
– sync (TBD)
• scaling EHRServers
• enable high availability
– other
• get patients, ehrs, clinical documents, queries, ...
6
EHRServer
• Features
– REST API (SOAP will be enabled soon)
– Multi-format query results (XML, JSON, need more?)
– Versioned data
– EHR audit
• All modifications of an EHR are recorded
• Who, when, what, from where, ...
– Admin GUI
• Query building and testing (archetype-based queries)
• EHR Audit
• Organization of clinical records in folders
• Adding templates
– Adds support for new clinical records
– Without changing source code or database schema
7
EHRServer
• Technologies
– Java / Groovy
– Grails Framework
– MySQL (can be replaced)
• Out of scope
– No GUI for clinical records (that's on client apps)
• Open Source
– EHRServer
• https://github.com/ppazos/cabolabs-ehrserver
– Sample client apps
• https://github.com/ppazos/cabolabs-emrapp
• https://github.com/ppazos/EHRCommitter
• https://github.com/ppazos/EHRClientPHP
– Javascript connector
• https://github.com/ppazos/cabolabs-ehrserver-js
8
EHRServer Query Builder
9
Query testing before creating
10
Test it yourself!
https://cabolabs-ehrserver.rhcloud.com/ehr-0.3/query/list
11
EHRGen
EHR Generator Framework
12
EHRGen
• Features
– Load archetypes and UI templates (T)
with references to archetypes
– Associate (T) with workflows (WF) 
– UIs are auto-generated from (T)
– Menus are auto-generated from (WF)
– Data validation using archetypes
– Generic data storage (any openEHR
data structure)
– No need to change the source code or
database schema to add more types of
clinical records
• just add archetypes and UI templates
• EHRGen will do the rest :D
• TODO:
– Use Operational Templates (OPT)
instead of archetypes
– Commit data to the EHRServer
• Test it:
– http://ehrgen-ehrserver.rhcloud.com/ehrgen-1.4-0.8b3
13
EHRGen’s archetype-based queries
SELECT
RESULTS
14
UI Generation / Current Work
• Generalization to generate UIs for any technology / device
– ... that has a declarative UI language / syntax
• Generic UI Template Model
– References openEHR archetypes / operational templates
– XML expression of UI Template
• UI Generator maps UI Templates to declarative UIs in any technology
– XAML, SwiXML, HTML5, XHTML, Android XML Layouts, ...
– Using mappings from the canonical UI Template to each declarative UI syntax
• Use cases:
– accelerate openEHR app development
– fast prototyping and user validation
• Soon:
– full spec on for openEHR UI Templates
15
UI Template Model (simplified)
organization of
sections in the
screen
references to openEHR
archetypes / templates
view = screen / form
form controls (fields) and
labels on screen for
archetype nodes
16
XML Rule Engine
Rules and Clinical Decision Support:
(re)using clinical data to help clinicians
17
XML Rule Engine for CDS
• Requirement:
– Women should have a PAP
test once a year.
• Rule:
– If last PAP test of a patient
was done more than a year
ago, then send an alert.
• Clinical information (tests)
can be pulled from different
systems
– EHRServer using semantic
queries (path-based).
– Different data sources can
be combined in the same
rule.
• Rule is evaluated using a
REST Web Service
– patient id is an input
parameter
<xrl:unit xmlns:xrl="http://openehr.org.es/rules">
<header>
<id>gine_alerts.v1</id>
</header>
<rules>
<rule>
<id>pap_test_alert.v1</id>
<name>alerta para recordatorio de test de papanicolaou</name>
<definitions>
<var name="last_pap_test_date" type="date">
<resolutor type="http">
<locator url="http://localhost/gine_tests.xml" />
<extractor path="tests.test.time" />
<aggregator type="last" />
<param name="patient_id" />
</resolutor>
</var>
<var name="ret_alert" value="alert" type="string" />
<var name="ret_ok" value="ok" type="string" />
<var name="days_from_last_pap" type="integer">
<resolutor type="action">
<action type="dateDiff" in1="last_pap_test_date" in2="$now" units="days" />
</resolutor>
</var>
</definitions>
<logic>
<if>
<gt in1="days_from_last_pap" inc2="365" />
<do>
<action type="..." params="..."></action>
<return name="last_pap_test_date" />
<return name="days_from_last_pap" />
<return name="ret_alert" />
</do>
</if>
<else>
<do><return name="ret_ok" /></do>
</else>
</logic>
</rule>
</rules>
</xrl:unit>
18
XML Rule Engine for CDS
• Results on screen:
– For each patient
– Alerts showing the result of evaluating the pap rule
– Can add a sex check in the rule to see if the rule applies (for females only)
– Rules results can be integrated in any system
19
• We wouldn't build any of those without
– open specifications
– open source reference implementations (Java, Ruby, .Net, Python)
– awesome community!
• Thanks to that, we have:
– very flexible and generic software,
– maintainable without changing source code or database schemas,
– standardized clinical data,
– consistent ways of querying and share clinical data
– bindings to standard terminologies (SNOMED CT, ICD-10, CIAP-2, LOINC, ...)
– compatible with technical data transfer standards (HL7 v2.x, HL7 v3, CDA, FHIR,
DICOM, ...)
• Our software is all open source, main application (today) is training.
– Please join our projects to help us build the Open EHR Platform!
Conclusion
20
Muito Obrigado
pablo.pazos@cabolabs.com
@ppazos
github.com/ppazos

More Related Content

What's hot

EHRGen demo presentation
EHRGen demo presentationEHRGen demo presentation
EHRGen demo presentation
Pablo Pazos
 
Wrangling RedCap_An Introduction and Inspiration
Wrangling RedCap_An Introduction and InspirationWrangling RedCap_An Introduction and Inspiration
Wrangling RedCap_An Introduction and Inspiration
Jacqueline Stern
 
Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016
OSTHUS
 
Ten Step Malady Fix Rev E
Ten Step Malady Fix Rev ETen Step Malady Fix Rev E
Ten Step Malady Fix Rev E
David Rae
 

What's hot (20)

Why ICT Fails in Healthcare: Software Maintenance and Maintainability
Why ICT Fails in Healthcare: Software Maintenance and MaintainabilityWhy ICT Fails in Healthcare: Software Maintenance and Maintainability
Why ICT Fails in Healthcare: Software Maintenance and Maintainability
 
EHRGen demo presentation
EHRGen demo presentationEHRGen demo presentation
EHRGen demo presentation
 
Linkages to EHRs and Related Standards. What can we learn from the Parallel U...
Linkages to EHRs and Related Standards. What can we learn from the Parallel U...Linkages to EHRs and Related Standards. What can we learn from the Parallel U...
Linkages to EHRs and Related Standards. What can we learn from the Parallel U...
 
Brisbane Health-y Data: RedCap
Brisbane Health-y Data: RedCapBrisbane Health-y Data: RedCap
Brisbane Health-y Data: RedCap
 
Archetype-based data transformation with LinkEHR
Archetype-based data transformation with LinkEHRArchetype-based data transformation with LinkEHR
Archetype-based data transformation with LinkEHR
 
Ehr models, standards and semantic interoperability
Ehr models, standards and semantic interoperabilityEhr models, standards and semantic interoperability
Ehr models, standards and semantic interoperability
 
What is FHIR
What is FHIRWhat is FHIR
What is FHIR
 
Aehin 2016 backup
Aehin 2016 backupAehin 2016 backup
Aehin 2016 backup
 
Discover Introduction to REDCap
Discover Introduction to REDCapDiscover Introduction to REDCap
Discover Introduction to REDCap
 
Introduction to using REDCap for multi-site longitudinal research in medicine
Introduction to using REDCap for multi-site longitudinal research in medicineIntroduction to using REDCap for multi-site longitudinal research in medicine
Introduction to using REDCap for multi-site longitudinal research in medicine
 
Wrangling RedCap_An Introduction and Inspiration
Wrangling RedCap_An Introduction and InspirationWrangling RedCap_An Introduction and Inspiration
Wrangling RedCap_An Introduction and Inspiration
 
Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016
 
Snow Owl Platform. Unlocking the meaning from healthcare data.
Snow Owl Platform. Unlocking the meaning from healthcare data. Snow Owl Platform. Unlocking the meaning from healthcare data.
Snow Owl Platform. Unlocking the meaning from healthcare data.
 
Ten Step Malady Fix Rev E
Ten Step Malady Fix Rev ETen Step Malady Fix Rev E
Ten Step Malady Fix Rev E
 
Allotrope Foundation & OSTHUS at SmartLab Exchange 2015: Update on the Allotr...
Allotrope Foundation & OSTHUS at SmartLab Exchange 2015: Update on the Allotr...Allotrope Foundation & OSTHUS at SmartLab Exchange 2015: Update on the Allotr...
Allotrope Foundation & OSTHUS at SmartLab Exchange 2015: Update on the Allotr...
 
Labmatrix
LabmatrixLabmatrix
Labmatrix
 
OSTHUS-Allotrope presents "Laboratory Informatics Strategy" at SmartLab 2015
OSTHUS-Allotrope presents "Laboratory Informatics Strategy" at SmartLab 2015OSTHUS-Allotrope presents "Laboratory Informatics Strategy" at SmartLab 2015
OSTHUS-Allotrope presents "Laboratory Informatics Strategy" at SmartLab 2015
 
Gaining credit for sharing research data: Viewpoints on Data Publishing
Gaining credit for sharing research data: Viewpoints on Data PublishingGaining credit for sharing research data: Viewpoints on Data Publishing
Gaining credit for sharing research data: Viewpoints on Data Publishing
 
ICIC 2014 New Product Introduction Wiley
ICIC 2014 New Product Introduction WileyICIC 2014 New Product Introduction Wiley
ICIC 2014 New Product Introduction Wiley
 
2012 User's Conference Indivo Updates
2012 User's Conference Indivo Updates2012 User's Conference Indivo Updates
2012 User's Conference Indivo Updates
 

Viewers also liked

Configuring a Secure, Multitenant Cluster for the Enterprise
Configuring a Secure, Multitenant Cluster for the EnterpriseConfiguring a Secure, Multitenant Cluster for the Enterprise
Configuring a Secure, Multitenant Cluster for the Enterprise
Cloudera, Inc.
 

Viewers also liked (20)

Temperatura superficial del mar del perú 01.02.16
Temperatura superficial del mar del perú 01.02.16Temperatura superficial del mar del perú 01.02.16
Temperatura superficial del mar del perú 01.02.16
 
Build Features, Not Apps
Build Features, Not AppsBuild Features, Not Apps
Build Features, Not Apps
 
Alkoholijuomien matkustajatuonti ennätyskorkealla - syy veropolitiikassa
Alkoholijuomien matkustajatuonti ennätyskorkealla - syy veropolitiikassaAlkoholijuomien matkustajatuonti ennätyskorkealla - syy veropolitiikassa
Alkoholijuomien matkustajatuonti ennätyskorkealla - syy veropolitiikassa
 
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
uroboroSQLの紹介 (OSC2017 Tokyo/Spring)
 
Top 5 Deep Learning and AI Stories 3/9
Top 5 Deep Learning and AI Stories 3/9Top 5 Deep Learning and AI Stories 3/9
Top 5 Deep Learning and AI Stories 3/9
 
色彩センスのいらない配色講座
色彩センスのいらない配色講座色彩センスのいらない配色講座
色彩センスのいらない配色講座
 
Infographic: Medicare Marketing: Direct Mail: Still The #1 Influencer For Tho...
Infographic: Medicare Marketing: Direct Mail: Still The #1 Influencer For Tho...Infographic: Medicare Marketing: Direct Mail: Still The #1 Influencer For Tho...
Infographic: Medicare Marketing: Direct Mail: Still The #1 Influencer For Tho...
 
Design in Tech Report 2017
Design in Tech Report 2017Design in Tech Report 2017
Design in Tech Report 2017
 
Culture
CultureCulture
Culture
 
openEHR: aspectos de interoperabilidad y mantenibilidad
openEHR: aspectos de interoperabilidad y mantenibilidadopenEHR: aspectos de interoperabilidad y mantenibilidad
openEHR: aspectos de interoperabilidad y mantenibilidad
 
Pentaho BigDataParis_session_20170306
Pentaho BigDataParis_session_20170306Pentaho BigDataParis_session_20170306
Pentaho BigDataParis_session_20170306
 
Un 2016 da record per l’interscambio economico tra Italia e Germania
Un 2016 da record per l’interscambio economico tra Italia e GermaniaUn 2016 da record per l’interscambio economico tra Italia e Germania
Un 2016 da record per l’interscambio economico tra Italia e Germania
 
Cashgate Scandal Malawi: Different Types Of Fashion Styles
Cashgate Scandal Malawi: Different Types Of Fashion StylesCashgate Scandal Malawi: Different Types Of Fashion Styles
Cashgate Scandal Malawi: Different Types Of Fashion Styles
 
Controlling Technical Debt with Continuous Delivery
Controlling Technical Debt with Continuous DeliveryControlling Technical Debt with Continuous Delivery
Controlling Technical Debt with Continuous Delivery
 
ACCIONA Reports 65
ACCIONA Reports 65ACCIONA Reports 65
ACCIONA Reports 65
 
How i became a data scientist
How i became a data scientistHow i became a data scientist
How i became a data scientist
 
Configuring a Secure, Multitenant Cluster for the Enterprise
Configuring a Secure, Multitenant Cluster for the EnterpriseConfiguring a Secure, Multitenant Cluster for the Enterprise
Configuring a Secure, Multitenant Cluster for the Enterprise
 
IPv6セキュリティ はじめの一歩
IPv6セキュリティ はじめの一歩IPv6セキュリティ はじめの一歩
IPv6セキュリティ はじめの一歩
 
研究発表を準備する
研究発表を準備する研究発表を準備する
研究発表を準備する
 
what3words brochure
what3words brochurewhat3words brochure
what3words brochure
 

Similar to openEHR Developers Workshop at #MedInfo2015

OHDSI CDM Presentation
OHDSI CDM PresentationOHDSI CDM Presentation
OHDSI CDM Presentation
Amritansh .
 
E-Utilities
E-UtilitiesE-Utilities
E-Utilities
mkim8
 
Standardised and Flexible Health Data Management with an Archetype Driven EHR...
Standardised and Flexible Health Data Management with an Archetype Driven EHR...Standardised and Flexible Health Data Management with an Archetype Driven EHR...
Standardised and Flexible Health Data Management with an Archetype Driven EHR...
David Moner Cano
 
Automating the process of continuously prioritising data, updating and deploy...
Automating the process of continuously prioritising data, updating and deploy...Automating the process of continuously prioritising data, updating and deploy...
Automating the process of continuously prioritising data, updating and deploy...
Ola Spjuth
 
The Logical Model Designer - Binding Information Models to Terminology
The Logical Model Designer - Binding Information Models to TerminologyThe Logical Model Designer - Binding Information Models to Terminology
The Logical Model Designer - Binding Information Models to Terminology
Snow Owl
 
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
CTSI at UCSF
 
API-Testing-SOAPUI-1.pptx
API-Testing-SOAPUI-1.pptxAPI-Testing-SOAPUI-1.pptx
API-Testing-SOAPUI-1.pptx
amarnathdeo
 

Similar to openEHR Developers Workshop at #MedInfo2015 (20)

FHIR intro and background at HL7 Germany 2014
FHIR intro and background at HL7 Germany 2014FHIR intro and background at HL7 Germany 2014
FHIR intro and background at HL7 Germany 2014
 
openEHR Medinfo2015 Brazil Sponsor Session
openEHR Medinfo2015 Brazil Sponsor SessionopenEHR Medinfo2015 Brazil Sponsor Session
openEHR Medinfo2015 Brazil Sponsor Session
 
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
 
Labmatrix
LabmatrixLabmatrix
Labmatrix
 
Time for an open standards platform?
Time for an open standards platform?Time for an open standards platform?
Time for an open standards platform?
 
OHDSI CDM Presentation
OHDSI CDM PresentationOHDSI CDM Presentation
OHDSI CDM Presentation
 
E-Utilities
E-UtilitiesE-Utilities
E-Utilities
 
NCBI API - Integration into analysis code
NCBI API - Integration into analysis codeNCBI API - Integration into analysis code
NCBI API - Integration into analysis code
 
Standardised and Flexible Health Data Management with an Archetype Driven EHR...
Standardised and Flexible Health Data Management with an Archetype Driven EHR...Standardised and Flexible Health Data Management with an Archetype Driven EHR...
Standardised and Flexible Health Data Management with an Archetype Driven EHR...
 
2014-06-03-Taverna-IS-ENES2
2014-06-03-Taverna-IS-ENES22014-06-03-Taverna-IS-ENES2
2014-06-03-Taverna-IS-ENES2
 
Enterprise Data Classification and Provenance
Enterprise Data Classification and ProvenanceEnterprise Data Classification and Provenance
Enterprise Data Classification and Provenance
 
Anand Iyer
Anand IyerAnand Iyer
Anand Iyer
 
CREST Overview
CREST OverviewCREST Overview
CREST Overview
 
Automating the process of continuously prioritising data, updating and deploy...
Automating the process of continuously prioritising data, updating and deploy...Automating the process of continuously prioritising data, updating and deploy...
Automating the process of continuously prioritising data, updating and deploy...
 
Enabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse EnvironmentsEnabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse Environments
 
Enabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse EnvironmentsEnabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse Environments
 
The Logical Model Designer - Binding Information Models to Terminology
The Logical Model Designer - Binding Information Models to TerminologyThe Logical Model Designer - Binding Information Models to Terminology
The Logical Model Designer - Binding Information Models to Terminology
 
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
 
Metagenomic Data Provenance and Management using the ISA infrastructure --- o...
Metagenomic Data Provenance and Management using the ISA infrastructure --- o...Metagenomic Data Provenance and Management using the ISA infrastructure --- o...
Metagenomic Data Provenance and Management using the ISA infrastructure --- o...
 
API-Testing-SOAPUI-1.pptx
API-Testing-SOAPUI-1.pptxAPI-Testing-SOAPUI-1.pptx
API-Testing-SOAPUI-1.pptx
 

More from Pablo Pazos

Taller de Modelado Clínico con openEHR - HIBA 2013
Taller de Modelado Clínico con openEHR - HIBA 2013Taller de Modelado Clínico con openEHR - HIBA 2013
Taller de Modelado Clínico con openEHR - HIBA 2013
Pablo Pazos
 
Introducción a openEHR para clinicos 2013
Introducción a openEHR para clinicos 2013Introducción a openEHR para clinicos 2013
Introducción a openEHR para clinicos 2013
Pablo Pazos
 

More from Pablo Pazos (20)

Microservicios y plataformas abiertas en salud - JIAP 2018
Microservicios y plataformas abiertas en salud - JIAP 2018Microservicios y plataformas abiertas en salud - JIAP 2018
Microservicios y plataformas abiertas en salud - JIAP 2018
 
Apoyo a la toma de decisiones clínicas con openEHR y SNOMED CT - casos de uso...
Apoyo a la toma de decisiones clínicas con openEHR y SNOMED CT - casos de uso...Apoyo a la toma de decisiones clínicas con openEHR y SNOMED CT - casos de uso...
Apoyo a la toma de decisiones clínicas con openEHR y SNOMED CT - casos de uso...
 
openEHR presentacion informativa 2017
openEHR presentacion informativa 2017openEHR presentacion informativa 2017
openEHR presentacion informativa 2017
 
CaboLabs - Workshop de interoperabilidad usando estándares
CaboLabs - Workshop de interoperabilidad usando estándaresCaboLabs - Workshop de interoperabilidad usando estándares
CaboLabs - Workshop de interoperabilidad usando estándares
 
CaboLabs - Estándares e interoperabilidad en informática en salud
CaboLabs - Estándares e interoperabilidad en informática en saludCaboLabs - Estándares e interoperabilidad en informática en salud
CaboLabs - Estándares e interoperabilidad en informática en salud
 
CaboLabs - Proyectos de informatica en salud
CaboLabs - Proyectos de informatica en saludCaboLabs - Proyectos de informatica en salud
CaboLabs - Proyectos de informatica en salud
 
EHRServer - Plataforma Abierta para Gestionar y Compartir Datos Clínicos Esta...
EHRServer - Plataforma Abierta para Gestionar y Compartir Datos Clínicos Esta...EHRServer - Plataforma Abierta para Gestionar y Compartir Datos Clínicos Esta...
EHRServer - Plataforma Abierta para Gestionar y Compartir Datos Clínicos Esta...
 
Presentación del Taller de Interoperabilidad con Mirth Connect y HL7
Presentación del Taller de Interoperabilidad con Mirth Connect y HL7Presentación del Taller de Interoperabilidad con Mirth Connect y HL7
Presentación del Taller de Interoperabilidad con Mirth Connect y HL7
 
Presentacion del programa de formacion profesional de Informática en Salud, E...
Presentacion del programa de formacion profesional de Informática en Salud, E...Presentacion del programa de formacion profesional de Informática en Salud, E...
Presentacion del programa de formacion profesional de Informática en Salud, E...
 
Generación automática de interfaces de usuario para sistemas de información c...
Generación automática de interfaces de usuario para sistemas de información c...Generación automática de interfaces de usuario para sistemas de información c...
Generación automática de interfaces de usuario para sistemas de información c...
 
Presentacion InfoLac 2014 - generacion de interfaz de usuario para sistemas d...
Presentacion InfoLac 2014 - generacion de interfaz de usuario para sistemas d...Presentacion InfoLac 2014 - generacion de interfaz de usuario para sistemas d...
Presentacion InfoLac 2014 - generacion de interfaz de usuario para sistemas d...
 
Taller de Modelado Clínico con openEHR - HIBA 2013
Taller de Modelado Clínico con openEHR - HIBA 2013Taller de Modelado Clínico con openEHR - HIBA 2013
Taller de Modelado Clínico con openEHR - HIBA 2013
 
Taller de implementación de openEHR - HIBA 2013
Taller de implementación de openEHR - HIBA 2013Taller de implementación de openEHR - HIBA 2013
Taller de implementación de openEHR - HIBA 2013
 
CaboLabs: expertos en informática médica, estándares e interoperabilidad
CaboLabs: expertos en informática médica, estándares e interoperabilidadCaboLabs: expertos en informática médica, estándares e interoperabilidad
CaboLabs: expertos en informática médica, estándares e interoperabilidad
 
Pablo Pazos Curriculum Vitae 2013-05-17
Pablo Pazos Curriculum Vitae 2013-05-17Pablo Pazos Curriculum Vitae 2013-05-17
Pablo Pazos Curriculum Vitae 2013-05-17
 
Desarrollo profesional en Tecnologias de la Información desde Uruguay
Desarrollo profesional en Tecnologias de la Información desde UruguayDesarrollo profesional en Tecnologias de la Información desde Uruguay
Desarrollo profesional en Tecnologias de la Información desde Uruguay
 
Introducción a openEHR para clinicos 2013
Introducción a openEHR para clinicos 2013Introducción a openEHR para clinicos 2013
Introducción a openEHR para clinicos 2013
 
openEHR ¿para qué sirve? HIBA2012
openEHR ¿para qué sirve? HIBA2012openEHR ¿para qué sirve? HIBA2012
openEHR ¿para qué sirve? HIBA2012
 
XRE demo presentation
XRE demo presentationXRE demo presentation
XRE demo presentation
 
openEHR terminology binding
openEHR terminology bindingopenEHR terminology binding
openEHR terminology binding
 

Recently uploaded

VIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near Me
VIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near MeVIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near Me
VIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near Me
mriyagarg453
 
Ernakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Ernakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetErnakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Ernakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Chandigarh
 
Bareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Bareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetBareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Bareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Service
 
Call Girls Service In Goa 💋 9316020077💋 Goa Call Girls By Russian Call Girl...
Call Girls Service In Goa  💋 9316020077💋 Goa Call Girls  By Russian Call Girl...Call Girls Service In Goa  💋 9316020077💋 Goa Call Girls  By Russian Call Girl...
Call Girls Service In Goa 💋 9316020077💋 Goa Call Girls By Russian Call Girl...
russian goa call girl and escorts service
 
Thrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Thrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetThrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Thrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Service
 
nagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
nagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meetnagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
nagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Service
 
Patna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Patna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetPatna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Patna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Service
 
ooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
ooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meetooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
ooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Service
 
Muzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Muzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetMuzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Muzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Service
 
Russian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near Me
Russian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near MeRussian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near Me
Russian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near Me
mriyagarg453
 
Tirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Tirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetTirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Tirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Call Girls Service
 
VIP Call Girls Noida Sia 9711199171 High Class Call Girl Near Me
VIP Call Girls Noida Sia 9711199171 High Class Call Girl Near MeVIP Call Girls Noida Sia 9711199171 High Class Call Girl Near Me
VIP Call Girls Noida Sia 9711199171 High Class Call Girl Near Me
mriyagarg453
 
💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh
💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh
💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh
Sheetaleventcompany
 
9316020077📞Goa Call Girls Numbers, Call Girls Whatsapp Numbers Goa
9316020077📞Goa  Call Girls  Numbers, Call Girls  Whatsapp Numbers Goa9316020077📞Goa  Call Girls  Numbers, Call Girls  Whatsapp Numbers Goa
9316020077📞Goa Call Girls Numbers, Call Girls Whatsapp Numbers Goa
russian goa call girl and escorts service
 

Recently uploaded (20)

VIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near Me
VIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near MeVIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near Me
VIP Call Girls Noida Jhanvi 9711199171 Best VIP Call Girls Near Me
 
Kolkata Call Girls Miss Inaaya ❤️ at @30% discount Everyday Call girl
Kolkata Call Girls Miss Inaaya ❤️ at @30% discount Everyday Call girlKolkata Call Girls Miss Inaaya ❤️ at @30% discount Everyday Call girl
Kolkata Call Girls Miss Inaaya ❤️ at @30% discount Everyday Call girl
 
Krishnagiri call girls Tamil aunty 7877702510
Krishnagiri call girls Tamil aunty 7877702510Krishnagiri call girls Tamil aunty 7877702510
Krishnagiri call girls Tamil aunty 7877702510
 
Ernakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Ernakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetErnakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Ernakulam Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
Independent Call Girls Hyderabad 💋 9352988975 💋 Genuine WhatsApp Number for R...
Independent Call Girls Hyderabad 💋 9352988975 💋 Genuine WhatsApp Number for R...Independent Call Girls Hyderabad 💋 9352988975 💋 Genuine WhatsApp Number for R...
Independent Call Girls Hyderabad 💋 9352988975 💋 Genuine WhatsApp Number for R...
 
Bareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Bareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetBareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Bareilly Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
Call Girls Service In Goa 💋 9316020077💋 Goa Call Girls By Russian Call Girl...
Call Girls Service In Goa  💋 9316020077💋 Goa Call Girls  By Russian Call Girl...Call Girls Service In Goa  💋 9316020077💋 Goa Call Girls  By Russian Call Girl...
Call Girls Service In Goa 💋 9316020077💋 Goa Call Girls By Russian Call Girl...
 
Thrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Thrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetThrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Thrissur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
Call Girl Gorakhpur * 8250192130 Service starts from just ₹9999 ✅
Call Girl Gorakhpur * 8250192130 Service starts from just ₹9999 ✅Call Girl Gorakhpur * 8250192130 Service starts from just ₹9999 ✅
Call Girl Gorakhpur * 8250192130 Service starts from just ₹9999 ✅
 
nagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
nagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meetnagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
nagpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
Patna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Patna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetPatna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Patna Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
ooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
ooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meetooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
ooty Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
Kochi call girls Mallu escort girls available 7877702510
Kochi call girls Mallu escort girls available 7877702510Kochi call girls Mallu escort girls available 7877702510
Kochi call girls Mallu escort girls available 7877702510
 
Muzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Muzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetMuzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Muzaffarpur Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
Russian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near Me
Russian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near MeRussian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near Me
Russian Call Girls in Noida Pallavi 9711199171 High Class Call Girl Near Me
 
Tirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Tirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real MeetTirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
Tirupati Call Girls 👙 6297143586 👙 Genuine WhatsApp Number for Real Meet
 
VIP Call Girls Noida Sia 9711199171 High Class Call Girl Near Me
VIP Call Girls Noida Sia 9711199171 High Class Call Girl Near MeVIP Call Girls Noida Sia 9711199171 High Class Call Girl Near Me
VIP Call Girls Noida Sia 9711199171 High Class Call Girl Near Me
 
💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh
💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh
💚 Punjabi Call Girls In Chandigarh 💯Lucky 🔝8868886958🔝Call Girl In Chandigarh
 
9316020077📞Goa Call Girls Numbers, Call Girls Whatsapp Numbers Goa
9316020077📞Goa  Call Girls  Numbers, Call Girls  Whatsapp Numbers Goa9316020077📞Goa  Call Girls  Numbers, Call Girls  Whatsapp Numbers Goa
9316020077📞Goa Call Girls Numbers, Call Girls Whatsapp Numbers Goa
 
Russian Call Girls Kota * 8250192130 Service starts from just ₹9999 ✅
Russian Call Girls Kota * 8250192130 Service starts from just ₹9999 ✅Russian Call Girls Kota * 8250192130 Service starts from just ₹9999 ✅
Russian Call Girls Kota * 8250192130 Service starts from just ₹9999 ✅
 

openEHR Developers Workshop at #MedInfo2015

  • 1. 1 The openEHR Developers workshop Pablo Pazos Gutiérrez pablo.pazos@cabolabs.com Experiences on developing software with openEHR
  • 2. 2 We've worked on interesting topics • Clinical Databases / Clinical Data Repositories • Web Services / REST APIs • GUI Auto-generation • Rules for Clinical Decision Support • An Open EHR Platform (combination of ^) • Open Source Software • All based on
  • 3. 3 Open EHR Platform reusing components and services to build you own apps and systems
  • 4. 4 EHRServer Service-oriented clinical data repository for shared EHRs, based on the openEHR standard.
  • 5. 5 EHRServer • Services – commit • feed data to the EHR of a patient • openEHR XML documents • validates against the openEHR XSD • versioned data (no physical delete or modification of data) – query • clinical documents by complex criteria • data points with different groupings – sync (TBD) • scaling EHRServers • enable high availability – other • get patients, ehrs, clinical documents, queries, ...
  • 6. 6 EHRServer • Features – REST API (SOAP will be enabled soon) – Multi-format query results (XML, JSON, need more?) – Versioned data – EHR audit • All modifications of an EHR are recorded • Who, when, what, from where, ... – Admin GUI • Query building and testing (archetype-based queries) • EHR Audit • Organization of clinical records in folders • Adding templates – Adds support for new clinical records – Without changing source code or database schema
  • 7. 7 EHRServer • Technologies – Java / Groovy – Grails Framework – MySQL (can be replaced) • Out of scope – No GUI for clinical records (that's on client apps) • Open Source – EHRServer • https://github.com/ppazos/cabolabs-ehrserver – Sample client apps • https://github.com/ppazos/cabolabs-emrapp • https://github.com/ppazos/EHRCommitter • https://github.com/ppazos/EHRClientPHP – Javascript connector • https://github.com/ppazos/cabolabs-ehrserver-js
  • 12. 12 EHRGen • Features – Load archetypes and UI templates (T) with references to archetypes – Associate (T) with workflows (WF)  – UIs are auto-generated from (T) – Menus are auto-generated from (WF) – Data validation using archetypes – Generic data storage (any openEHR data structure) – No need to change the source code or database schema to add more types of clinical records • just add archetypes and UI templates • EHRGen will do the rest :D • TODO: – Use Operational Templates (OPT) instead of archetypes – Commit data to the EHRServer • Test it: – http://ehrgen-ehrserver.rhcloud.com/ehrgen-1.4-0.8b3
  • 14. 14 UI Generation / Current Work • Generalization to generate UIs for any technology / device – ... that has a declarative UI language / syntax • Generic UI Template Model – References openEHR archetypes / operational templates – XML expression of UI Template • UI Generator maps UI Templates to declarative UIs in any technology – XAML, SwiXML, HTML5, XHTML, Android XML Layouts, ... – Using mappings from the canonical UI Template to each declarative UI syntax • Use cases: – accelerate openEHR app development – fast prototyping and user validation • Soon: – full spec on for openEHR UI Templates
  • 15. 15 UI Template Model (simplified) organization of sections in the screen references to openEHR archetypes / templates view = screen / form form controls (fields) and labels on screen for archetype nodes
  • 16. 16 XML Rule Engine Rules and Clinical Decision Support: (re)using clinical data to help clinicians
  • 17. 17 XML Rule Engine for CDS • Requirement: – Women should have a PAP test once a year. • Rule: – If last PAP test of a patient was done more than a year ago, then send an alert. • Clinical information (tests) can be pulled from different systems – EHRServer using semantic queries (path-based). – Different data sources can be combined in the same rule. • Rule is evaluated using a REST Web Service – patient id is an input parameter <xrl:unit xmlns:xrl="http://openehr.org.es/rules"> <header> <id>gine_alerts.v1</id> </header> <rules> <rule> <id>pap_test_alert.v1</id> <name>alerta para recordatorio de test de papanicolaou</name> <definitions> <var name="last_pap_test_date" type="date"> <resolutor type="http"> <locator url="http://localhost/gine_tests.xml" /> <extractor path="tests.test.time" /> <aggregator type="last" /> <param name="patient_id" /> </resolutor> </var> <var name="ret_alert" value="alert" type="string" /> <var name="ret_ok" value="ok" type="string" /> <var name="days_from_last_pap" type="integer"> <resolutor type="action"> <action type="dateDiff" in1="last_pap_test_date" in2="$now" units="days" /> </resolutor> </var> </definitions> <logic> <if> <gt in1="days_from_last_pap" inc2="365" /> <do> <action type="..." params="..."></action> <return name="last_pap_test_date" /> <return name="days_from_last_pap" /> <return name="ret_alert" /> </do> </if> <else> <do><return name="ret_ok" /></do> </else> </logic> </rule> </rules> </xrl:unit>
  • 18. 18 XML Rule Engine for CDS • Results on screen: – For each patient – Alerts showing the result of evaluating the pap rule – Can add a sex check in the rule to see if the rule applies (for females only) – Rules results can be integrated in any system
  • 19. 19 • We wouldn't build any of those without – open specifications – open source reference implementations (Java, Ruby, .Net, Python) – awesome community! • Thanks to that, we have: – very flexible and generic software, – maintainable without changing source code or database schemas, – standardized clinical data, – consistent ways of querying and share clinical data – bindings to standard terminologies (SNOMED CT, ICD-10, CIAP-2, LOINC, ...) – compatible with technical data transfer standards (HL7 v2.x, HL7 v3, CDA, FHIR, DICOM, ...) • Our software is all open source, main application (today) is training. – Please join our projects to help us build the Open EHR Platform! Conclusion

Editor's Notes

  1. Idea to create this open platform where everyone can use to create their own app or system.
  2. get full clinical documents or data points choose semantic identifiers to define criteria or projections for criteria, define the logic operator save and execute! test UI or from the REST API