Skip to content

Latest commit

 

History

History

cid-core

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 

CID-CORE

O presente projeto disponibiliza uma solução para consultas aos códigos da CID-10 (versão 2008), seja fornecendo parte do código e/ou partes de palavras que compõem a descrição da entrada desejada.

A solução permite que cada entrada da CID possa ser acrescida de "texto" adicional que também pode ser considerado na busca. Por exemplo, a solução pode ser configurada para que a busca por "Síndrome do desfiladeiro" também retorne a CID de código G540.

Requisitos

  • A busca pode ser feita apenas por parte do código e/ou parte da descrição. A saída produzida deve ser uma entrada da CID-10 que contém todos os elementos fornecidos na entrada. Por exemplo, a busca por "dengue" deve trazer todas as entradas da CID-10 que contêm "dengue" como parte da descrição. Nesse caso, as entradas cujos códigos são A90 e A91. Observe que se a consulta for realizada apenas por "engue" (sem o d), o resultado também deve incluir aqueles oferecidos para "dengue". A busca por "90" e por "dengue" apenas produz a entrada de código A90.

  • Acentos podem ou não ser fornecidos. Por exemplo, a busca por "infecção" e "infeccao" vão produzir o mesmo resultado.

  • Maiúsculas e minúsculas são tratadas igualmente. Ou seja, "dengue" e "Dengue" produzem o mesmo resultado.

  • Busca estendida. A busca por código e/ou descrição da CID pode ser estendida por textos (sequências de caracteres) associados às entradas da CID. Por exemplo, o texto "Síndrome do desfiladeiro" pode ser associado ao código CID G540 e, neste caso, a busca por "desfilad" irá incluir a CID G540, apesar de "desfilad" não fazer parte da descrição desta CID. Vários textos podem ser associados a uma mesma entrada.

Projeto (design) da solução

Decisão 1. As categorias e as subcategorias da CID-10 serão reunidas em uma única lista e a busca será realizada sequencialmente nesta lista. Dado que a busca deve ignorar o uso ou não da acentuação, uma lista adicional deverá ser confeccionada e sobre a qual a busca será, de fato, realizada. A lista original será mantida para a montagem da resposta.

Decisão 2. O formato original dos dados de entrada servem de entrada para processo automático que produz dados usados pela solução. Ou seja, nenhum processo manual deverá ser utilizado para a produção da estrutura de dados usada pela solução.

Decisão 3. Classe específica deverá encapsular a obtenção (carga) dos dados, ou seja, deve haver separação entre o código que realiza a consulta e o código que obtém os dados. Desta forma, o armazenamento dos dados pode mudar de origem sem impacto na classe que realiza a busca.

Decisão 4. Os dados de entrada, CID e sinônimos, serão fornecidos por meio de arquivos no formato CSV (separador será ';').

Decisão 5. O arquivo de sinônimos contém, por linha, código da CID em questão seguido de sinônimos, cada um em sua própria "coluna".

Estrutura de dados para a busca (lista adicional)

Tendo em vista os requisitos, é necessário processar os dados da CID-10 conforme abaixo:

  1. Eliminar colunas não utilizadas, por exemplo, "descrição abreviada".
  2. Eliminar acentos.
  3. Substituir terminações de plural pela palavra completa, ou seja, aceleração(oes) por "aceleração" e "acelerações", por exemplo.
  4. Eliminar duplicidades.
  5. Unir conteúdo de categorias, subcategorias e categorias para oncologia e ordenar a união pelo código.

Geração dos aplicativos (e uso via linha de comandos)

  1. Obtenha o código fonte git clone https://github.com/kyriosdata/cid10
  2. Execute cd cid10/cid-core
  3. Execute mvn package
  4. Na linha de comandos java -jar cid10-dados-2008.1.0.jar 0 dengue fará com que todas as entradas contendo "dengue" sejam exibidas na saída padrão. Ou seja, duas linhas serão fornecidas. Se a chamada for java -jar cid10-dados-2008.1.0.jar 1 dengue apenas a última entrada será fornecida, dado que a ordem inicial das entradas a serem fornecidas é a segunda (aquela de índice 1).

Como usar (desenvolvedores)

A documentação fornece detalhes para desenvolvedores que desejam empregar a CID-10 em seus projetos.
Javadocs

Além da documentação será necessário acesso ao software e dados pertinentes. Obtenha o arquivo jar correspondente à versão mais recente ou via Maven conforme a dependência indicada abaixo.

<dependency>
  <groupId>com.github.kyriosdata.cid10</groupId>
  <artifactId>cid10-dados</artifactId>
  <version>2008.1.0</version>
</dependency>