Boas Práticas
Boas Práticas para escolha de Identificadores em FHIR
Esta documentação visa fornecer um guia de boas práticas para a seleção e utilização de identificadores (identifiers) ao trabalhar com o padrão FHIR (Fast Healthcare Interoperability Resources). A escolha de identificadores adequados é crucial para garantir a interoperabilidade, a rastreabilidade e a integridade dos dados de saúde. Seguir estas diretrizes ajudará os desenvolvedores a construir sistemas mais robustos e eficientes.
- Utilize Sistemas de Identificação Confiáveis e Únicos:
- Priorize o uso de sistemas de identificação reconhecidos e padronizados sempre que aplicável. Isso facilita a interoperabilidade com outros sistemas que também utilizam esses padrões.
- Para dados de pacientes no Brasil, o CPF (Cadastro de Pessoas Físicas), representado pela URI
https://servicos.receita.fazenda.gov.br/servicos/cpf/
, é um excelente exemplo de identificador oficial. - Para identificadores específicos da sua organização ou sistema, defina URIs (Uniform Resource Identifiers) claras e consistentes que representem de forma única a autoridade emissora. Por exemplo, o "Sistema Fictício" da "Acme Saúde" poderia usar a URI
https://sistemaficticio.acmesaude.com.br/id/paciente
para seus identificadores de paciente.
Exemplo: Utilizando CPF e um identificador interno para um paciente.
{
"resourceType": "Patient",
"identifier": [
{
"use": "official",
"system": "https://servicos.receita.fazenda.gov.br/servicos/cpf/",
"value": "01234567890"
},
{
"use": "usual",
"system": "https://sistemaficticio.acmesaude.com.br/id/paciente",
"value": "ACME-PAC-001"
}
],
"name": [
{
"use": "official",
"text": "Patolino Silva"
}
],
"gender": "male",
"birthDate": "1975-05-10"
}
- Garanta a Unicidade dos Valores Dentro de Cada Sistema:
- É fundamental assegurar que o valor de um identificador seja único dentro do sistema definido pela sua URI. A duplicação de identificadores pode levar a erros na correlação e no gerenciamento dos dados.
- Implemente mecanismos de validação e controle para evitar a criação de identificadores duplicados no seu "Sistema Fictício".
Exemplo: Definindo um identificador único para uma organização da "Acme Saúde".
{
"resourceType": "Organization",
"identifier": [
{
"system": "https://sistemaficticio.acmesaude.com.br/id/organizacao",
"value": "ACME-ORG-005"
}
],
"name": "Clínica Principal Acme"
}
- Mantenha a Consistência dos Identificadores ao Longo do Ciclo de Vida dos Dados:
- Uma vez que um identificador é atribuído a um recurso, ele deve permanecer consistente durante todo o seu ciclo de vida. A alteração de identificadores pode quebrar referências e dificultar o rastreamento do histórico do recurso.
- Ao atualizar informações de um paciente no "Sistema Fictício", mantenha os mesmos identificadores internos e externos associados a ele.
Exemplo: Referenciando um paciente utilizando seu identificador em um recurso de Condição.
{
"resourceType": "Condition",
"identifier": [
{
"system": "https://sistemaficticio.acmesaude.com.br/id/condicao",
"value": "ACME-CON-012"
}
],
"subject": {
"identifier": {
"system": "https://sistemaficticio.acmesaude.com.br/id/paciente",
"value": "ACME-PAC-001"
},
"type": "Patient"
},
"verificationStatus": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/condition-ver-status",
"code": "confirmed"
}
]
},
"code": {
"coding": [
{
"system": "http://snomed.info/sct",
"code": "195967001",
"display": "Doença hipertensiva"
}
]
}
}
- Utilize o Campo use de Forma Semântica:
- O atributo use dentro do objeto identifier fornece contexto sobre o propósito do identificador. Utilize os códigos definidos pela especificação FHIR de forma apropriada:
- official: Identificador oficial designado pelo sistema de registro (ex: CPF).
- usual: Identificador comumente utilizado para referenciar a entidade.
- temp: Identificador temporário.
- secondary: Identificador secundário para a entidade.
- old: Identificador antigo que não está mais em uso.
Exemplo: Demonstrando o uso de official e usual em um recurso de Cobertura.
{
"resourceType": "Coverage",
"identifier": [
{
"use": "official",
"system": "http://operadora.acme.com.br/carteirinha",
"value": "XYZ987654"
},
{
"use": "usual",
"system": "https://sistemaficticio.acmesaude.com.br/id/beneficiario",
"value": "BEN-0022"
}
],
"status": "active",
"beneficiary": {
"identifier": {
"system": "https://servicos.receita.fazenda.gov.br/servicos/cpf/",
"value": "98765432109"
}
},
"payor": [
{
"display": "Operadora Saúde Acme"
}
]
}
- Considere o Uso do Campo period para Identificadores Temporários ou com Validade:
- Para identificadores que possuem um período de validade específico, como um número de registro temporário, utilize o atributo period para indicar o início e o fim da sua validade.
Exemplo: Um identificador temporário para um atendimento.
{
"resourceType": "Encounter",
"identifier": [
{
"use": "temp",
"system": "https://sistemaficticio.acmesaude.com.br/id/atendimento",
"value": "TEMP-ENC-101",
"period": {
"start": "2024-10-27",
"end": "2024-10-28"
}
}
],
"status": "finished",
"class": {
"system": "http://terminology.hl7.org/CodeSystem/v3-ActCode",
"code": "AMB",
"display": "ambulatory"
},
"subject": {
"identifier": {
"system": "https://sistemaficticio.acmesaude.com.br/id/paciente",
"value": "ACME-PAC-002"
},
"type": "Patient"
}
}
- Documente Claramente os Sistemas de Identificação Utilizados:
- É essencial manter uma documentação clara e atualizada de todos os sistemas de identificação utilizados nas suas integrações FHIR. Isso inclui a URI do sistema, o formato esperado para os valores e o significado de cada use utilizado.
- Para o "Sistema Fictício" da "Acme Saúde", crie um registro detalhado de todos os seus sistemas de identificação internos. Seguindo estas boas práticas, os desenvolvedores da "Acme Saúde" e outras organizações podem garantir que seus sistemas baseados em FHIR utilizem identificadores de forma eficaz, promovendo uma melhor interoperabilidade e um gerenciamento de dados de saúde mais confiável.