Virhetilanteeseen päätyneen pyynnön vastaus

Virhetilanteissa vastauksena palautuu HTTP virhestatuskoodi sekä HTTP bodyssa OperationOutcome resurssi-instanssi, jolla ilmaistaan tarkempi virhe.

REST virhevastaus

OperationOutcome resurssia ei ole profiloitu. Siitä löytyy tietoa OperationOutcome FHIR määrittelystä.

Yksittäinen virhe ilmoitetaan issue-elementissä. OperationOutcome sisältää vähintään yhden issue-objektin, jossa on virhekoodiston Kanta-palvelut - Prosessivirheet ja huomautukset (1.2.246.537.5.40112.2006) mukainen virhekoodi:

  • severity -elementin arvo on ”error”
  • code -elementin arvo on "processing"
  • details -elementin tietotyyppi on CodeableConcept ja se rakentuu Coding -tietotyypistä ja text -elementistä (text -elementtiä ei käytetä palautettavassa virhevastauksessa), coding -tietotyypin elementeissä tiedot annetaan seuraavasti:
    • system -elementissä virheiden ilmoittamisessa käytettävä koodisto Kanta-palvelut - Prosessivirheet ja huomautukset (1.2.246.537.5.40112.2006)
    • code -elementissä varsinainen virhekoodi Kanta-palvelut - Prosessivirheet ja huomautukset koodiston arvo
    • display elementissä virhekoodia vastaava selite Kanta-palvelut - Prosessivirheet ja huomautukset - koodiston mukaisesti
  • diagnostics -elementillä voidaan palauttaa virheen tarkempi kuvaus

Esimerkki virheilmoituksesta, joka palautuu OperationOutcome resurssi-instanssissa (huom. alla olevaa virheiden koodistoa ei ole vielä lopullisesti sovittu eikä profiloitu OperationOutcome resurssiin):

{
    "resourceType": "OperationOutcome",
    "issue": [
        {
            "severity": "error",
            "code": "processing",
            "details": {
                "coding": [
                    {
                        "system": "urn:oid:1.2.246.537.5.40112.2006",
                        "code": "3Y00008",
                        "display": "Virheelliset hakuehdot"
                    }
                ]
            },
            "diagnostics": "Joissain tapauksissa virheen tarkempi kuvaus."
        }
    ]
}