Projekt

Obecné

Profil

Task #10989 » stroke-dotazy.md

Dotazy ve SPARQL - Lukáš Hauzner, 2024-03-04 13:39

 

Patients with examination containing text "srovnáno s"

PREFIX ds: <https://mre.zcu.cz/ontology/dasta.owl#>

SELECT
?title ?dateTime ?reportText
FROM <https://mre.zcu.cz/stroke/medical>
WHERE{
  ?pat a ds:Patient .
  ?pat ds:clinicalEvent ?clinical.
  OPTIONAL{?pat dc:title ?title}
  ?clinical ds:reportText ?reportText
  OPTIONAL{?clinical ds:datetimeEvent ?dateTime}
  FILTER(contains(lcase(?reportText),"srovnáno s"))
}
ORDER BY str(?dateTime)

Patients having CBFD series (count of studies)

PREFIX dcm: <https://mre.zcu.cz/ontology/dcm.owl#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>

SELECT 
?patient
(count(distinct ?study) as ?studies)
(min(str(?study_date)) as ?min_date)
(max(str(?study_date)) as ?max_date)
FROM <https://mre.zcu.cz/stroke/dicom>
WHERE{
  ?patient a dcm:Patient .
  ?patient dc:title ?pat_title .
  ?patient dcm:has_study ?study .

  OPTIONAL{?study dcm:Admitting_Diagnoses_Description ?diag.}
  OPTIONAL{?study dcm:Study_Date ?study_date.}
  OPTIONAL{?study dcm:Study_Description ?study_desc.}
  FILTER(STRSTARTS(?diag,"I6"))


  ?study dcm:contains_series ?series .
  OPTIONAL{?series dcm:Protocol_Name ?Protocol_Name .}
  OPTIONAL{?series dcm:Series_Description ?Series_Description .}
  OPTIONAL{?series dc:title ?series_title .}

  FILTER(contains(ucase(str(?Series_Description)), "CBFD"))
}

GROUP BY ?patient
ORDER BY DESC(?studies)

Patients having any CT series (count of studies)

PREFIX ds: <https://mre.zcu.cz/ontology/dasta.owl#>
PREFIX dcm: <https://mre.zcu.cz/ontology/dcm.owl#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>

SELECT 
?patient
(min(?pat_title) as ?pat_title_min)
(count(distinct ?study_date) as ?dates)
(min(str(?study_date)) as ?min_date)
(max(str(?study_date)) as ?max_date)

FROM <https://mre.zcu.cz/stroke/dicom>
WHERE{
  ?patient a dcm:Patient .
  ?patient dc:title ?pat_title .
  ?patient dcm:has_study ?study .

  ?study dcm:Admitting_Diagnoses_Description ?diag.
  FILTER(STRSTARTS(?diag,"I6"))
  ?study dcm:Study_Date ?study_date.

  ?study dcm:contains_series ?series .
  ?series dcm:Modality "CT".
}

GROUP BY ?patient
ORDER BY DESC(?dates)

Patients having I6* diag

PREFIX dcm: <https://mre.zcu.cz/ontology/dcm.owl#>
PREFIX dc: <http://purl.org/dc/elements/1.1/>

SELECT
?patient
(min(?pat_title) as ?pat_title_min)
(count(distinct ?study) as ?studies)
(min(str(?study_date)) as ?min_date)

FROM <https://mre.zcu.cz/stroke/dicom>
WHERE{
?patient a dcm:Patient .
?patient dc:title ?pat_title .
?patient dcm:has_study ?study .

OPTIONAL{?study dcm:Admitting_Diagnoses_Description ?diag.}
FILTER(STRSTARTS(?diag,"I6"))
OPTIONAL{?study dcm:Study_Date ?study_date.}

}

GROUP BY ?patient
ORDER BY DESC(?studies)
(1-1/2)