HXL-CPLP / forum

Fórum do Grupo de Usuários do Padrão HXL da Comunidade dos Países de Língua Portuguesa, "HXL-CPLP"
https://github.com/HXL-CPLP/forum/issues
The Unlicense
2 stars 0 forks source link

Vocabulário controlado disponibilizado em HXL: Classificação Estatística Internacional de Doenças e Problemas Relacionados à Saúde (PT: "CID") (EN: "International Classification of Diseases" "ICD") por icd.who.int #29

Open fititnt opened 3 years ago

fititnt commented 3 years ago

Vide



Um uso potencialmente muito significativo de conjuntos de dados HXL na CPLP é na troca de dados entre organizações governamentais que tem sistemas incompatíveis e na análise de dados por pesquisadores acadêmicos em contextos onde os dados são privados, porém é comum retrabalho.

Em discussões com a comunidade internacional de usuários HXL, nós do HXL-CPLP já estamos tentando prever formas de (mesmo que isso não tenha impacto antes de 6-12 meses) a comunidade de software livre e a de dados abertos podem ajudar neste contexto sem que isso viole privacidade. Uma das alternativas poderia ser usar dados simulados. Outra, até para acelerar adoção do padrão, poderia ser (antes mesmo de iniciar parceria com especialistas da área médica ou de segurança pública) já usar criar provas de conceito usando talvez principalmente os campos que tem maior potencial de interoperabilidade.

Por que exemplos com CID / ICD são um ótimo início

O padrão HXL tem vantagens em relação a outra alternativas que exigem forte padronização: para quem for ler esse tópico no futuro a justificativa disso é por permitir que uma pessoa consiga fazer pequenas correções e conversões de dados sem depender da equipe de TI ou de softwares proprietários. Resumindo: se você já conhece o que seus dados representam e sabe usar planilha de dados você já sabe usar HXL! E, seja para aprender o que é o HXL, ou para converter para você mesmo ou publicar para o mundo algo com fins humanitários coce para uso humanitário você pode usar o HXL proxy.

Em certos casos, como por exemplo é o que ocorre com códigos que representam locais, é pertinente que sem nem mesmo necessidade de customização do usuário o software oferecer para você funcionalidades mais avançadas. O porém é que com frequência isso depende de organizações (como um país que define códigos para as próprias cidades) já terem definido o que tais códigos significam e permitirem que o software que processa HXL leia essa explicação. É nesse ponto que um grupo de pessoas usuárias como o HXL-CPLP teria menos trabalho e mais garantia de impacto de longo prazo de formos humildes e procurar implementar primeiro o que já é padrão mais conhecido. (Note que isso não quer dizer que você, se usa algo diferente de CID/ICD, não poderia usar algo diferente, até porque o padrão permite você concordar apenas com colegas de uma pequena região o que vocês vão usar como hashtags.)

Neste momento (dezembro de 2020) aparentemente não tem conjuntos de dados públicos que usem CID/ICD no HDX (o que não é surpreendente, visto que geralmente isso envolveria dados hospitalares, super sensíveis). Por isso que nós, do HXL-CPLP, tenderemos a intencionalmente usar isso como alternativa para discutir com a comunidade internacional. Até porque o ICD-11 foi recentemente lançado, então imagino que a própria OMS / WHO teria interesse em acompanhar isso mas mesmo que não estivéssemos não apenas no final de ano, como em uma pandemia, é natural (mesmo sendo otimista) que demore alguns meses (até porque eles renderiam ser bem mais cuidadosos).

Como contribuir com o HXL-CPLP nesse assunto

Se você pesquisador acadêmico ou é da área de saúde ou segurança pública e encontrou esse tópico meses ou anos depois (de fato essa é uma das razões de escrever em público, a outra é, se conseguirmos, ajudar outros a saberem como tomar iniciativa) imagino que esteja tentando usar HXL, e para algo mais imediato. Como possivelmente pode envolver assunto sensíveis, considere entrar em contato por e-mail. A tendência de membros do HXL-CPLP é ver necessidades da comunidade e conectar grupos (inclusive de áreas diferentes, como voluntários de software livre com profissionais de saúde) de modo a facilitar iniciativas futuras.

fititnt commented 3 years ago

OK. Em https://icd.who.int/browse11/Downloads/Download?fileName=simpletabulation.zip temos

fititnt@bravo:~/Downloads/simpletabulation$ ls -lha
total 2,7M
drwxrwxr-x 2 fititnt fititnt 4,0K dez  7 23:19 .
drwxr-xr-x 3 fititnt fititnt  16K dez  7 23:16 ..
-rw-rw-r-- 1 fititnt fititnt 1,2K ago  4 12:54 readme.txt
-rw-rw-r-- 1 fititnt fititnt 2,7M set 22 10:14 simpleTabulation.xlsx

readme.txt

Foundation URI                 :Unique identifier for the entity that will not change 
Linearization (release) URI     :Unique identifier for this version of the classification. It includes the linearization name such as MMS and minor version idetifier such as 2018 in it
Code                            :ICD-11 code for the entity. Note that the groupings do not have a code.
BlockId                         :Identifier for high level groupings that do not bear a code
Title                           :Title of the entity
ClassKind                       :One of the three (chapter, block, category)
                                    Chapter is top level classification entities
                                    Blocks are high level groupings that do not bear a code
                                    Categories are entities that has a code
DepthInKind                     :Depth of within the Class Kind. For example, a category with depthinkind=2 means it is category whose parent is also a category bu grand parent is not
IsResidual                      :true if the entity is a residual category (i.e. other specified or unspecified categories)
ChapterNo                       :The chapter that the entity is in
BrowserLink                     :Direct link to this entity in ICD-11 browser.
IsLeaf                          :true if this entity does not have any children

simpleTabulation.xlsx

Captura de tela de 2020-12-07 23-25-14

fititnt commented 3 years ago

Ok. Primeiro rascunho:

Também criei um usuário e senha em https://icd.who.int/dev11/f/en. Pelo que pude ver, o ICD-11 não apenas é projetado para receber atualizações, como o sistema interno já tem especialistas no mínimo sugerindo alterações de sinônimos. Ou seja, a planilho obtida do arquivo zip simpletabulation.zip (e que segundo cabeçalho do XLSX talvez tenha como versão Version:2020 Sep 15 - 22:00 UTC) eventualmente irá ficar desatualizada.

Mandei e-mail para icd@who.int sobre potencialmente ter ajuda sobre como pode ser implementado vocabulário.

fititnt commented 3 years ago

Um segundo link, apenas com campos filtrados está em https://proxy.hxlstandard.org/data/8af38d.

fititnt@bravo:~/Downloads$ head v_who_icd11.csv 
Foundation URI,Code,Title
#meta+id+url,#meta+code+v_who_icd11,#meta+name+i_en
http://id.who.int/icd/entity/257068234,1A00,- - - Cholera
http://id.who.int/icd/entity/416025325,1A01,- - - Intestinal infection due to other Vibrio
http://id.who.int/icd/entity/1528414070,1A07,- - - Typhoid fever
http://id.who.int/icd/entity/364534567,1A07.0,- - - - Typhoid peritonitis
,1A07.Y,- - - - Other specified typhoid fever
,1A07.Z,"- - - - Typhoid fever, unspecified"
http://id.who.int/icd/entity/1780040028,1A08,- - - Paratyphoid fever
http://id.who.int/icd/entity/515117475,1A09,- - - Infections due to other Salmonella

Filtrando campo específico alterando apenas URL (para acesso via API)

Usando a documentação que está em https://github.com/HXLStandard/hxl-proxy/wiki/API é possível fazer filtragens adicionais em vez de baixar o https://proxy.hxlstandard.org/data/8af38d/download/v_who_icd11.csv diretamente.

Por exemplo, se fosse para retornar apenas resultados que tenham #meta+code=1A00, encodando este JSON

{"filter": "with_rows","queries": "#meta+code=1A00"}
fititnt@bravo:/workspace/git/HXL-CPLP/hxl-sample-data$ curl "https://proxy.hxlstandard.org/data.json?url=https://proxy.hxlstandard.org/data/8af38d/download/v_who_icd11.json&recipe=%7B%22filter%22%3A%20%22with_rows%22%2C%22queries%22%3A%20%22%23meta%2Bcode%3D1A00%22%7D"
[
["Foundation URI", "Code", "Title"],
["#meta+id+url", "#meta+code+v_who_icd11", "#meta+name+i_en"],
["http://id.who.int/icd/entity/257068234", "1A00", "- - - Cholera"]
]

TODO: tenho quase certeza (ou ao menos eu imagino) que se um dataset já está no HXL Proxy, talvez não seja necessário passar a URL dele mesmo como eu fiz em curl "https://proxy.hxlstandard.org/data.json?url=https://proxy.hxlstandard.org/data/8af38d/download/v_who_icd11.json&recipe=%7B%22filter%22%3A%20%22with_rows%22%2C%22queries%22%3A%20%22%23meta%2Bcode%3D1A00%22%7D"