Skip to content

HealthDB API

Fábio Nogueira de Lucena edited this page Jul 27, 2017 · 54 revisions

Módulos

O HealthDB oferece seus serviços por meio de uma API (Application Programming Interface). Essa API é o único meio de conexão com o HealthDB. Uma opção detalhada para essa API é a proposta openEHR EHR REST API.

Conforme ilustrado no diagrama abaixo, um Cliente (Java) faz uso da interface HealthDB API (versão Java), independente da implementação HealthDB API Client (versão Java). O diagrama ainda inclui os principais instrumentos empregados pelo Cliente para interação com o HealthDB, Work e ResultSet, respectivamente, a classe que representa um trabalho a ser requisitado ao HealthDB e a resposta recebida para a requisição.

hdb-client-api-modules

Não é obrigatório o uso de Java para acesso ao HealthDB. Oferecer acesso por meio de outra linguagem é oferecer uma implementação do protocolo de interação, na linguagem desejada, conforme o diagrama abaixo ilustra. Isso significa a interface HealthDB API e a correspondente implementação HealthDB API Client. Observe que o HealthDB API Server não se altera. Facilitar o uso do HealthDB por clientes em várias linguagens de programação, de forma nativa, significa definir um protocolo que "facilite" a correspondente implementação.

hdb-client-api-general

Um cliente (software) em execução em dado processo usa essa API para requisitar a realização de operações pelo HealthDB, executado em processo distinto, não necessariamente no mesmo computador, de fato, possivelmente localizado em outro continente.

Componentes

Os componentes relevantes para a interação com o HealthDB são exibidos no diagrama abaixo, no qual vários clientes distintos, por meio da HealthDB API, tem acesso ao driver que, por sua vez, transfere a intenção do cliente para o HealthDB, recebida no outro extremo pelo HealthDB API Server.

hdb-client-api-components

Requisitos

  • Considerar terminologia e recursos de integração possivelmente relevantes nesse contexto.
  • Desempenho.
  • Segurança.
  • Múltiplas conexões simultaneamente.
  • Cada cliente pode criar uma única conexão por vez com o HealthDB.
  • Cada conexão pode ser reutilizada de forma concorrente pelo Cliente.
  • Cliente pode fechar uma conexão e abrir uma outra.
  • Definir de forma exaustiva e detalhada as mensagens trocadas entre cliente e HealthDB.
  • Interação deve ser ilustrada por meio de vários exemplos.
  • Implementações devem ser disponibilizadas em: Java; JavaScript; C; C# e Swift.

Entregáveis

  • Definição da HealthDB API
  • Implementação da HealthDB API: hdbapi-client e hdbapi-server, respectivamente o componente empregado pelo cliente e pelo servidor.

image

Links relevantes para JavaScript

Clone this wiki locally