Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card
FHIR vs HL7 v2: diferenças práticas
Mensagens HL7 v2 e recursos FHIR comparados para programadores: formato, transporte, o mesmo resultado de laboratório em ambos, armadilhas de tradução e onde o Anpheros aceita v2.
HL7 v2 é o formato de mensagem que os sistemas hospitalares trocam desde o final dos anos 80 — eventos delimitados por pipe, como "paciente admitido" ou "resultado de laboratório pronto", enviados entre sistemas através de uma ligação de rede — enquanto HL7 FHIR é um padrão de API web onde as aplicações leem e escrevem recursos como Paciente e Observação sobre HTTPS em JSON. Não são alternativas que se escolhem uma vez: a maioria dos hospitais ainda opera com v2 internamente, as novas aplicações e APIs voltadas para o paciente usam FHIR, e o trabalho de integração é frequentemente a tradução de um para o outro. Esta página compara-os nos pontos que importam quando escreve código, mostra os mesmos dados em ambos e explica onde o Anpheros aceita v2.
Lado a lado
| HL7 v2 | HL7 FHIR R4 | |
|---|---|---|
| Estilo | Mensagens acionadas por eventos (admissão, pedido, resultado) | Recursos que cria, lê, atualiza, pesquisa |
| Formato | Segmentos de texto separados por quebras de linha, campos por \|, componentes por ^ |
JSON (ou XML) |
| Transporte | Geralmente MLLP sobre TCP dentro da rede hospitalar | HTTPS REST |
| Consulta | Limitada; os sistemas enviam principalmente | Parâmetros de pesquisa, _include, histórico |
| Segurança | Nível de rede (VPN, ligações privadas) | OAuth 2.0 / SMART on FHIR, TLS, escopos |
| Flexibilidade | Muitos campos opcionais e segmentos Z locais; cada interface é negociada | Recursos base mais perfis (US Core, IPS, IGs europeus) |
| Utilizadores típicos | Sistemas EHR, laboratório, radiologia, faturação dentro de um hospital | Aplicações, APIs de acesso do paciente, intercâmbio inter-organizações, IA |
As mensagens v2 mais comuns:
| Mensagem | Significado | Recursos FHIR mais próximos |
|---|---|---|
| ADT^A01, A03, A08 | Admissão, alta, atualização do paciente | Patient, Encounter |
| ORM / OML | Pedir um teste | ServiceRequest |
| ORU^R01 | Resultado pronto | Observation, DiagnosticReport |
| SIU | Agendamento | Appointment |
| MDM | Documento | DocumentReference |
O mesmo resultado em ambos
Uma linha de resultado ORU^R01 (segmento OBX):
OBX|1|NM|2093-3^Cholesterol^LN||212|mg/dL|<200|H|||F|||20261002074500
O mesmo resultado como uma Observação HL7 FHIR R4, como o Anpheros o armazena após importar essa mensagem:
{
"resourceType": "Observation",
"status": "final",
"category": [{"coding": [{"system": "http://terminology.hl7.org/CodeSystem/observation-category", "code": "laboratory"}]}],
"code": {"coding": [{"system": "http://loinc.org", "code": "2093-3", "display": "Cholesterol [Mass/volume] in Serum or Plasma"}], "text": "Cholesterol"},
"effectiveDateTime": "2026-10-02T07:45:00Z",
"valueQuantity": {"value": 212.0, "unit": "mg/dL"},
"interpretation": [{"coding": [{"system": "http://terminology.hl7.org/CodeSystem/v3-ObservationInterpretation", "code": "H"}]}],
"referenceRange": [{"high": {"value": 200.0, "unit": "mg/dL"}}]
}
Campo a campo: OBX-3 torna-se code, OBX-5 e OBX-6 tornam-se valueQuantity, OBX-7 referenceRange, OBX-8 interpretation, OBX-11 status, OBX-14 effectiveDateTime. O HL7 publica um guia de implementação oficial do HL7 Version 2 para FHIR com mapeamentos para segmentos, tipos de dados e vocabulários.
Onde as traduções falham
- Fuso horários. Timestamps v2 como
20261002074500frequentemente não incluem um offset; tem de conhecer a zona do remetente. FHIR requer uma zona sempre que um tempo está presente. (Anpheros lê um tempo v2 sem zona como UTC; envie o offset se o tiver.) - Códigos locais. Muitos laboratórios colocam os seus próprios códigos em OBX-3 em vez de LOINC. Uma boa tradução mantém o código local e mapeia-o para LOINC quando possível, em vez de o descartar.
- Envios repetidos. Remetentes v2 retransmitem em caso de timeouts. Sem um identificador estável por resultado, um FHIR store enche-se de duplicados.
- Opcionalidade de tudo. O mesmo campo pode estar vazio, repetido ou ser usado de forma diferente por dois remetentes. Valide o lado FHIR; o validador FHIR R4 mostra o que falta num recurso traduzido.
- Correções. O estado do resultado v2
C(corrigido) deve atualizar a Observação existente e manter o seu histórico, não criar uma segunda.
Quando usar o quê
- Dentro de um hospital, entre sistemas existentes: v2 é geralmente o que os sistemas utilizam. Um motor de integração roteia e transforma mensagens.
- A construir uma aplicação, uma API de acesso ao paciente ou qualquer coisa que atravesse organizações: FHIR, com OAuth e consentimento.
- Alimentar IA ou análises: FHIR, porque é consultável, codificado e versionado.
- Ambos: o padrão comum no mundo real — receber v2 do laboratório ou EHR, armazenar FHIR, servir FHIR a aplicações.
Onde o Anpheros se encaixa
O Anpheros armazena registos de pacientes como FHIR R4 e aceita um tipo de mensagem HL7 v2: ORU^R01 resultados de laboratório, enviados via HTTPS para o conector de laboratório (POST /v1/patients/{id}/labs/import com Content-Type: x-application/hl7-v2+er7). Cada OBX torna-se uma Observação de laboratório com código LOINC, intervalo de referência e interpretação; o ID do relatório é mantido na proveniência e relatórios reenviados são ignorados. Um resultado corrigido (OBX-11 = C) com um novo valor é armazenado como uma nova Observação com estado amended; o original permanece como estava, portanto, se a sua fonte enviar correções, marque a Observação anterior entered-in-error ou atualize-a através da API FHIR. Um exemplo prático é a API de resultados de laboratório.
Não aceita outras mensagens v2 (ADT, pedidos, agendamento), não escuta em MLLP e não envia v2. Para estes casos, um motor de integração à frente do Anpheros traduz para FHIR e escreve através da API.
Perguntas Frequentes
O FHIR está a substituir o HL7 v2?
Não em breve. O v2 continua a ser a espinha dorsal da maioria dos hospitais porque funciona e está integrado nos sistemas existentes. O FHIR está a crescer à sua volta — em aplicações, acesso de pacientes e intercâmbio entre organizações — e os dois coexistem, muitas vezes com tradução entre eles.
O que é MLLP?
O Minimal Lower Layer Protocol: uma forma simples de enquadrar mensagens v2 sobre uma ligação TCP, com caracteres de início e fim à volta de cada mensagem e um reconhecimento (ACK) de volta. O FHIR utiliza HTTPS em vez disso.
Posso converter mensagens HL7 v2 para FHIR automaticamente?
Na maioria dos casos. O guia de implementação v2-para-FHIR da HL7 fornece mapeamentos padrão, e os motores de integração implementam-nos. Espere trabalho manual para códigos locais, segmentos Z, fusos horários e como cada remetente utiliza campos opcionais.
O Anpheros aceita HL7 v2?
Sim, para resultados de laboratório: mensagens ORU^R01 publicadas via HTTPS para o conector de laboratório tornam-se Observações FHIR. Outros tipos de mensagens v2 e ligações MLLP não são suportados.
Relacionado
- Mapeamento HL7 v2 para FHIR: mapeamento de segmentos e campos, e um conversor
- API de resultados de laboratório: HL7 v2, FHIR e LOINC
- Como importar resultados de laboratório para um registo FHIR
- Interoperabilidade de dados de saúde
- DICOM vs FHIR: dados de imagem e dados clínicos
- Plataforma FHIR
Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card