Modell for stråleterapi

pydantic model Datamodel.RT.Beam

Oversikt over behandlingsfelt

field redcap_repeat_instance: str
field redcap_repeat_instrument: str
field record_id: str | None

Koblingsnøkkel i NORPREG: Angis automatisk for hver pasient. Foreslått format er 7-karakter heksadesimal (f.eks. a72bf40)

field beam_course_id: str | None

FK Beam - Course ID: Koblingsnøkkel mot Course ID på OIS-nivå

field beam_plan_uid: str | None

FK Beam - Plan UID: Koblingsnøkkel mot DICOM-datasett på Plan UID-nivå

field beam_tx_modality: str | None

Treatment modality: Behandlingsmodalitet tolket fra radiation_type: Får 3D / arc modifikator dersom det er benyttet.

DICOM: (300A,00C6)

field beam_number: int | None

Beam number: Tallangivelsen for dette feltet

DICOM: (300A, 00C0)

field beam_name: str | None

Beam name: Feltnavn, inneholder ofte vinkelinformasjon

DICOM: (300A, 00C3) / (300A, 00C2)

field fx_grp_number: int | None

Fraction group number: Gruppenummeret til fraksjonen

DICOM: (300A, 0071)

field fx_count: int | None

Fraction count: Totalt antall fraksjoner for dette feltet

DICOM: (300A, 0078)

field fx_grp_beam_count: int | None

Fraction group beam count: Antall felt i denne fraksjonsgruppen

field beam_dose: float | None

Beam dose [Gy]: Planlagt dose for dette feltet

Enhet: Gy

DICOM: (300A, 008B)

field beam_mu: float | None

Beam Monitor Units: Antall Monitor Units (MUs) for dette feltet

field radiation_type: Literal['PHOTON', 'ELECTRON', 'NEUTRON', 'PROTON'] | None

Radiation type: Strålingstype for dette feltet (uten 3D modifikator)

Mulige verdier:

  • PHOTON

  • ELECTRON

  • NEUTRON

  • PROTON

DICOM: (300A, 00C6)

field beam_energy_min: float | None

Min beam energy [MV / MeV]: Minste energi for strålefeltet. Enheten avhenger av strålingstypen

Enhet: MV / MeV

DICOM: (300A, 0114)

field beam_energy_max: float | None

Max beam energy [MV / MeV]: Største energi for strålefeltet. Enheten avhenger av strålingstypen

Enhet: MV / MeV

DICOM: (300A, 0114)

field beam_type: Literal['STATIC', 'DYNAMIC']

Beam type: Felttype

DICOM: (300A,00C4)

field control_point_count: int | None

Control point count: Antall kontrollpunkter for dette feltet

field gantry_start: float | None

Gantry start [deg]: Gantry startvinkel

Enhet: deg

DICOM: (300A, 011E)

field gantry_end: float | None

Gantry end [deg]: Gantry sluttvinkel

Enhet: deg

DICOM: (300A, 011E)

field gantry_rot_dir: Literal['CW', 'CC', 'NONE']

Gantry rotation direction: Retning til gantryrotasjon

Mulige verdier:

  • CW

  • CC

  • NONE

DICOM: (300A, 011F)

field gantry_range: float | None

Gantry range [deg]: Hvor mye gantry roterer

Enhet: deg

DICOM: (300A, 011E)

field gantry_min: float | None

Gantry min [deg]: Minste gantryvinkel

Enhet: deg

DICOM: (300A, 011E)

field gantry_max: float | None

Gantry max [deg]: Største gantryvinkel

Enhet: deg

DICOM: (300A, 011E)

field collimator_start: float | None

Collimator start [deg]: Kollimator startvinkel

Enhet: deg

DICOM: (300A, 0120)

field collimator_end: float | None

Colimator end [deg]: Kollimator sluttvinkel

Enhet: deg

DICOM: (300A, 0120)

field collimator_rot_dir: Literal['CW', 'CC', 'NONE']

Collimator rotation direction: Retning til kollimatorrotasjon

Mulige verdier:

  • CW

  • CC

  • NONE

DICOM: (300A, 0121)

field collimator_range: float | None

Collimator range [deg]: Hvor mange grader kollimator roterer

DICOM: (300A, 0120)

field collimator_min: float | None

Collimator min [deg]: Minste kollimatorvinkel

Enhet: deg

DICOM: (300A, 0120)

field collimator_max: float | None

Collimator max [deg]: Største kollimatorvinkel

Enhet: deg

DICOM: (300A, 0120)

field couch_start: float | None

Couch start [deg]: Bord startvinkel

Enhet: deg

DICOM: (300A, 0122)

field couch_end: float | None

Cough end [deg]: Bord sluttvinkel

Enhet: deg

DICOM: (300A, 0122)

field couch_rot_dir: Literal['CW', 'CC', 'NONE']

Cough rotation direction: Retning til bordrotasjon

Mulige verdier:

  • CW

  • CC

  • NONE

DICOM: (300A, 0122)

field couch_range: float | None

Cough range [deg]: Hvor mange grader bord roterer

DICOM: (300A, 0122)

field couch_min: float | None

Cough min [deg]: Største bordvinkel

Enhet: deg

DICOM: (300A, 0122)

field couch_max: float | None

Cough max [deg]: Minste bordvinkel

Enhet: deg

DICOM: (300A, 0122)

field beam_dose_pt: str | None

Beam dose Specification point [Gy]: Dose til primært normeringsvolum for dette feltet

Enhet: Gy

DICOM: (300A, 0082)

field isocenter: str | None

Isocenter position: Isosenterposisjon i x,y,z

Enhet: [cm, cm, cm]

DICOM: (300A, 012C)

field ssd: float | None

Source to surface distance: Avstand mellom kilde og overflate. Dersom behandlingsmodalitetet er ARC, beregnes gjennomsnittet.

Enhet: cm

DICOM: (300A, 0130)

field treatment_machine: str | None

Treatment machine name: (Lokalt) navn på behandlingsapparat

DICOM: (300A, 00B2)

field scan_mode: Literal['NONE', 'UNIFORM', 'MODULATED', 'MODULATED_SPEC']

Scan mode: Hvordan strålen scannes under behandling.

Mulige verdier:

  • NONE

  • UNIFORM

  • MODULATED

  • MODULATED_SPEC

DICOM: (300A, 0308)

field scan_spot_count: int | None

Scan spot count: Hvor mange punkter som benyttes under spot scanning

DICOM: (300A, 0392)

field beam_mu_per_deg: float | None

Beam MUs per degree: Hvor mange monitoreringsenheter per rotasjonsgrad

field beam_mu_per_cp: float | None

Beam MUs per control point: Hvor mange monitoreringsenheter per kontrollpunkt

field area_min: float | None

Area min [cm2]: Minste feltareal

Enhet: cm2

field area_mean: float | None

Area mean [cm2]: Gjennomsnittlig feltareal

Enhet: cm2

field area_median: float | None

Area median [cm2]: Median feltareal

Enhet: cm2

field area_max: float | None

Area max [cm2]: Største feltareal

Enhet: cm2

field perim_min: float | None

Beam perimeter min [cm]: Minste feltomkrets

Enhet: cm

field perim_mean: float | None

Beam perimeter mean [cm]: Gjennomsnittlig feltomkrets

Enhet: cm

field perim_median: float | None

Beam perimeter median [cm]: Median feltomkrets

Enhet: cm

field perim_max: float | None

Beam perimeter max [cm]: Største feltomkrets

Enhet: cm

field x_perim_min: float | None

Beam perimeter X min [cm]: Minste feltomkrets (X)

Enhet: cm

field x_perim_mean: float | None

Beam perimeter X mean [cm]: Gjennomsnittlig feltomkrets (X)

Enhet: cm

field x_perim_median: float | None

Beam perimeter X median [cm]: Median feltomkrets (X)

Enhet: cm

field x_perim_max: float | None

Beam perimeter X max [cm]: Største feltomkrets (X)

Enhet: cm

field y_perim_min: float | None

Beam perimeter Y min [cm]: Minste feltomkrets (Y)

Enhet: cm

field y_perim_mean: float | None

Beam perimeter Y mean [cm]: Gjennomsnittlig feltomkrets (Y)

Enhet: cm

field y_perim_median: float | None

Beam perimeter Y median [cm]: Median feltomkrets (Y)

Enhet: cm

field y_perim_max: float | None

Beam perimeter Y max [cm]: Største feltomkrets (Y)

Enhet: cm

field complexity_min: float | None

Field complexity min: Minste Young’s feltkompleksitet, beregnet ved jevn vekting i X- og Y- planet (c1=c2=1) over alle kontrollpunktene.

field complexity_mean: float | None

Field complexity mean: Gjennomsnittlig Young’s feltkompleksitet, beregnet ved jevn vekting i X- og Y- planet (c1=c2=1) over alle kontrollpunktene.

field complexity_median: float | None

Field complexity median: Median Young’s feltkompleksitet, beregnet ved jevn vekting i X- og Y- planet (c1=c2=1) over alle kontrollpunktene.

field complexity_max: float | None

Field complexity max: Største Young’s feltkompleksitet, beregnet ved jevn vekting i X- og Y- planet (c1=c2=1) over alle kontrollpunktene.

field cp_mu_min: float | None

Control point MU min: Lavest MU over alle kontrollpunktene

field cp_mu_mean: float | None

Control point MU mean: Gjennomsnittlig MU over alle kontrollpunktene

field cp_mu_median: float | None

Control point MU median: Median MU over alle kontrollpunktene

field cp_mu_max: float | None

Control point MU max: Største MU over alle kontrollpunktene

field beam_complexity: float | None

Beam complexity: Young’s feltkompleksitet, beregnet ved jevn vekting i X- og Y- planet (c1=c2=1). MU-vektet sum av kontrollpunktenes kompleksitet.

pydantic model Datamodel.RT.DICOM

Oversikt over DICOM-datasett

field redcap_repeat_instance: str
field redcap_repeat_instrument: str
field record_id: str | None

Koblingsnøkkel i NORPREG: Angis automatisk for hver pasient. Format er 7-karakter heksadesimal (f.eks. a72bf40)

field dcm_course_id: str | None

DICOM Course ID: Koblingsnøkkel mot Course ID på OIS-nivå

field study_instance_uid: str | None

Study instance UID: Koblingsnøkkel mot DICOM-datasett på Study-nivå

field study_description: str | None

Study description: Studiebeskrivelse fra DICOM-datasett på Study-nivå

field import_datetime: datetime | None

Import datetime: Dato og tid for import av datasett i NORPREG

field series_modality: str | None

Series modality: Modalitet for DICOM-datasett på Series-nivå

field series_description: str | None

Series description: Seriebeskrivelse fra DICOM-datasett på Series-nivå

field series_instance_uid: str | None

Series instance UID: Koblingsnøkkel mot DICOM-datasett på Series-nivå

field files_nb: int | None

Files number: Antall filer i DICOM-datasett for enkelt Series

field series_date: Annotated[str, BeforeValidator(func=dicom_date_formatter, json_schema_input_type=PydanticUndefined), PlainSerializer(func=dicom_date_serializer, return_type=PydanticUndefined, when_used=always)] | None

Series date: Dato for DICOM-datasett på Series-nivå

field station_name: str | None

Station name: Navn på enkeltmodalitet som har generert DICOM-datasett på Series-nivå

pydantic model Datamodel.RT.DR

Oversikt over normeringsvolum:

Oversikt over normeringsvolum, både det primære som brukes som mål på fraksjonsdose og støtte-normeringsvolum

field redcap_repeat_instance: str
field redcap_repeat_instrument: str
field record_id: str | None

Koblingsnøkkel i NORPREG: Angis automatisk for hver pasient. Foreslått format er 7-karakter heksadesimal (f.eks. a72bf40)

field dr_course_id: str | None

FK Dose Reference - Course ID: Koblingsnøkkel mot Course ID på OIS-nivå

field dr_plan_uid: str | None

FK Dose Reference - Plan UID: Koblingsnøkkel mot DICOM-datasett på Plan UID-nivå

field dr_dose_uid: str | None

RT DOse SOP Instance UID: Kobling mot Dosematrisen beregningen er gjort med

field ref_dr_name: str | None

Referenced Dose Reference name: Navn på normeringsvolum, fra Description taggen

DICOM: (300A,0016)

field dr_type: Literal['POINT', 'VOLUME', 'COORDINATES', 'SITE'] | None

Dose Reference structure type: Strukturtype på normeringsvolum

Mulige verdier:

  • POINT

  • VOLUME

  • COORDINATES

  • SITE

DICOM: (300A,0014)

field dr_ref_type: Literal['TARGET', 'ORGAN_AT_RISK'] | None

Dose Reference type: Kategori av normeringsvolum

Mulige verdier:

  • TARGET

  • ORGAN_AT_RISK

DICOM: (300A,0020)

field dr_dose_planned: float | None

Planned dose to Dose Reference [Gy]: Planlagt dose til normeringsvolum

Enhet: Gy

DICOM: (300A,0026)

field dr_dose_delivered: float | None

Delivered dose to Dose Reference [Gy]: Levert dose til normeringsvolum, som summert fra behandlingsfraksjonene

Enhet: Gy

field dr_max_dose: float | None

Max dose to Dose Reference [Gy]: Største tillatt dose til normeringsvolum

Enhet: Gy

field dr_is_primary: bool | None

Is the Dose Reference primary: Er det primært normeringsvolum? -> Brukes til beregning av leverte doser

DICOM: (300A,061B)

pydantic model Datamodel.RT.DVH

Målvolum og behandlingsvolum

Geometriske og dosimetriske data fra målvolum og behandlingsvolum

field redcap_repeat_instance: str
field redcap_repeat_instrument: str
field record_id: str | None

Koblingsnøkkel i NORPREG: Angis automatisk for hver pasient. Foreslått format er 7-karakter heksadesimal (f.eks. a72bf40)

field struct_course_id: str | None

FK Structure - Course ID: Koblingsnøkkel mot Course ID på OIS-nivå

field struct_plan_uid: str | None

FK Structure - Plan UID: Koblingsnøkkel mot DICOM-datasett på Plan UID-nivå

field struct_uid: str | None

RT Structure SOP Instance UID: Denne RT Structure filens SOP Instance UID, brukes for å koble mot denne

field struct_dose_uid: str | None

RT Dose SOP Instance UID: Kobling mot Dosematrisen beregningen er gjort med

field ct_series_uid: str | None

CT Series UID: Koblingsnøkkel mot DICOM-datasett på Plan CT Series UID-nivå

field struct_for_uid: str | None

Frame of Reference UID

DICOM: (0020,0052)

field is_dvh_plan_sum: bool | None

Is the DVH a plan-sum?: Beskriver underliggende struktur en enkelt plan eller hele behandlingsforløpet (for enkelt målvolum). Spesielt aktuell ved replan og plan-of-the-day. Aktuelle koblinger kan være Frame of Reference eller nummerering av plannavn, ikke ferdig implementert.

field mapped_roi_name: str | None

Mapped ROI name: Standardisert / mappet navn på struktur. Her kommer nok litt endringer, f.eks. egne variabler for union, doseregioner, høyre/venstre etc. Behov for egen parsing per institusjon, men håper vi kan ligge tett opp mot KREMT-standarden

field dose_calc_sec: float | None

Dose calculation time [s]: Tid brukt på å beregne DVH

field geom_calc_sec: float | None

Geometric calculation time [s]: Tid brukt på å beregne de ulike geometriske parameterne

field outside_dose_volume: bool | None

Outside dose volume?: Sann dersom strukturen faller utenfor dosevolumet – i så fall beregnes ikke dosen.

field roi_name: str | None

ROI name: Navn på struktur som angitt i TPS

DICOM: (3006, 0026)

field roi_type: Literal['EXTERNAL', 'PTV', 'CTV', 'GTV', 'TREATED_VOLUME', 'IRRAD_VOLUME', 'OAR', 'BOLUS', 'AVOIDANCE', 'ORGAN', 'MARKER', 'REGISTRATION', 'ISOCENTER', 'CONTRAST_AGENT', 'CAVITY', 'BRACHY_CHANNEL', 'BRACHY_ACCESSORY', 'BRACHY_SRC_APP', 'SUPPORT', 'FIXATION', 'DOSE_REGION', 'CONTROL', 'DOSE_MEASUREMENT'] | None

ROI type: Strukturtype. Kun et fåtall av disse typene lagres, da kontrollstrukturer o.l. er uinteressant for registeret

Mulige verdier:

  • EXTERNAL

  • PTV

  • CTV

  • GTV

  • TREATED_VOLUME

  • IRRAD_VOLUME

  • OAR

  • BOLUS

  • AVOIDANCE

  • ORGAN

  • MARKER

  • REGISTRATION

  • ISOCENTER

  • CONTRAST_AGENT

  • CAVITY

  • BRACHY_CHANNEL

  • BRACHY_ACCESSORY

  • BRACHY_SRC_APP

  • SUPPORT

  • FIXATION

  • DOSE_REGION

  • CONTROL

  • DOSE_MEASUREMENT

DICOM: (3006, 00A4)

field origin: str | None

Structure origin: Er strukturen inntegnet manuelt eller via AI-metoder? Kan hentes fra RT Struct tag, men må samle inn litt data før vi kan konkludere hva som kan brukes.

field origin_software: str | None

Structure delineation software: Programvare benyttet for automatisk inntegning. Kan hentes fra RT Struct tag, men må samle inn litt data før vi kan konkludere hva som kan brukes.

field volume: float | None

Structure volume [cc]: Strukturvolum som beregnet fra struktursettet

Enhet: cm3

field min_dose: float | None

Voxelwise min dose [Gy]: Minste dose som beregnet fra struktursettet og RT dose

Enhet: Gy

field mean_dose: float | None

Voxelwise mean dose [Gy]: Gjennomsnittlig dose som beregnet fra struktursettet og RT dose

Enhet: Gy

field max_dose: float | None

Voxelwise max dose [Gy]: Største dose som beregnet fra struktursettet og RT dose

Enhet: Gy

field dist_to_ptv_min: float | None

Min distance to PTV [cm]: Minste avstand mellom konturene for aktuell struktur og (union) PTV

Enhet: cm

field dist_to_ptv_mean: float | None

Mean distance to PTV [cm]: Gjennomsnittlig avstand mellom konturene for aktuell struktur og (union) PTV

Enhet: cm

field dist_to_ptv_median: float | None

Median distance to PTV [cm]: Median avstand avstand mellom konturene for aktuell struktur og (union) PTV

Enhet: cm

field dist_to_ptv_max: float | None

Max distance to PTV [cm]: Største avstand mellom konturene for aktuell struktur og (union) PTV

Enhet: cm

field dist_to_ptv_25: float | None

25th percentile distance to PTV [cm]: 25. persentil for avstand mellom konturene for aktuell struktur og (union) PTV

Enhet: cm

field dist_to_ptv_75: float | None

75th percentile distance to PTV [cm]: 75. persentil fo avstand mellom konturene for aktuell struktur og (union) PTV

Enhet: cm

field scaling_factor: float | None

Dose scaling factor: Skaleringsfaktor for levert DVH-dose. Alle DVH-er og doseverdier tilknyttet denne behandlingsplanen er skalert med denne faktoren.Så dersom planlagt dose er 10 Gy, men bare 5 Gy er levert, vil denne faktoren være 0.5 og dose/volum-verdiene vil reflektere dette.Den er beregnet som levert dose til primært normeringsvolum / planlagt dose til primært normeringsvolum

field surface_area: float | None

ROI surface area [cm2]: Overflatearealet til strukturen

Enhet: cm2

field ptv_overlap: float | None

PTV overlap [cm3]: Volum for overlapp mellom aktuell struktur og (union) PTV

Enhet: cm3

field centroid: str | None

ROI centroid [cm,cm,cm]: Sentroiden til aktuell struktur

Enhet: [cm,cm,cm]

field dist_to_ptv_centroids: float | None

Distance to PTV centroid [cm]: Avstand mellom sentroider for aktuell struktur og (union) PTV. Beregnet med shapely

Enhet: cm

field spread_x: float | None

Spread in X [cm]: Størrese i X-retning på rektangulær prisme som dekker aktuell struktur. Beregnet med shapely

Enhet: cm

field spread_y: float | None

Spread in Y [cm]: Størrese i Y-retning på rektangulær prisme som dekker aktuell struktur. Beregnet med shapely

Enhet: cm

field spread_z: float | None

Spread in Z [cm]: Størrese i Z-retning på rektangulær prisme som dekker aktuell struktur. Beregnet med shapely

Enhet: cm

field cross_section_max: float | None

Max cross section [cm2]: Største tverrsnitt for aktuell struktur over alle snitt. Beregnet med shapely

Enhet: cm2

field cross_section_median: float | None

Median cross section [cm2]: Median tverrsnitt for aktuell struktur over alle snitt. Beregnet med shapely

Enhet: cm2

field centroid_dist_to_iso_min: float | None

Centroid distance to isocenter min [cm]: Minste avstand mellom sentroide for aktuell struktur og isosenter (over alle felt). Beregnet med shapely

Enhet: cm

field centroid_dist_to_iso_max: float | None

Centroid distance to isocenter max [cm]: Største avstand mellom sentroide for aktuell struktur og isosenter (over alle felt). Beregnet med shapely

Enhet: cm

field integral_dose: float | None

Integral dose [cm3 Gy]: Integraldose til aktuell struktur, beregnet som gjennomsnittsdose * volum

Enhet: Gy cm3

field color: str | None

ROI color: Farge til ROI som angitt i TPS.

Enhet: hex (RR,GG,BB)

DICOM: (3006,002A)

field d2: float | None

D2 [Gy]: Dose til 2% av aktuell struktur

Enhet: Gy

field d10: float | None

D10% [Gy]: Dose til 10% av aktuell struktur

Enhet: Gy

field d20: float | None

D20% [Gy]: Dose til 20% av aktuell struktur

Enhet: Gy

field d30: float | None

D30% [Gy]: Dose til 30% av aktuell struktur

Enhet: Gy

field d40: float | None

D40% [Gy]: Dose til 40% av aktuell struktur

Enhet: Gy

field d50: float | None

D50% [Gy]: Dose til 50% av aktuell struktur

Enhet: Gy

field d60: float | None

D60% [Gy]: Dose til 60% av aktuell struktur

Enhet: Gy

field d70: float | None

D70% [Gy]: Dose til 70% av aktuell struktur

Enhet: Gy

field d80: float | None

D80% [Gy]: Dose til 80% av aktuell struktur

Enhet: Gy

field d90: float | None

D90% [Gy]: Dose til 90% av aktuell struktur

Enhet: Gy

field d98: float | None

D98% [Gy]: Dose til 98% av aktuell struktur

Enhet: Gy

field d2cc: float | None

D2cc [Gy]: Dose til 2cc av aktuell struktur

Enhet: Gy

field v5gy: float | None

V5Gy [%]: Volumet av aktuell struktur som mottar 5 Gy

Enhet: %

field v10gy: float | None

V10Gy [%]: Volumet av aktuell struktur som mottar 10 Gy

Enhet: %

field v15gy: float | None

V15Gy [%]: Volumet av aktuell struktur som mottar 15 Gy

Enhet: %

field v20gy: float | None

V20Gy [%]: Volumet av aktuell struktur som mottar 20 Gy

Enhet: %

field v25gy: float | None

V25Gy [%]: Volumet av aktuell struktur som mottar 25 Gy

Enhet: %

field v30gy: float | None

V30Gy [%]: Volumet av aktuell struktur som mottar 30 Gy

Enhet: %

field v35gy: float | None

V35Gy [%]: Volumet av aktuell struktur som mottar 35 Gy

Enhet: %

field v40gy: float | None

V40Gy [%]: Volumet av aktuell struktur som mottar 40 Gy

Enhet: %

field v45gy: float | None

V45Gy [%]: Volumet av aktuell struktur som mottar 45 Gy

Enhet: %

field v50gy: float | None

V50Gy [%]: Volumet av aktuell struktur som mottar 50 Gy

Enhet: %

field v55gy: float | None

V55Gy [%]: Volumet av aktuell struktur som mottar 55 Gy

Enhet: %

field v60gy: float | None

V60Gy [%]: Volumet av aktuell struktur som mottar 60 Gy

Enhet: %

field v65gy: float | None

V65Gy [%]: Volumet av aktuell struktur som mottar 65 Gy

Enhet: %

field v70gy: float | None

V70Gy [%]: Volumet av aktuell struktur som mottar 70 Gy

Enhet: %

field v95: float | None

V95% [%]: Volumet av aktuell struktur som mottar 95% av planlagt dose til målvolum

Enhet: %

field struct_delivered_source: Literal['NPR', 'RTRECORD', ''] | None

Source for “delivered dose”: Hvilken datakilde er brukt for å beregne levert dose?

Mulige verdier:

  • NPR

  • RTRECORD

  • None

pydantic model Datamodel.RT.Fraction

Oversikt over hver behandlingsfraksjon

Som hentet fra RT Record, og samkjørt med NPR-rapporten. For Mosaiq-systemer er det NPR-rapporten som er primærkilden.

field redcap_repeat_instance: str
field redcap_repeat_instrument: str
field record_id: str | None

Koblingsnøkkel i NORPREG: Angis automatisk for hver pasient. Foreslått format er 7-karakter heksadesimal (f.eks. a72bf40)

field fx_course_id: str | None

FK Fraction - Course ID: Koblingsnøkkel mot Course ID på OIS-nivå

field fx_plan_uid: str | None

FK Fraction - Plan UID: Koblingsnøkkel mot DICOM-datasett på Plan UID-nivå

field treatment_machine_name: str | None

Treatment machine station name: Lokalt definert navn på behandlingsapparat

DICOM: (300A,00B2)

field treatment_machine_manufacturer: str | None

Treatment machine manufacturer: Leverandør av behandlingsapparat

DICOM: (0008,0070)

field treatment_machine_model: str | None

Treatment machine model name: Modellnavn på behandlingsapparat

DICOM: (0008,1090)

field fx_dose_delivered: float | None

Fraction dose (delivered) [Gy]: Levert dose for denne behandlingsfraksjonen. Summert BeamDose til primært normeringsvolum

Enhet: Gy

DICOM: (300A,0084)

field fx_datetime: datetime | None

Fraction datetime: Dato og tid for behandlingsfraksjon

DICOM: (3008,0250)

field fx_number: int | None

Fraction number: Fraksjonsnummer (økende per fraksjon)

DICOM: (3008,0022)

field fx_mu_delivered: float | None

Fraction MUs delivered: Antall Monitor Units (MU) levert for denne behandlingsfraksjonen. Summert for hvert kontrollpunt

DICOM: (3008,0044)

field fx_mu_planned: float | None

Fraction MUs planned: Antall Monitor Units (MU) planlagt for denne behandlingsfraksjonen. Summert for hvert kontrollpunt

DICOM: (3008,0042)

field fx_time_delivered: float | None

Fraction time delivered [s]: Lengde i tid i sekunder for denne behandlingsfraksjonen. Summert fra tiden for hvert leverte felt

Enhet: s

DICOM: (3008,003B)

field cumulative_dose_delivered: float | None

Cumulative dose delivered [Gy]: Kumulativ dose så langt for denne behandlingsplanen. Summert BeamDose til primært normeringsvolum i hver RT Record

Enhet: Gy

DICOM: (300A,0084)

field termination_status: Literal['NORMAL', 'OPERATOR', 'MACHINE', 'UNKNOWN'] | None

Termination status: Termineringsstatus for denne behandlingsfraksjonen

Mulige verdier:

  • NORMAL

  • OPERATOR

  • MACHINE

  • UNKNOWN

DICOM: (3008,002A)

field termination_code: str | None

Termination code: Termineringskode for denne behandlingsfraksjonen

field verification_status: Literal['VERIFIED', 'VERIFIED_OVR', 'NOT_VERIFIED'] | None

Verification status: Verifikasjonsstatus for denne behandlingsfraksjonen

Mulige verdier:

  • VERIFIED: treatment verified

  • VERIFIED_OVR: treatment verified with at least one out-of-range value overridden

  • NOT_VERIFIED: treatment verified manually

DICOM: (3008,002C)

field fx_completion: float | None

Fraction completion: Hvor mye av dose til normeringsvolum er levert i henhold til planlagt i denne fraksjonen. Den er beregnet som levert dose til primært normeringsvolum fra RT Records / planlagt dose til primært normeringsvolum Angis som tall mellom 0 (ingenting levert) og 1 (levert som planlagt)

pydantic model Datamodel.RT.Plan

Oversikt over en behandlingsplan

Inneholder både informasjon fra RT Plan-filen, men også fra RT Record for å beregne leverte doser

field redcap_repeat_instance: str
field redcap_repeat_instrument: str
field record_id: str | None

Koblingsnøkkel i NORPREG: Angis automatisk for hver pasient. Foreslått format er 7-karakter heksadesimal (f.eks. a72bf40)

field plan_course_id: str | None

FK Plan - Course ID: Koblingsnøkkel mot Course ID på OIS-nivå

field plan_uid: str | None

Plan SOP Instance UID: Denne RT Plan filens SOP Instance UID, brukes for å koble mot denne

field ct_study_date: Annotated[str, BeforeValidator(func=dicom_date_formatter, json_schema_input_type=PydanticUndefined), PlainSerializer(func=dicom_date_serializer, return_type=PydanticUndefined, when_used=always)] | None

CT Study date: Dato for Plan CT

DICOM: (0008, 0020)

field plan_ct_series_uid: str | None

CT Series UID: UID for den tilknyttede CT-serien

DICOM: (0020,000E)

field plan_for_uid: str | None

Frame of Reference UID

DICOM: (0020,0052)

field plan_study_uid: str | None

Plan Study UID

DICOM: (0020,000D)

field plan_series_uid: str | None

Plan Series UID

DICOM: (0020,000E)

field plan_datetime: datetime | None

RT Plan datetime: Dato og tid for godkjent behandlingsplan

DICOM: (300A, 0006)

field struct_datetime: datetime | None

RT Structure datetime: Dato og tid for inntegnede strukturer

DICOM: (3006, 0008)

field dose_datetime: datetime | None

RT Dose datetime: Dato og tid for dosevolum

DICOM: (300A, 0006)

field plan_label_raw: str | None

Plan label raw: Plannavn (label) som angitt hos OIS

DICOM: (300A, 0002)

field plan_number: str | None

Plan number: Plannummer, NN eller NN.M, som tolket fra OIS. Angir behandlingsserie.replan

DICOM: (300A, 0002)

field plan_name: str | None

Plan name: Plannavn uten plannummer

DICOM: (300A, 0002)

field total_dose_planned: float | None

Total dose planned [Gy]: Planlagt dose i denne behandlingsplanen. Hentet fra RT Plan

Enhet: Gy

DICOM: (300A, 0026)

field total_dose_delivered: float | None

Total dose delivered [Gy]: Levert dose i denne behandlingsplanen. Beregnet som summert dose til (primært) normeringsvolum i hver behandlingsfraksjon / RT Record

Enhet: Gy

field fx_dose_planned: float | None

Fraction dose planned [Gy]: Planlagt fraksjonsdose. Planlagte dose / antall fraksjoner

Enhet: Gy

DICOM: (300A, 0026) / (300a, 0078)

field fxs_planned: int | None

Number of fractions planned: Planlagt antall fraksjoner

DICOM: (300a, 0078)

field fxs_delivered: int | None

Number of fractions delivered: Levert antall fraksjoner (fra tilhørende identifiserte behandlingsfraksjoner)

DICOM: (3008,0022)

field fx_delivered_from: int | None

Fraction number delivered from: Minste fraksjonsnummer funnet i denne behandlingsplanen. Relevant for replanlegging

DICOM: (3008,0022)

field fx_delivered_to: int | None

Fraction number delivered to: Største fraksjonsnummer funnet i denne behandlingsplanen. Relevant for replanlegging

DICOM: (3008,0022)

field fx_delivered_from_datetime: datetime | None

Fraction datetime delivered from: Første fraksjonsdato funnet i denne behandlingsplanen

DICOM: (3008,0250)

field fx_delivered_to_datetime: datetime | None

Fraction datetime delivered to: Siste fraksjonsdato funnet i denne behandlingsplanen

DICOM: (3008,0250)

field plan_completion: float | None

Plan completion: Hvor mye av dose til normeringsvolum er levert i henhold til planlagt for hele behandlingsplanen. Den er beregnet som levert dose til primært normeringsvolum fra RT Records / planlagt dose til primært normeringsvolum Angis som tall mellom 0 (ingenting levert) og 1 (levert som planlagt)

field beam_count: int | None

Beam count: Antall behandlingsfelt i denne behandlingsplanen

DICOM: (300A,0080)

field patient_orientation: Literal['HFP', 'HFS', 'HFDR', 'HFDL', 'FFDR', 'FFDL', 'FFP', 'FFS', 'LFP', 'LFS', 'RFP', 'RFS', 'AFDR', 'AFDL', 'PFDR', 'PFDL'] | None

Patient orientation: Pasientens leie

Mulige verdier:

  • HFP: Head First-Prone

  • HFS: Head First-Supine

  • HFDR: Head First-Decubitus Right

  • HFDL: Head First-Decubitus Left

  • FFDR: Feet First-Decubitus Right

  • FFDL: Feet First-Decubitus Left

  • FFP: Feet First-Prone

  • FFS: Feet First-Supine

  • LFP: Left First-Prone

  • LFS: Left First-Supine

  • RFP: Right First-Prone

  • RFS: Right First-Supine

  • AFDR: Anterior First-Decubitus Right

  • AFDL: Anterior First-Decubitus Left

  • PFDR: Posterior First-Decubitus Right

  • PFDL: Posterior First-Decubitus Left

DICOM: (0018, 5100)

field tps_manufacturer: str | None

TPS manufacturer: Leverandør av programvare for behandlingsplan (TPS, Treatment Planning System)

DICOM: (0008, 0070)

field tps_software_name: str | None

TPS software name: Navn på programvare for behandlingsplan (TPS, Treatment Planning System)

DICOM: (0008, 1090)

field tps_software_version: str | None

TPS software version: Versjon av programvare for behandlingsplan (TPS, Treatment Planning System). Kommaseparert liste dersom det finnes flere.

DICOM: (0018, 1020)

field tx_modality: str | None

Treatment modality: Behandlingsmodalitet, basert på RadiationType, inkluderer 3D eller ARC.

DICOM: (300A, 00C6)

field tx_time: float | None

Treatment time: Behandlingstid, kun relevant for brakyterapi

Enhet: s

DICOM: (300A, 0286)

field total_mu: float | None

Total MUs: Totalt antall Monitor Units (MUs) for hele behandlingsplanen

DICOM: (300a, 0086)

field dose_grid_res_x: float | None

Dose grid resolution X [mm]: Oppløsning i dosegrid i X-retning

Enhet: mm

DICOM: (0028, 0030)

field dose_grid_res_y: float | None

Dose grid resolution X [mm]: Oppløsning i dosegrid i Y-retning

Enhet: mm

DICOM: (0028, 0030)

field heterogeneity_correction: str | None

Heterogeneity correction: Heterogeneitetskorreksjon for vev for doseberegning. Kommaseparert liste over ulike valg som er gjort.

Mulige verdier:

  • IMAGE

  • ROI_OVERRIDE

  • WATER

DICOM: (3004, 0014)

field complexity: float | None

Plan complexity: Young’s plankompleksitet, beregnet ved jevn vekting i X- og Y- planet (c1=c2=1). MU-vektet sum av hver beams kompleksitet, som igjen er en MU-vektet sum av kontrollpunktenes kompleksitet.

field plan_delivered_source: Literal['NPR', 'RTRECORD', ''] | None

Source for “delivered dose”: Hvilken datakilde er brukt for å beregne levert dose?

Mulige verdier:

  • NPR

  • RTRECORD

  • None

Modell for Nasjonalt Pasientregister-data

Denne modulen inneholder data fra NPR og representerer offisiell helsefaglig dokumentasjon fra sykehusene. Den inkluderer opplysninger om inn- og utdatoer, omsorgsnivå, prosedyrekoder, diagnose, behandlingsintensjon og maskin-ID.

pydantic model Datamodel.NPR.NPR
field redcap_repeat_instance: str
field redcap_repeat_instrument: str
field record_id: str | None
field InnDato: datetime

Tidspunkt for start av fraksjon

field UtDato: datetime

Tidspunkt for slutt av fraksjon

field Omsorg: Literal['3', '8']

Poliklinisk eller inneliggende kontakt

field Kno: str

Unik identifikator for oppmøte / behandlingsfraksjon

field Pkode: str

Type behandling eller doseplanlegging

field Intensjon: Literal['Kurativ', 'Palliativ', 'Annet', 'Ukjent']

Behandlingsintensjon

field Machine: str

Unik identifikator for behandlingsmaskinen

field RefVolumNavn: str

Denne samsvarer med primært normeringsvolum (Dose Reference)

field RefVolumId: str

Unik identifikator for referansevolumet

field RegionKode: str

ID for anatomisk region angitt for stråleterapi

field RegionNavn: str

Navn på anatomisk region angitt for stråleterapi

field PlanTotDose: str

Til primært normeringsvolum

field DoseKorr: str

Legges til ved rebestrålinger

field DKMerknad: str
field PlanDose: str

Til primært normeringsvolum

field GittDose: str

Til primært normeringsvolum

field PlanUID: str

Plan UID: Unik identifikator for behandlingsplanen, svarer til SOP Instance UID for RT PLAN

DICOM: (0008,0018)

field PIDno: str
field PersNo: str
field Kjonn: Literal['0', '1', '2', '9']

Kjønn. 0 = Ukjent, 1 = Mann, 2 = Kvinne, 9 = Annet

field Fodselsar: str
field Fodselsdato: date
field Komm: str
field Bydel: str

Kun relevant for Oslo

field Hdiag: str
field NyPas: str

Indikerer om dette er første fraksjon for pasienten (1) eller ikke (0)

field BehSerieId: str

Fra OIS. Benyttes som global Course ID i NORPREG

field BehSerieNavn: str
field BehSerieStart: datetime

Modell for strukturer

Denne modulen lagrer geometriske data fra doseplaner, inkludert organkonturering (ROI-koordinater), Dose-Volume Histogramer (DVH) og beregnet volumdata. Dataene lagres effektivt i Parquet-format og er organisert per behandlingsplan med tilknyttet metadata om helseforetak, plan-år og pseudonymisert koblingsnøkkel.

pydantic model Datamodel.Strukturer.Plan

Parquet storage for array data

Contains * Plan-wide metadata (year / uid / name / HF) * Lists of structure names and types * Nested lists of DVH / ROI arrays

field hf: str | None

Helseforetak: Hvilken KREST-XXX dataene tilhører

field pseudo_key: str | None

Koblingsnøkkel i NORPREG: Angis automatisk for hver pasient. Format er 7-karakter heksadesimal (f.eks. a72bf40).

field plan_year: int | None

År for doseplan: År (YYYY) for doseplan (Study Date)

DICOM: (0008, 0051)

field plan_uid: str | None

Plan UID: SOP Instance UID for RT PLAN objektet, brukes som kobling

field plan_name: str | None

Plan name: Beskrivelse av doseplanen

DICOM: (300A,0002)

field structure_names: List[str]

Strukturnavn: Navn på gjeldende struktur, fra RT Structure

DICOM: (3006,0026)

field structure_types: List[str]

Strukturtype: Type på gjelende struktur (organ, PTV, …), fra RT Structure

DICOM: (3006,00A4)

field structure_volumes: List[float]

Strukturvolum: Beregnet fra koordinatene med dicompyler

Enhet: cc

field dose_calc_sec: List[float]

Doseberegningstid: Hvor lang tid for hele doseberegningen. Avhengig av algoritme: Små strukturer interpoleres mer.

Enhet: s

field dvh_relative_volumes_nested: List[List[float]]

DVH: vektor med relative volumer: Volumene går fra (0…1). Må sees i sammenheng med dvh_doses_gy_nested. Beregnet med dicompyler.

field dvh_doses_gy_nested: List[List[float]]

DVH: vektor med dose: Doseakse med bincenter-verdier, fra 0.05 Gy, 0.15 Gy, … til Dmax for angitt struktur. Må sees i sammenheng med dvh_relative_volumes_nested. Beregned med dicompyler.

Enhet: Gy

field roi_coords_x_mm_nested: List[List[float]]

ROI: Vektor med X-koordinater: Endimensjonal vektor med alle X-koordinatene, må sees i sammenheng med Y,Z. Oppløsningen er angitt i RT Structure.

field roi_coords_y_mm_nested: List[List[float]]

ROI: Vektor med Y-koordinater: Endimensjonal vektor med alle Y-koordinatene, må sees i sammenheng med X,Z. Oppløsningen er angitt i RT Structure.

field roi_coords_z_mm_nested: List[List[float]]

ROI: Vektor med Z-koordinater: Endimensjonal vektor med alle Z-koordinatene, må sees i sammenheng med X,Y. Oppløsningen er angitt i RT Structure (= struktur-snittykkelse).

field roi_coords_offsets_nested: List[List[float]]

ROI: Vektor med Z-offsets: Hvert element angir hvor hver nye Z-koordinat begynner i x,y,z ROI-listene

Modell for kliniske data

Det foreligger mange parametere som er koblet mot ulike kodeverk som ICD10, SNOMED CT, AJCC, MedDRA CTCAE o.l., det vil fremgå hvor der et aktuelt. Denne modulen er under arbeid, og reflekterer “Innrapportering til NORPREG v1” eksportskjema fra DIPS.

pydantic model Datamodel.EPJ.Admin
field record_id: str | None

Pasientnøkkel i NORPREG

field sent_organisation: str | None

Tilhørende HF

field patient_id: str | None

F.eks. fødselsnummer eller D-nummer

field patient_id_type: str | None

Type identifikator som er brukt for pasienten, f.eks. ‘Fødselsnummer’ eller ‘D-nummer’

field patient_postalcode: str | None

Postnummer

field patient_county: str | None

Fylke

pydantic model Datamodel.EPJ.Adverse
field record_id: str | None

Pasientnøkkel i NORPREG

field ae_id: str | None

Adverse ID

field ae_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field ae_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field ae_added_dt: datetime | None

Dato for bivirkningsregistrering

field ae_is_baseline: Code | None

Registrering er for baseline?

field ae_cat: Code | None

Kategori for bivirkning

field ae_term: Code | None

Term for bivirkning

Kodeverk: MedDRA

field ae_grade: Code | None

Gradering for bivirkning

Kodeverk: CTCAE

pydantic model Datamodel.EPJ.Anatomy
field record_id: str | None

Pasientnøkkel i NORPREG

field anat_id: str | None

Anatomy ID

field anat_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field anat_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field anat_site: Code | None

Kroppssted

field anat_specific_site: Code | None

Spesifikt sted

field anat_side: Code | None

Kroppsside

pydantic model Datamodel.EPJ.AnatomyFreeText
field record_id: str | None

Pasientnøkkel i NORPREG

field anat_free_id: str | None

AnatomyFreeText ID

field anat_free_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field anat_free_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field anat_site_txt: str | None

Kroppsted (fritekst)

field anat_side_txt: str | None

Kroppsside (fritekst)

pydantic model Datamodel.EPJ.Clinic
field record_id: str | None

Pasientnøkkel i NORPREG

field cln_id: str | None

Clinic ID: Lages automatisk basert på innkommende eksportskjema fra EPJ

field cln_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field cln_weight: CodeValue | None

Kroppsvekt ved diagnose

Enhet: kg

field cln_height: CodeValue | None

Høyde

Enhet: cm

field cln_education: Code | None

Høyeste fullførte utdanningsnivå

field cln_marital: Code | None

Samlivsstatus

field cln_work: Code | None

Arbeidsstatus

field cln_care_u18: Code | None

Omsorgsansvar barn < 18 år

field cln_care_o18: Code | None

Omsorgsansvar voksne

field cln_smoking: Code | None

Røyking

field cln_smoking_qty: CodeValue | None

Røyking

Enhet: pakkeår

field cln_other_tobacco: Code | None

Røykfri tobakk

field cln_alcohol: Code | None

Alkoholbruk

field cln_alcohol_qty: CodeValue | None

Alkoholforbruk (mengde)

field cln_subj_hearing_imp: Code | None

Subjektiv hørselsnedsettelse: Brukes da CTCAE krever audimetri

field cln_ecog: Code | None

ECOG funksjonsstatus

field cln_karnofsky: Code | None

Karnofsky performance status

field cln_ctnm_t: Code | None

Primærtumor (cT)

field cln_ctnm_n: Code | None

Regionale lymfeknuter (cN)

field cln_ctnm_m: Code | None

Fjernmetastase (cM)

field cln_ctnm_r: Code | None

Residiv (r)

field cln_ctnm_stage: Code | None

Klinisk stadium

field cln_ptnm_t: Code | None

Primærtumor (pT)

field cln_ptnm_n: Code | None

Regionale lymfeknuter (pN)

field cln_ptnm_m: Code | None

Fjernmetastase (pM)

field cln_ptnm_r: Code | None

Residiv (r)

field cln_diagnosis: Code | None

Primærdiagnose

Kodeverk: ICD10

field cln_other_method: Code | None

Annen klassifisering (metode)

field cln_other_result: Code | None

Annen klassifisering (resultat)

field cln_multifocal: Code | None

Multifokal tumor

field cln_multifocal_basis: Code | None

Multifokal tumor (grunnlag)

field cln_multi_prim: Code | None

Multiple primærtumorer

field cln_multi_prim_basis: Code | None

comorbidities: List[“Comorbidity”] = Field(default_factory=list, exclude=True, alias=”Comorbidity-tabell”, document_only=True) prev_cancers: List[“PrevCancer”] = Field(default_factory=list, exclude=True, alias=”PrevCancer-tabell”, document_only=True) prev_treatments: List[“PrevTreatment”] = Field(default_factory=list, exclude=True, alias=”PrevTreatment-tabell”, document_only=True) adverse_events: List[“Adverse”] = Field(default_factory=list, exclude=True, alias=”Adverse-tabell”, document_only=True) radiology: List[“Radiology”] = Field(default_factory=list, exclude=True, alias=”Radiology-tabell”, document_only=True) anatomy: List[“Anatomy”] = Field(default_factory=list, exclude=True, alias=”Anatomy-tabell”, document_only=True) anatomy_freetext: List[“AnatomyFreeText”] = Field(default_factory=list, exclude=True, alias=”AnatomyFreeText-tabell”, document_only=True) mets: List[“Mets”] = Field(default_factory=list, exclude=True, alias=”Mets-tabell”, document_only=True) lymph_mets: List[“LymphMets”] = Field(default_factory=list, exclude=True, alias=”LymphMets-tabell”, document_only=True) lab_samples: List[“LabSample”] = Field(default_factory=list, exclude=True, alias=”LabSample-tabell”, document_only=True) lab_tests: List[“LabTest”] = Field(default_factory=list, exclude=True, alias=”LabTest-tabell”, document_only=True) treatment_summaries: List[“TreatmentSummary”] = Field(default_factory=list, exclude=True, alias=”TreatmentSummary-tabell”, document_only=True)

Multiple primære (grunnlag)

pydantic model Datamodel.EPJ.Code

Basemodell for kodeverdi-par, som brukes mange steder i datamodellen. Inneholder både kodeverdi, vist verdi og terminologi.

field v: str | None

Kode

field dn: str | None

Vist verdi

field term: str | None

Terminologi

pydantic model Datamodel.EPJ.CodeValue

Basemodell for kodeverdi-par med tilhørende målt verdi og enhet, som brukes mange steder i datamodellen.

field magnitude: float | None

Målt verdi

field unit: str | None

Enhet

pydantic model Datamodel.EPJ.CodeValueBoth

Basemodell for kodeverdi-par med tilhørende målt verdi og enhet, samt kodeverdi/vist verdi og terminologi. Brukes enkelte steder i datamodellen.

field v: str | None

Kode

field dn: str | None

Vist verdi

field term: str | None

Terminologi

field magnitude: float | None

Målt verdi

field unit: str | None

Enhet

pydantic model Datamodel.EPJ.Comorbidity
field record_id: str | None

Pasientnøkkel i NORPREG

field cmrb_id: str | None

Comorbidity ID

field cmrb_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field cmrb_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field cmrb: Code | None

Komorbiditet: Brukes for å registrere komorbiditet ved diagnose, f.eks. hjerte- og karsykdom, diabetes, KOLS, nevrologisk sykdom etc. Kan være både spesifikke sykdommer (ICD10) og mer generelle kategorier av sykdommer (ICD10-kapitler)

Kodeverk: ICD10

pydantic model Datamodel.EPJ.Course
field record_id: str | None

Pasientnøkkel i NORPREG

field crs_id: str | None

Course ID: Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field sent_dt: datetime | None

Sendingstidspunkt eksportskjema

field export_template_id: str | None

Innrapporteringsskjema versjon

field crs_tumor_group: Code | None

Forløpstype: Hvilken overordnet kreftsykdom forløpet gjelder

field crs_inform_norpreg: Code | None

Informert pasienten om reservasjon til NORPREG: Om pasienten er informert om muligheten til å reservere seg mot registrering i NORPREG.

field clinics: List[Clinic] [Optional]
field studies: List[Studies] [Optional]
pydantic model Datamodel.EPJ.LabSample
field record_id: str | None

Pasientnøkkel i NORPREG

field sample_id: str | None

Sample ID

field sample_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field sample_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field sample_req_id: str | None

Rekvisisjonsnummer

field sample_name: str | None

Prøvemateriale navn/ID

field sample_dt: datetime | None

Prøvedato

field sample_method: Code | None

Prøvetakingsmetode

field sample_type: Code | None

Type prøvemateriale

pydantic model Datamodel.EPJ.LabTest
field record_id: str | None

Pasientnøkkel i NORPREG

field test_id: str | None

LabTest ID

field test_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field test_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field test_sample_id: str | None

Sample ID (FK)

field test_type: str | None

Type prøvetakingsmetode: F.eks. genetisk, virologisk, biologisk

field test_name: Code | None

Analysenavn

field test_result: CodeValueBoth | None

Resultat

pydantic model Datamodel.EPJ.LymphMets
field record_id: str | None

Pasientnøkkel i NORPREG

field lmets_id: str | None

LymphMets ID

field lmets_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field lmets_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field lmets_line: Code | None

Anatomisk linje

field lmets_site: Code | None

Kroppssted

field lmets_side: Code | None

Kroppsside

field lmets_other_meth: str | None

methods: List[“MetsMethod”] = Field(default_factory=list, exclude=True, alias=”MetsMethod-tabell”, document_only=True)

Annen metode

pydantic model Datamodel.EPJ.Mets
field record_id: str | None

Pasientnøkkel i NORPREG

field mets_id: str | None

Mets ID

field mets_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field mets_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field mets_line: Code | None

Anatomisk linje

field mets_site: Code | None

Kroppssted

field mets_side: Code | None

Kroppsside

field mets_other_meth: str | None

methods: List[“MetsMethod”] = Field(default_factory=list, exclude=True, alias=”MetsMethod-tabell”, document_only=True)

Annen metode

pydantic model Datamodel.EPJ.MetsMethod
field record_id: str | None

Pasientnøkkel i NORPREG

field meth_id: str | None

MetsMethod ID

field meth_mets_id: str | None

Mets ID (FK)

field meth_lmets_id: str | None

LymphMets ID (FK)

field meth_meth: Code | None

Grunnlag for diagnose: Grunnlaget for diagnose av metastase, f.eks. klinisk, radiologisk, patologisk etc.

pydantic model Datamodel.EPJ.PrevCancer
field record_id: str | None

Pasientnøkkel i NORPREG

field prvc_id: str | None

PrevCancer ID

field prvc_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field prvc_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field prvc_prev_crs_id: str | None

PrevCancer Course ID (FK): Henviser til tidligere Course ID om den finnes

field prvc_diag: Code | None

Tidligere kreftdiagnose

Kodeverk: ICD10

field prvc_confirm_dt: datetime | None

Dato (ca) for tidligere kreftdiagnose

pydantic model Datamodel.EPJ.PrevTreatment
field record_id: str | None

Pasientnøkkel i NORPREG

field prvt_id: str | None

PrevTreatment ID

field prvt_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field prvt_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field prvt_start_dt: datetime | None

Behandlingsstart

field prvt_stop_dt: datetime | None

Behandlingsslutt

field prvt_proc: Code | None

Prosedyre

pydantic model Datamodel.EPJ.Radiology
field record_id: str | None

Pasientnøkkel i NORPREG

field rad_id: str | None

Radiology ID

field rad_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field rad_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field rad_dt: datetime | None

Dato for undersøkelse

field rad_modality: Code | None

Modalitet

field rad_conclusion: Code | None

Resymé

pydantic model Datamodel.EPJ.Studies
field record_id: str | None

Pasientnøkkel i NORPREG

field study_id: str | None

Studies ID

field study_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field study_name: str | None

Studienavn

field study_comment: str | None

Kommentar

field study_person: str | None

Kontaktperson

pydantic model Datamodel.EPJ.TreatmentMedicine
field record_id: str | None

Pasientnøkkel i NORPREG

field txmed_id: str | None

TreatmentMedicine ID

field txmed_txsum_id: str | None

TreatmentSummary ID (FK)

field txmed_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field txmed_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field txmed_rx_name: str | None

Navn på legemiddel / virkestoff / kur

field txmed_category: Code | None

Behandlingskategori / type MKB

field txmed_dose: CodeValue | None

Totalmengde i perioden

field txmed_start_dt: datetime | None

Startdato for bruk

field txmed_stop_dt: datetime | None

Sluttdato for bruk

pydantic model Datamodel.EPJ.TreatmentRT
field record_id: str | None

Pasientnøkkel i NORPREG

field txrt_id: str | None

TreatmentRT ID

field txrt_txsum_id: str | None

TreatmentSummary ID (FK)

field txrt_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field txrt_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field txrt_type: Code | None

Type stråleterapi

field txrt_first_fx_dt: datetime | None

Dato for første fraksjon

field txrt_last_fx_dt: datetime | None

Dato for siste fraksjon

field txrt_summary_txt: str | None

Oppsummering av dose og fraksjonering

field txrt_reirr: Code | None

Kategori av rebestråling

field txrt_comp: Code | None

Er det gjort en komparativ doseplan?

pydantic model Datamodel.EPJ.TreatmentSummary
field record_id: str | None

Pasientnøkkel i NORPREG

field txsum_id: str | None

TreatmentSummary ID

field txsum_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field txsum_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field txsum_intention: Code | None

Behandlingsintensjon ved MDT

field txsum_category: Code | None

Behandlingkategori (relativt til kirurgi)

field txsum_description_txt: str | None

Ytterligere beskrivelse

field txsum_surg_summary_txt: str | None

Overordnet beskrivelse av kirurgi

field txsum_med_summary_txt: str | None

Overordnet beskrivelse av medikamentell behandling

field txsum_rt_summary_txt: str | None

surgeries: List[“TreatmentSurgery”] = Field(default_factory=list, exclude=True, alias=”TreatmentSurgery-tabell”, document_only=True) medicines: List[“TreatmentMedicine”] = Field(default_factory=list, exclude=True, alias=”TreatmentMedicine-tabell”, document_only=True) radiotherapy: List[“TreatmentRT”] = Field(default_factory=list, exclude=True, alias=”TreatmentRT-tabell”, document_only=True)

Overordnet beskrivelse av strålebehandling

pydantic model Datamodel.EPJ.TreatmentSurgery
field record_id: str | None

Pasientnøkkel i NORPREG

field txsurg_id: str | None

TreatmentSurgery ID

field txsurg_txsum_id: str | None

TreatmentSummary ID (FK)

field txsurg_cln_id: str | None

Clinic ID (FK): Lages automatisk basert på innkommende eksportskjema fra EPJ

field txsurg_crs_id: str | None

Course ID (FK): Koblingsnøkkel for behandlingsserie: hentes fra NPR-meldingen

field txsurg_code: Code | None

Prosedyrekode

field txsurg_target: Code | None

Operasjon utført for

field txsurg_performed_dt: datetime | None

Dato for utført operasjon

Modell for kodeliste for koblingsnøkler

Denne modellen benyttes for å lagre og kryptere direkte personidentifiserbare opplysninger i registeret, samt holde rede på dataflyt med eksterne kilder og loggføre reservasjonsstatus. Deler av denne kodelisten er kryptert.

pydantic model Datamodel.Kodeliste.Address

Tabell for adresser

Benytt dt_added for å tolke postnummer, kommunenummer etter da gjeldende standard.

field id: int

Radindeks for adresse: Dannes automatisk ved opprettelse av ny adresse

field dt_added: datetime

Dato lagt til: Dato for når aktuell adresse ble lagt til

field fk_patient_key: int

Registernøkkel: Pseudonymisert nøkkel for pasienten i registeret

field zip_code_aes: str

Postnummer: Postnummer da pasienten ble lagt inn

Kryptert datafelt

field bydel_aes: str

Bydel: Aktuell for Oslo.

Kryptert datafelt

field kommune_nr_aes: str

Kommunenummer: Kommunenummer da pasienten ble lagt inn

Kryptert datafelt

pydantic model Datamodel.Kodeliste.Course

Tabell for behandlingsforløp

field id: int

Radindeks for behandlingsforløp: Dannes automatisk ved opprettelse av nytt behandlingsforløp

field dt_added: datetime

Dato lagt til: Dato for når aktuelt behandlingsforløp ble lagt til

field fk_patient_key: str

Registernøkkel: Pseudonymisert nøkkel for pasienten i registeret

field patient: Patient | None

Tilknyttet pasient: Pasientobjekt som hører til dette behandlingsforløpet

field fk_datastatus_id: int

FK datastatus ID: Koblingsnøkkel mot datastatus for dette behandlingsforløpet

field data_status: DataStatus | None
field ois_course_id_aes: str

OIS course ID: Koblingsnøkkel for behandlingsforløp / course i stråleterapisystem

Kryptert datafelt

field epj_course_id_aes: str

EPJ course ID: Koblingsnøkkel for behandlingsforløp / sak i journalsystem

Kryptert datafelt

pydantic model Datamodel.Kodeliste.DataStatus

Datastatus

field id: int

Radindeks for datastatus: Dannes automatisk ved opprettelse av ny statusmelding

field fk_course_id: int

FK course ID: Koblingsnøkkel for behandlingsforløp

field course: Course | None

Tilknyttet behandlingsserie: Course-objekt som hører til denne datastatusen

field epj_status: int

EPJ status: Statuskode for dataoverføring EPJ. Har behov for en god datamodell eller støttetabell her, f.eks. for å logge hver hendelse med statusmeldinger

field dicom_status: int

DICOM status: Statuskode for dataoverføring DICOM. Har behov for en god datamodell eller støttetabell her, f.eks. for å logge hver hendelse med statusmeldinger

field prom_status: int

PROMs status: Statuskode for pasientrapporterte data. Har behov for en god datamodell eller støttetabell her, f.eks. for å logge hver hendelse med statusmeldinger

pydantic model Datamodel.Kodeliste.IDNumberHistory

ID-historikk

Historikk over de ulike FNR/DNR/FHNR/HNR pasienten har hatt, til bruk ved kobling av pasienter som får ny nummer.

field id: int

Radindeks for adresse: Dannes automatisk ved opprettelse av ny adresse

field fk_patient_key: int

Registernøkkel: Pseudonymisert nøkkel for pasienten i registeret

field id_number_aes: str

Pasientidentifikasjon: Kan være av ulik id_type

Kryptert datafelt

field id_type: Literal['FNR', 'DNR', 'FHNR', 'HNR']

Type av pasientidentifikasjon.: Kan være av ulik id_type

field dt_added: datetime

Dato lagt til: Dato for når aktuell adresse ble lagt til

pydantic model Datamodel.Kodeliste.MapInstanceUID

Kobling av Instance UID

field id: int

Radindeks for Instance UID-kobling: Dannes automatisk ved opprettelse av ny statusmelding

field fk_course_id: int

FK course ID: Koblingsnøkkel for behandlingsserie

field course: Course | None

Tilknyttet behandlingsserie: Course-objekt som hører til denne datastatusen

field instance_uid_orig: str

Opprinnelig Instance UID: Den opprinnelige verdien av Instance UID fra kildedata

field instance_uid_pseudo: str

Pseuonymisert Instance UID: Den pseudonymiserte verdien av Instance UID i NORPREG

pydantic model Datamodel.Kodeliste.MapSeriesUID

Kobling av Series UID

field id: int

Radindeks for Series UID-kobling: Dannes automatisk ved opprettelse av ny statusmelding

field fk_course_id: int

FK course ID: Koblingsnøkkel for behandlingsserie

field course: Course | None

Tilknyttet behandlingsserie: Course-objekt som hører til denne datastatusen

field series_uid_orig: str

Opprinnelig Series UID: Den opprinnelige verdien av Series UID fra kildedata

field series_uid_pseudo: str

Pseuonymisert Series UID: Den pseudonymiserte verdien av Series UID i NORPREG

pydantic model Datamodel.Kodeliste.MapStudyUID

Kobling av Study UID

field id: int

Radindeks for Study UID-kobling: Dannes automatisk ved opprettelse av ny statusmelding

field fk_course_id: int

FK course ID: Koblingsnøkkel for behandlingsserie

field course: Course | None

Tilknyttet behandlingsserie: Course-objekt som hører til denne datastatusen

field study_uid_orig: str

Opprinnelig Study UID: Den opprinnelige verdien av Study UID fra kildedata

field study_uid_pseudo: str

Pseuonymisert Study UID: Den pseudonymiserte verdien av Study UID i NORPREG

pydantic model Datamodel.Kodeliste.Patient

Pasientobjekt

Kan inneholde flere behandlingsforløp. Da benyttes samme pasient, som inneholder pekere mot flere courses.

field patient_key: int

Registernøkkel: Pseudonymisert nøkkel for pasienten i registeret. Angis automatisk for hver pasient. Foreslått format er 7-karakter heksadesimal (f.eks. a72bf40)

field dt_added: datetime

Dato lagt til: Dato for når pasienten ble lagt inn i registeret. Angis når enten DICOM-datasettet eller EPJ-datasettet ankommer.

field fk_registry_id: int

FK registernøkkel

field registry: Registry | None

Tilhørende register: Hvilket KREST ligger pasienten i? Dersom det er flere, som i behandling ved lokalsykehus, gjelder første.

field addresses: List[Address] [Optional]

Adresser: Pasientens tilhørende adresser

field courses: List[Course] [Optional]

Behandlingsforløp: Pasientens tilhørende behandlingsforløp. Knyttet til Course ID i OIS og sak i DIPS.

field id_history: List[IDNumberHistory] [Optional]

ID-historikk: Pasientens ID-historikk

field id_number_aes: str

Pasientidentifikasjon: Kan være av ulik id_type

Kryptert datafelt

field id_type: Literal['FNR', 'DNR', 'FHNR', 'HNR']

Type av pasientidentifikasjon.: Kan være av ulik id_type

field birth_date_aes: str

Pasientens fødselsdato

Enhet: YYYY-MM-DD

Kryptert datafelt

field ois_patient_id_aes: str

OIS pasient ID: PasientID i stråleterapisystem (f.eks. PatientSer i Aria)

Kryptert datafelt

field epj_patient_id_aes: str

EPJ pasient ID: PasientID i journalsystem

Kryptert datafelt

field npr_patient_id_aes: str

NPR pasient ID: PasientID i NPR

Kryptert datafelt

pydantic model Datamodel.Kodeliste.Registry

De ulike registerne

field id: int

Radindeks for registeret

field name: Literal['NORPREG', 'KREST-UNN', 'KREST-NLSH', 'KREST-SOH', 'KREST-AAL', 'KREST-HUS', 'KREST-SUS', 'KREST-SSHF', 'KREST-SIG', 'KREST-OUS']

Registernavn: Navn på registeret. Ikke alle registerne er formaliserte, så navnene kan unnvike. Formaliserte registre er markert.

Mulige verdier:

  • NORPREG: Norsk proton- og stråleterapiregister

  • KREST-UNN: Kvalitetsregister for stråleterapi Universitetssykehuset Nord-Norge

  • KREST-NLSH: Kvalitetsregister for stråleterapi Nordlandssykehuset

  • KREST-SOH: Kvalitetsregister for stråleterapi St. Olavs hospital

  • KREST-AAL: Kvalitetsregister for stråleterapi Ålesund sjukehus

  • KREST-HUS: Kvalitetsregister for stråleterapi Haukeland universitetssykehus

  • KREST-SUS: Kvalitetsregister for stråleterapi Stavanger universitetssykehus

  • KREST-SSHF: Kvalitetsregister for stråleterapi Sørlandet sykehus

  • KREST-SIG: Kvalitetsregister for stråleterapi Sykehuset innlandet

  • KREST-OUS: Kvalitetsregister for stråleterapi Oslo universitetssykehus (formalisert 2025-01)

field patients: List[Patient] [Optional]

Tilknyttede pasienter