Verisyntax — brugermanual (prototype 0.1)

Opskrift: aggregerede sundhedsdata

Projektet <example-project> er et syntetisk, ikke-diagnostisk undervisningseksempel inspireret af den kontaktorienterede datastruktur i Sundhedsdatastyrelsens beskrivelse af Landspatientregisteret. Det er ikke et officielt udtræk og gengiver ingen virkelige patienter, hospitalstal eller organisationsnavne.

Eksemplets grain er én aggregeret række pr. period + hospital_code + diagnosis_group + age_group + sex + contact_type. De 14 rækker dækker to perioder, tre syntetiske hospitaler og både endelig og foreløbig rapporteringsstatus. contacts er et antal kontakter—ikke unikke patienter, sygdomsrisiko, prævalens eller kvalitet. Der findes ingen CPR-numre, fritekstjournaler eller individuelle diagnoser.

database health:
  engine sqlite
  path "health_contacts.sqlite"

source hospital_contacts:
  database health
  table "hospital_contacts"
  column row_id: integer
  column period: text
  column hospital_code: text
  column diagnosis_group: text
  column age_group: text
  column sex: text
  column contact_type: text
  column reporting_status: text
  column contacts: integer
  primary_key row_id
  provenance row

source hospitals:
  database health
  table "hospitals"
  column hospital_code: text
  column hospital_name: text
  column region: text
  column hospital_type: text
  column ownership: text
  primary_key hospital_code
  provenance row

dataset respiratory_contacts:
  from hospital_contacts as contact
  inner join hospitals as hospital on contact.hospital_code = hospital.hospital_code
  select contact.period as period
  select hospital.hospital_name as hospital_name
  select hospital.region as region
  select hospital.hospital_type as hospital_type
  select contact.diagnosis_group as diagnosis_group
  select contact.age_group as age_group
  select contact.sex as sex
  select contact.contact_type as contact_type
  select contact.reporting_status as reporting_status
  select contact.contacts as contacts
  where contact.diagnosis_group = "J00-J99"
  1. Åbn <example-project>, kør Check, og initialisér databasen health.
  2. Importér hospital_contacts.csv til sourcen hospital_contacts med create.
  3. Importér hospitals.csv til sourcen hospitals med create.
  4. Vælg respiratory_contacts, og kør compile, build og Run. Resultatet viser de 11 syntetiske J00-J99-rækker med periode, alders-/kønsgruppe, kontakttype og rapporteringsstatus; rækkerne fra I00-I99 og C00-D49 filtreres fra.
  5. Til lokal AI-hjælp vælger du Question for local AI og bruger Suggest a Request… eller Add project facts, code & schema to Request. Bed om et komplet program, der bevarer de eksisterende declarations og filtrerer en bestemt deklareret diagnosegruppe. Modellen må ikke opfinde koders betydning eller kliniske konklusioner.

Sammenlign ikke rå contacts mellem regioner som risiko eller kvalitet. En rate kræver mindst en kompatibel befolkningsnævner, samme periode, samme alders-/køns- og kontakttypeafgrænsning samt en dokumenteret formel. Foreløbige værdier kan blive revideret, og små tal, databrud, ændrede registreringsregler, organisationsændringer og forskellig kodningspraksis skal vurderes før offentliggørelse. Brug kun personhenførbare registerdata, hvis du har det nødvendige lovgrundlag, adgangsmiljø og databeskyttelse; dette eksempel er med vilje kun syntetisk og aggregeret.