Date:

    Estimated Time:less than a minute

    Rendering Patients in SolR (part-1)

    Patient medical records contain a broad variety of data such numeric, coding, time-series or medical reports. It can be translated as a json document with a nested structure.

    SolR allows to handle highly nested objects to be queried efficiently. It provides pagination, and also faceting features wich are very powerful to provide a patient centered search engine.

    Patients in electronic health records:

    Patient Nested

    Consider the two patients below:

    It yet possible to ask relevant questions to SolR:

    # Count and give me one patient having during the same visit:
    # - one XX1 code
    # - one report containing "popeye"
    curl http://localhost:8983/solr/patient/query -d '
    q=*:*
    &fq={!parent which="content_type_s:visite"}
        ccam_ss:XX1
    &fq={!parent which="content_type_s:visite"}
        {!complexphrase inOrder=true}
            doc_text_t:"popeye marche"~3
            AND doc_type_ss:APHP.CRH-H
    &fl=id
    &rows=1'

    Using blockJoin queries has some limitations: - it is not possible to highlight matching text from a parent or a child document - it has some impact on performances

    The particular model used in this post has some limitations: - it is not possible to highlight matching text at the patient level - it is not possible to play with a sequence of events, such of encounter - queries are complicated

    Let's see a other approach in a next post.

    React ?

    This page was last modified: