OpenCDS: servizi open source di supporto alle decisioni cliniche

OpenCDS avviato nel 2010 dall'Università dello Utah e dal VA, l'architettura come servizio web HL7 DSS, il modello dati HL7 vMR, l'uso di Drools come motore di regole, e il confronto con Arden Syntax e GELLO.

Digital HealthR&DOpen Source OpenCDSHL7 DSSvMRCDSClinical Decision SupportDroolsVAOpen SourceDigital Health

Dal linguaggio al servizio

Arden Syntax e GELLO sono linguaggi di rappresentazione della conoscenza clinica. Drools è un motore di regole general-purpose. Per l’uso operativo in un ospedale reale serve qualcosa di più: un servizio — un sistema autocontenuto, interrogabile su rete, che riceve un paziente come input e restituisce raccomandazioni cliniche strutturate — sostenuto da un’architettura di riferimento condivisa.

OpenCDS (Open Clinical Decision Support) è nato per coprire questa esigenza. Il progetto è stato avviato nel 2010 da un consorzio guidato dall’Università dello Utah — in particolare da Ken Kawamoto, figura centrale nel lavoro HL7 sulle specifiche CDS — con il coinvolgimento di US Veterans Affairs, Partners HealthCare, University of Maryland e altri partner accademici e governativi. La prima release pubblica è del 2011; la release attualmente disponibile, OpenCDS 1.0.x, consolida l’architettura.

Il progetto è distribuito con licenza Apache 2.0, ed è strutturato come implementazione di riferimento di un insieme di standard HL7 in fase di maturazione negli stessi anni.

Gli standard HL7 di riferimento

OpenCDS implementa e mette in pratica tre specifiche HL7 che definiscono l’architettura dei servizi CDS:

HL7 vMR — virtual Medical Record

Il vMR è un modello informativo standardizzato per rappresentare il contesto clinico di un paziente come input di un servizio CDS. Specifica in HL7 v3, definisce come serializzare — in XML — l’anagrafica paziente, i problemi attivi, i farmaci in uso, gli eventi clinici, i risultati di laboratorio, le procedure passate. L’obiettivo è disaccoppiare il servizio di CDS dai formati interni della cartella cliente: il servizio parla sempre vMR, qualunque sia la cartella che lo chiama.

HL7 DSS — Decision Support Service

La specifica DSS (Decision Support Service) definisce l’interfaccia di chiamata dei servizi CDS come web service. Un client — tipicamente una cartella elettronica — invoca il servizio passando:

  • Identificatori del paziente (o il vMR completo)
  • Identificatore del knowledge module richiesto (es. un modulo per vaccinazioni pediatriche, per farmacovigilanza, per screening oncologico)
  • Contesto della richiesta

Il servizio restituisce:

  • Raccomandazioni cliniche strutturate (messaggi, azioni suggerite, ordini proposti)
  • Spiegazioni del razionale
  • Livelli di urgenza
  • Riferimenti alle linee guida sottostanti

DSS è specificato come Web Service SOAP — lo standard di interoperabilità enterprise dell’epoca — con intenzione di includere anche REST nelle evoluzioni successive.

Health eDecisions (HeD)

Il progetto HeD è un’iniziativa statunitense del 2012 — finanziata dall’Office of the National Coordinator for Health IT (ONC) — per standardizzare il formato dei knowledge artifacts CDS condivisibili tra organizzazioni. L’output principale atteso è un Knowledge Artifact Schema XML che incapsula regole, linee guida e documentazione in un unico documento strutturato. OpenCDS è uno dei veicoli di implementazione di HeD.

Architettura di OpenCDS

OpenCDS è un’applicazione Java enterprise con alcuni componenti chiave:

  • Endpoint DSS — web service SOAP che riceve chiamate da cartelle cliniche
  • Engine di esecuzione — basato su Drools, con le regole cliniche espresse come file DRL o come Decision Tables Excel
  • Data layer — pipeline che trasforma il vMR in arrivo in fatti Drools da iniettare nella working memory
  • Knowledge repository — struttura di directory con i knowledge artifacts e i loro metadati
  • Output layer — costruisce la risposta DSS a partire dalle conclusioni generate dalle regole

Il modello di deployment è tipicamente: installazione on-premise dell’OpenCDS server presso un’istituzione sanitaria (ospedale, provider di servizi CDS-as-a-Service, VA), con integrazione con una o più cartelle cliniche via web service.

Knowledge modules disponibili

La libreria di knowledge modules distribuita con OpenCDS 1.x include esempi di riferimento nelle aree:

  • Immunizations — schedule vaccinali pediatriche e adulti secondo le linee guida ACIP (Advisory Committee on Immunization Practices) del CDC
  • Adult preventive care — reminder per screening (mammografia, colonscopia, Pap test, vaccinazione antinfluenzale)
  • Drug management — controlli di dose, interazioni, duplicazioni terapeutiche
  • Pediatric growth — percentili di crescita con allerta su outlier
  • BMI calculator — calcolo e classificazione BMI con raccomandazioni

Questi moduli sono esempi didattici e di partenza, non necessariamente pronti per la produzione clinica senza adattamento al contesto specifico dell’organizzazione adottante.

Integrazione con cartelle

L’integrazione con una cartella elettronica reale è lo snodo operativo più importante:

  • La cartella deve produrre un vMR a partire dai propri dati strutturati (diagnosi, farmaci, laboratorio, anagrafica)
  • La cartella deve invocare OpenCDS con una chiamata web service
  • La cartella deve consumare la risposta presentando all’utente le raccomandazioni nel contesto corretto del flusso clinico

Il tempo di round-trip tipico è sub-secondo per knowledge module di medie dimensioni, compatibile con l’interattività di cartella.

Alcune cartelle open source (OpenMRS, OpenEMR) hanno prototipato integrazioni con OpenCDS; le cartelle commerciali americane (Epic, Cerner, Allscripts) hanno proprie soluzioni interne ma alcune esplorano l’integrazione con servizi OpenCDS esterni per specifici domini.

Il VA come sponsor e utilizzatore

Il ruolo del Department of Veterans Affairs statunitense è particolarmente importante. Il VA gestisce un sistema sanitario capillare con oltre 150 centri ospedalieri e milioni di pazienti; la sua cartella (VistA) è open source e ha storiche funzionalità CDS interne. L’investimento del VA in OpenCDS riflette una strategia di modernizzazione: portare la logica CDS in un layer esterno standardizzato, indipendente dalla cartella, riutilizzabile anche in contesti non-VistA.

L’Intermountain Healthcare — altro centro americano con tradizione di CDS avanzato, storico utilizzatore di Arden Syntax — sta valutando OpenCDS come piattaforma di convergenza.

Confronto con alternative

OpenCDS non è l’unico servizio CDS open source:

  • Arden2ByteCode e altri tool Arden sono specifici per MLMs, senza l’infrastruttura di web service completa
  • GLIF implementations (GuideLineExec di Stanford, interpreti PROforma/Tallis di Oxford) sono più accademici e orientati all’authoring di linee guida complete
  • Motori proprietari dei vendor EHR (Epic Cogito, Cerner HealtheIntent) offrono CDS integrato ma chiuso
  • Zynx Health e First Databank forniscono contenuti CDS curati commercialmente, spesso integrati in vari EHR

OpenCDS si distingue per:

  • Licenza Apache 2.0 veramente libera
  • Standardizzazione HL7 (vMR + DSS)
  • Modularità — knowledge module separati dal motore
  • Interoperabilità — qualunque cartella può integrarsi via web service standard

Limiti al 2012

OpenCDS è un progetto giovane con limiti riconosciuti:

  • Library di knowledge modules limitata — pochi moduli pronti, la maggior parte del valore va costruita dagli adottanti
  • Authoring complesso — scrivere knowledge module in Drools DRL richiede competenze di programmazione; strumenti di authoring visuale per clinici sono ancora primitivi
  • Curation della conoscenza — il ciclo di vita di un artefatto CDS (creazione, validazione clinica, versionamento, pubblicazione, manutenzione in base a evidenza aggiornata) richiede processi organizzativi ancora immaturi
  • Adozione ristretta — OpenCDS al 2012 è in uso in alcuni centri sperimentali negli USA, con prima esposizione internazionale ai gruppi HL7
  • Integrazione con cartelle commerciali — la dipendenza da vMR come formato richiede adapter non banali; nelle cartelle chiuse il cambiamento è lento

Il contesto italiano

In Italia l’adozione di OpenCDS al 2012 è limitata a qualche progetto di ricerca. Gli ostacoli sono quelli comuni al CDS standardizzato in generale:

  • Cartelle cliniche italiane senza API di integrazione standardizzata (HL7 v3 vMR non è comune)
  • Mancanza di knowledge modules italiani clinicamente validati e regolarmente aggiornati
  • Assenza di un investimento istituzionale simile a quello del VA americano
  • Priorità del programma FSE sulla parte documentale rispetto al CDS attivo

Il tema è dibattuto nei working group HL7 Italia e in alcune facoltà di medicina. La possibilità di partecipare al progetto OpenCDS portando moduli clinici italiani — sulla base di linee guida italiane (AIFA per farmaci, ministeriali per screening) — è un’opportunità aperta ma non ancora colta strutturalmente.

Prospettive

Le direzioni evolutive di OpenCDS nei prossimi anni includeranno:

  • Ingresso dei formati emergenti — il lavoro HL7 su FHIR, in fase iniziale al 2012, creerà nei prossimi anni un’alternativa a vMR. OpenCDS dovrà supportare entrambi
  • Autoring tool per clinici — strumenti di composizione visuale di knowledge artifacts, senza scrittura diretta di DRL
  • Knowledge artifacts condivisibili — un marketplace o catalogo di moduli validati, ispirato a progetti open source come quelli di pacchetti (CPAN, Maven Central, CRAN). Manca ancora — richiede un ecosistema di curatori fidati
  • Integrazione con linee guida internazionali e trasformazione di clinical practice guidelines testuali in executable knowledge artifacts
  • Cloud deploymentCDS-as-a-Service con modelli di business emergenti

OpenCDS al 2012 rappresenta un tassello fondamentale di un ecosistema più ampio ancora in costruzione. Il suo successo dipenderà meno dalla qualità tecnica — già solida — e più dalla cultura organizzativa e clinica che riuscirà a mettere in pratica il paradigma del CDS standardizzato come servizio condiviso.


Riferimenti: OpenCDS (www.opencds.org), versione 1.x (2011-2012). Università dello Utah (Ken Kawamoto), Veterans Affairs, Partners HealthCare. HL7 vMR — virtual Medical Record. HL7 Decision Support Service (DSS). Health eDecisions (HeD) initiative, ONC 2012. Licenza Apache 2.0. Drools come engine sottostante.

Vuoi supporto? Sei sotto attacco? Stato dei servizi
Vuoi supporto? Sei sotto attacco? Stato dei servizi