Let's do our bit to tackle covid-19 together


#1

Let’s think about how we can do our part in tackling the covid-19 pandemic.

There are not enough tests for everyone so many people have symptoms that go undetected. In a time like this, data is knowledge and knowledge is power.

There are several apps cropping up that are tracking symptoms: coughing, sore throat, nasal cold, temperature, shortness of breath. If you are interested in the conversation about standardising covid-19 related data here’s a thread.

I’d like to invite everyone to make a list of existing symptom tracker apps and hackathons here.

If we could try and make the covid-19 symptom tracking apps interoperable we could help get a global picture of the pandemic.

Who is open to building a Solid app for tracking covid-19 symptoms?


Covid-19 apps and hackathons
#2

@tag42git @timbl @ewingson @kidehen @Justin @happybeing @adventure thank you for all your input to this conversation.

It seems like http://blog.schema.org/2020/03/schema-for-coronavirus-special.html has put forward a data interoperability solution.

Thank you @timbl for kicking off with a Solid app https://timbl.com/timbl/Public/2020/Epidemic/Work%20From%20Home%20status%20and%20epidemic%20monitoring/index.ttl#this Where can people submit contributions?

@kidehen thank you for input on how Solid could contribute, gold! On the covid-19 apps mentioned how could we get users to save their data to a Pod?

Anyone else interested in building a Solid app for the covid-19 use case?

It would be possible to flag if you have been in close range to anyone who has reported one of the key symptoms using the phone GPS. Alternatively, if you have reported any of the key symptoms it would be possible to know who you have been in close range with. Careful design is needed to make sure that it is possible to protect people and not stigmatise them. For example, individuals just need a yes/ no answer to if they have been exposed (not exactly who) whereas public health officials would benefit in being able to contact those who have been exposed.


#3

timbl asked me how to represent a dry cough:

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sct: <http://snomed.info/id/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<@@my condition URL@@> a fhir:Condition;
  fhir:nodeRole fhir:treeRoot;
  fhir:Condition.clinicalStatus [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://terminology.hl7.org/CodeSystem/condition-clinical" ];
       fhir:Coding.code [ fhir:value "active" ]
     ]
  ];
  fhir:Condition.verificationStatus [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://terminology.hl7.org/CodeSystem/condition-ver-status" ];
       fhir:Coding.code [ fhir:value "provisional" ]
     ]
  ];
  fhir:Condition.category [
     fhir:index 0;
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://terminology.hl7.org/CodeSystem/condition-category" ];
       fhir:Coding.code [ fhir:value "problem-list-item" ];
       fhir:Coding.display [ fhir:value "Problem List Item" ]
     ]
  ];
  fhir:Condition.severity [
     fhir:CodeableConcept.coding [
       a sct:6736007;
       fhir:Coding.system [ fhir:value "http://snomed.info/sct" ];
       fhir:Coding.code [ fhir:value "6736007" ];
       fhir:Coding.display [ fhir:value "Moderate" ]
     ]
  ];
  fhir:Condition.code [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://snomed.info/sct" ];
       fhir:Coding.code [ fhir:value "11833005" ];
       fhir:Coding.display [ fhir:value "Dry cough" ]
     ];
     fhir:CodeableConcept.text [ fhir:value "Dry cough" ]
  ];
  fhir:Condition.subject [
     fhir:link <@@my patient URL@@>;
  ];
  fhir:Condition.onsetDateTime [ fhir:value "2020-03-23"^^xsd:date] .

#4

“It would be possible to flag if you have been in close range to anyone who has reported one of the key symptoms using the phone GPS. Alternatively, if you have reported any of the key symptoms it would be possible to know who you have been in close range with. Careful design is needed to make sure that it is possible to protect people and not stigmatise them. For example, individuals just need a yes/ no answer to if they have been exposed (not exactly who) whereas public health officials would benefit in being able to contact those who have been exposed.”

How to know (and who should know) who you have been in proximity to while at the same time respecting privacy is a challenge, and I wonder how that could work in the context of Solid.

I’m sure there are others here who could see it more easily than me (or maybe already have). It seems like a server would have to be involved to match locations up, but then leave the private data to the pods. It may already be too late for this virus (but maybe not!) but would be good to have figured out for the next one.


#5

You might need a translation like deepl.com to read this comprehensive letter about covid-19 apps http://allai.nl/wp-content/uploads/2020/04/Online-versie-Brief-Minister-President-Rutte-Ministers-De-Jonge-Van-Rijn-Grapperhaus-de-heer-Sijbesma-inzake-COVID-19-tracking-en-tracing-en-gezondheidsapps.pdf


#6

We need to create a simple narrative that starts with data creation and/or access and ends as the “save as” stage which is where a Solid Pod comes into play.


#7

A little tweak.

## Turtle Start ##

@prefix fhir: <http://hl7.org/fhir/> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sct: <http://snomed.info/id/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix : <#> . 

:dryCough a fhir:Condition;
  fhir:nodeRole fhir:treeRoot;
  fhir:Condition.clinicalStatus [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://terminology.hl7.org/CodeSystem/condition-clinical" ];
       fhir:Coding.code [ fhir:value "active" ]
     ]
  ];
  fhir:Condition.verificationStatus [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://terminology.hl7.org/CodeSystem/condition-ver-status" ];
       fhir:Coding.code [ fhir:value "provisional" ]
     ]
  ];
  fhir:Condition.category [
     fhir:index 0;
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://terminology.hl7.org/CodeSystem/condition-category" ];
       fhir:Coding.code [ fhir:value "problem-list-item" ];
       fhir:Coding.display [ fhir:value "Problem List Item" ]
     ]
  ];
  fhir:Condition.severity [
     fhir:CodeableConcept.coding [
       a sct:6736007;
       fhir:Coding.system [ fhir:value "http://snomed.info/sct" ];
       fhir:Coding.code [ fhir:value "6736007" ];
       fhir:Coding.display [ fhir:value "Moderate" ]
     ]
  ];
  fhir:Condition.code [
     fhir:CodeableConcept.coding [
       fhir:Coding.system [ fhir:value "http://snomed.info/sct" ];
       fhir:Coding.code [ fhir:value "11833005" ];
       fhir:Coding.display [ fhir:value "Dry cough" ]
     ];
     fhir:CodeableConcept.text [ fhir:value "Dry cough" ]
  ];
  fhir:Condition.subject [
     fhir:link :myPatient ;
  ];
  fhir:Condition.onsetDateTime [ fhir:value "2020-03-23"^^xsd:date] .

## Turtle End ##

Result which is viewable from your browser, once you install the OpenLink Structured Data Sniffer Extension (OSDS).

You can also use the “Save As” feature of OSDS to save this straight to your Solid Pod :slight_smile:


#8

Hi Mitzi, This is exactly what I do with MP50: look at:
mediprepare.1systeem.nl/en/questionnaire/guest/

If you replace the last 1 by 5 you enter the Covid-19 questionnaire. At the end the code creates a summary for doctors. That can be shared. (the PDF generation works soon. on this server it is broken.) The code for MP50 is open source. On request I will share the code (docker).

In my opinion this sharing PDF with Medical Dossier is a perfect and meaningfull use case for Solid.

Regards, hans