Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Innledning

Løsningen for digitale skjema på Helsenorge består av følgende hovedkomponenter:

Gliffy
imageAttachmentIdatt1205076094
macroIdaa40c3e2-29df-4359-8ba0-f0ced995afe7
baseUrlhttps://helsenorge.atlassian.net/wiki
nameskjemaløsning
diagramAttachmentIdatt1204551784
containerId1208614915
timestamp16176916487821702017010559

  1. En aktør kan sende inn en skjemaoppgave til innbygger. Her benyttes FHIR ressurs Task

...

  1. Innbygger får varsel om mottatt skjemaoppgave og vil logge seg på Helsenorge. Der vil innbygger se oppgaven samt kunne gå til utfylling av skjema.

  2. Innbygger kan også søke opp skjemaer, eller starte skjemautfylling via dyplenker, og fylle ut disse uten at en aktør har sendt inn en skjemaoppgave.

  3. Dersom et skjema som skal fylles ut ligger i Helsenorge skjemakatalog, hentes skjemadefinisjonen fra Skjemakatalogen og sendes med til Helsenorge skjemautfyller når utfylling starter.

  4. Dersom skjemaoppgaven peker til en ekstern skjemautfyller, aktiveres denne når innbygger velger å starte Skjemaoppgaven. Det skal være sømløst uthopp fra Helsenorge, dvs. at:

    1. Innbygger slipper å logge inn på nytt

    2. Innbygger kommer direkte til det aktuelle skjemaet

    3. Kontekst bevares når det gjelder representasjonsforhold (om innbyggeren representerer seg selv eller en annen gjennom foreldreansvar eller fullmakt).

  5. Når skjema er fylt ut av innbygger i Helsenorge skjemautfyller (enten som resultat av en innsendt skjemaoppgave eller at innbygger selv har valgt et skjema), vil:

    1. Helsenorge sende resultatet tilbake til aktør(er) som skal ha skjemasvaret

...

      1. Mottager(e) av skjemasvar kan være angitt i Skjemaoppgaven.

      2. Mottager(e) kan være fast definert på skjemaer som ligger i Helsenorge Skjemakatalog

      3. Noen skjema i skjemakatalogen tilbyr innbygger å velge mottager fra et sett forhåndsdefinerte mottagere

    1. PDF-kopi og strukturert skjemasvar arkiveres fra forretninglogikken på Helsenorge. Det lagres både strukturert skjemasvar (QuestionnaireRespons) og PDF-versjon i innbyggers Helsearkiv på Helsenorge.

...

    1. (Det kan også lagres andre FHIR-ressurser som er utledet av det strukturerte skjemasvaret)

  1. Når skjema er fylt ut av innbygger i ekstern skjemautfyller, vil:

    1. Ekstern skjemautfyllere selv sende utfylt skjemasvar til mottager uavhengig av Helsenorge.

    2. En ekstern skjemautfyller skal alltid sende en lesbar (PDF) kopi av utfylt skjema til

...

    1. Helsenorge slik at innbygger har en kopi av dette

...

Dersom Helsenorge skjemautfyller benyttes, aktiveres denne fra forretninglogikken på Helsenorge. Skjemautfyller sender både strukturert skjemasvar (QuestionnaireRespons) og PDF-versjon tilbake til Helsenorge.

...

Dersom skjemaoppgaven peker til en eksterne skjemautfyller aktiveres denne når innbygger velger å fylle ut skjema fra Skjemaoppgaven.

...

Dersom et skjema som skal fylles ut ligger i Helsenorge skjemakatalog, hentes skjemadefinisjonen ned og sendes med til skjemautfyller.

    1. i sitt Helsearkiv på Helsenorge

  1. Noen eksterne skjemautfyllere er ikke laget for (har hjemmel til) å lagre pasientopplysninger. For å understøtte et slikt scenario tilbyr Helsenorge etter separat avtale at en ekstern skjemautfyller kan mellomlagre- og hente ut igjen, et

...

Aktørers integrasjon med Helsenorge

Gjennom bruk av FHIR-ressurser i skjemaløsningen har vi lagt til rette for at grensesnittene 1, 4 og 6 over kan benytte forskjellig teknologi for integrasjon. Alle disse tre grensesnittene understøttes med meldingsformidling, og vil også komme med synkron integrasjon gjennom API’er.

...

  1. delvis utfylt skjema

...

API’er

Alle FHIR API’er på Helsenorge støtter et subset av den fulle spesifikasjonen: http://hl7.org/fhir/http.html

  • Det skal benyttes HTTPS

  • Det støttes ikke versjonering av FHIR-ressurser

  • Klienter kan ikke velge hvilken respons som ønskes ved å benytte “Prefer Header for HTTP”. Avhengig av hvilken HTTP operasjon som benyttes, returneres enten hele FHIR-ressursen eller kun resultatet av operasjonen (se under).

Update - HTTP PUT

Klienter kan benytte “Update” for å kreere en ny ressurs på Helsenorge med en ressurs ID bestemt av klienten. Ressurs-ID’en skal være den samme i URL’en og i FHIR-ressursen. ID’en skal være globalt unik (dvs. en GUID). Ressursen kan siden aksesseres i API’er ved angi Type og Id.

Støttede FHIR-ressurs typer:

  • Task

  • DocumentReference

Request/response:

  • HTTP-request: PUT [base]/[type]/[id]

  • HTTP-body: En FHIR ressurs av type [type]- Ressursens-ID skal være satt og være global unik.

  • HTTP respons:

Create - HTTP POST

...

...

  1. Helsenorge

...

  1. .

...

Støttede FHR-ressurs typer:

  • Task

  • DocumentReference

Request/response:

  • HTTP-request: POST [base]/[type]

  • HTTP-body: En FHIR ressurs av type [type] (Dersom ressursen har en ressurs-ID fra før, vil denne endres)

  • HTTP respons:

    • OK: 201 - created. Ved suksessfull opprettelse av ressursen og påfølgende respons SKAL Location headeren være satt inneholdende logisk id , i tillegg returneres den opprettede ressursen i sin helhet.

    • Feil: 400 - error + FHIR OperationOutcome

Transaction - HTTP POST

Støttede FHR-ressurs typer:

  • Bundle (med Bundle.type = “transaction”)

    • Task

    • Questionnaire

    • QuestionnaireResponse

    • DocumentReference

Request/response:

  • HTTP-request: POST [base]

  • HTTP-body:

    • En FHIR ressurs av type Bundle (Dersom Bundle har en ressurs-ID fra før, vil denne endres)

    • Hver ressurs i Bundle SKAL etterfølges av hvilken operasjon som skal utføres. Det støttes KUN HTTP PUT, dvs. at alle ressursene i Bundelen må ha en ressurs ID tilordnet av klienten. Denne skal være en GUID.

  • HTTP respons:

    • OK: 200 + Bundle med Bundle.type = “transaction-response”

    • Feil: 400 - error + Bundle med et sett FHIR OperationOutcome

Read - HTTP GET

Støttede FHIR-ressurs typer:

  • Task

  • DocumentReference

  • Questionnaire

  • QuestionnaireResponse

Request/response:

  • HTTP-request: GET [base]/[type]/[id]

  • HTTP-body: N/A

  • HTTP respons:

    • OK: 200 - OK + FHIR-resource of [type] with resource-ID [id]

    • Feil: 404 - Not Found

Search - HTTP GET (med parametere)

Støttede FHIR-ressurs typer:

  • Task

  • DocumentReference

  • Questionnaire

  • QuestionnaireResponse

Request/response:

  • HTTP-request: GET [base]/[type] {?[parameters]}

  • HTTP-body: N/A

  • HTTP respons:

    • 200 OK + Bundle med Bundle.type = “searchset” med en samling av FHIR ressurser av type [type] og som tilfredsstiller søkeparameterne. Dersom søket ikke ga noe resultat inneholder Bundelen ingen ressurser.

    • Feil:

      • 401 - Not Authorized

      • 404 - Not Found - Hvis man ikke støtter ressurstypen

Delete - HTTP DELETE

Støttede FHIR-ressurs typer:

  • DocumentReference

  • QuestionnaireResponse

Request/response:

  • HTTP-request: DELETE [base]/[type]/[id]

  • HTTP-body: N/A

  • HTTP respons:

    • OK: 204 - No Content

    • Feil: 405 - Method not Allowed

...