Share via


FHIR-erőforrások ellenőrzése profilokkal az Azure Health Data Servicesben

Az FHIR szolgáltatás cikk áruházi profiljaiban végigvezette az FHIR-profilok alapjait, és tárolta őket. Az Azure Health Data Services FHIR szolgáltatása (a továbbiakban: FHIR szolgáltatás) lehetővé teszi az erőforrások profilok közötti érvényesítését annak ellenőrzése érdekében, hogy az erőforrások megfelelnek-e a profiloknak. Ez a cikk bemutatja, hogyan használható $validate az erőforrások profilok elleni érvényesítéséhez.

$validate a Fast Healthcare Interoperability Resources (FHIR®) egy olyan művelete, amely lehetővé teszi annak biztosítását, hogy egy FHIR-erőforrás megfeleljen az alaperőforrás-követelményeknek vagy egy megadott profilnak. Ez a művelet biztosítja, hogy az FHIR szolgáltatás adatai a várt attribútumokkal és értékekkel rendelkezjenek. Az érvényesítési művelettel kapcsolatos információkért tekintse meg a HL7 FHIR specifikációját. Specifikációnként a Mód a paranccsal $validateadható meg, például létrehozás és frissítés:

  • create: Az Azure API for FHIR ellenőrzi, hogy a profil tartalma egyedi-e a meglévő erőforrásoktól, és hogy elfogadható-e új erőforrásként létrehozni.
  • update: Ellenőrzi, hogy a profil egy frissítés-e a kijelölt meglévő erőforráson (ez nem módosítja a nem módosítható mezőket).

Az erőforrások ellenőrzésének különböző módjai vannak:

  • 1. lehetőség: Meglévő erőforrás érvényesítése érvényesítési művelettel.
  • 2. lehetőség: Új erőforrás érvényesítése érvényesítési művelettel.
  • 3. lehetőség: Ellenőrizze az erőforrás CREATE/UPDATE elemét a fejléc használatával.

Egy meglévő/új erőforrás sikeres érvényesítése esetén az erőforrás nem marad meg az FHIR szolgáltatásban. Használja a 3. lehetőséget: Ellenőrizze a CREATE/UPDATE erőforrást fejléc használatával, hogy a sikeresen ellenőrzött erőforrás megmaradjon az FHIR szolgáltatásban.

Az FHIR szolgáltatás mindig egy OperationOutcome értéket ad vissza $validate művelet érvényesítési eredményeként. Az FHIR szolgáltatás kétlépéses ellenőrzést végez, amint egy erőforrást átadnak $validate végpontnak – az első lépés egy alapszintű ellenőrzés, amely biztosítja az erőforrás elemzését. Az erőforrás-elemzés során az egyes hibákat ki kell javítani, mielőtt továbblép a következő lépésre. Az erőforrás sikeres elemzése után a rendszer a teljes ellenőrzést második lépésként hajtja végre.

Megjegyzés

Az ellenőrzéshez használni kívánt értékkészleteket fel kell tölteni az FHIR-kiszolgálóra. Ide tartoznak az FHIR-specifikáció részét képező értékhalmazok, valamint az implementációs útmutatókban meghatározott valueSetek. Csak az összes kód teljes listáját tartalmazó teljesen kibontott Értékhalmazok támogatottak. A külső forrásokra hivatkozó ValueSet-definíciók nem támogatottak.

1. lehetőség: Meglévő erőforrás érvényesítése

Meglévő erőforrás érvényesítéséhez használja a következőt $validate egy GET kérésben:

GET http://<your FHIR service base URL>/{resource}/{resource ID}/$validate

Például:

GET https://myworkspace-myfhirserver.fhir.azurehealthcareapis.com/Patient/a6e11662-def8-4dde-9ebc-4429e68d130e/$validate

Ebben a példában a meglévő Patient erőforrást a6e11662-def8-4dde-9ebc-4429e68d130e érvényesíti az alap patient erőforráshoz. Ha érvényes, az alábbi példakódhoz hasonlót fog kapni OperationOutcome :

{
    "resourceType": "OperationOutcome",
    "issue": [
        {
            "severity": "information",
            "code": "informational",
            "diagnostics": "All OK"
        }
    ]
}

Ha az erőforrás érvénytelen, hibaüzenet jelenik meg, amely részletesen ismerteti, hogy miért érvénytelen az erőforrás. Egy példa OperationOutcome hibaüzenetekkel jelenik meg, és az alábbi példakódhoz hasonlóan nézhet ki:

{
    "resourceType": "OperationOutcome",
    "issue": [
        {
            "severity": "error",
            "code": "invalid",
            "details": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/dotnet-api-operation-outcome",
                        "code": "1028"
                    }
                ],
                "text": "Instance count for 'Patient.identifier.value' is 0, which is not within the specified cardinality of 1..1"
            },
            "location": [
                "Patient.identifier[1]"
            ]
        },
        {
            "severity": "error",
            "code": "invalid",
            "details": {
                "coding": [
                    {
                        "system": "http://hl7.org/fhir/dotnet-api-operation-outcome",
                        "code": "1028"
                    }
                ],
                "text": "Instance count for 'Patient.gender' is 0, which is not within the specified cardinality of 1..1"
            },
            "location": [
                "Patient"
            ]
        }
    ]
}

Ebben a példában az erőforrás nem felelt meg a megadott Betegprofilnak, amelyhez egy betegazonosító értékre és nemre volt szükség.

Ha paraméterként szeretne megadni egy profilt, megadhatja az érvényesítendő profil canonical URL-címét, például az alábbi példát a HL7-alapú profilhoz heartrate:

GET https://myworkspace-myfhirserver.fhir.azurehealthcareapis.com/Observation/12345678/$validate?profile=http://hl7.org/fhir/StructureDefinition/heartrate

2. lehetőség: Új erőforrás érvényesítése

Ha ellenőrizni szeretne egy új erőforrást, amelyet feltölt a kiszolgálóra, kérést POST tehet:

POST http://<your FHIR service base URL>/{Resource}/$validate

Például:

POST https://myworkspace-myfhirserver.fhir.azurehealthcareapis.com/Patient/$validate

Ez a kérés először ellenőrzi az erőforrást. A kérelemben megadott új erőforrás az ellenőrzés után jön létre. A kiszolgáló mindig egy OperationOutcome értéket ad vissza eredményül.

3. lehetőség: Ellenőrzés a CREATE/UPDATE erőforráson fejléc használatával

Kiválaszthatja, hogy mikor szeretné ellenőrizni az erőforrást, például az erőforráson CREATE vagy UPDATEa rendszeren. Alapértelmezés szerint az FHIR szolgáltatás úgy van konfigurálva, hogy letiltsa az érvényesítést az erőforráson Create/Update. Ez a képesség lehetővé teszi, hogy a fejléc használatával érvényesítse a-onCreate/Update.x-ms-profile-validation Állítsa az "x-ms-profile-validation" értéket true (igaz) értékre az ellenőrzéshez.

Megjegyzés

A nyílt forráskódú FHIR szolgáltatásban módosíthatja a kiszolgáló konfigurációs beállítását a CoreFeatures területen.

{
   "FhirServer": {
      "CoreFeatures": {
            "ProfileValidationOnCreate": true,
            "ProfileValidationOnUpdate": false
        }
}

A szigorú ellenőrzés engedélyezéséhez használja a "Prefer: handling" fejlécet szigorú értékkel. A fejléc beállításával az érvényesítési figyelmeztetés hibaüzenetként jelenik meg.

Következő lépések

Ebből a cikkből megtudhatta, hogyan érvényesítheti az erőforrásokat a profilok alapján a használatával $validate. Az FHIR szolgáltatás egyéb támogatott funkcióival kapcsolatos további információkért lásd:

Az FHIR® a HL7 bejegyzett védjegye, és a HL7 engedélyével használják.