Bewerking valideren: overzicht
Belangrijk
Azure API for FHIR wordt op 30 september 2026 buiten gebruik gesteld. Volg de migratiestrategieën om op die datum over te stappen naar de FHIR-service® van Azure Health Data Services. Vanwege de buitengebruikstelling van Azure API for FHIR zijn nieuwe implementaties vanaf 1 april 2025 niet toegestaan. De FHIR-service van Azure Health Data Services is de ontwikkelde versie van Azure API for FHIR waarmee klanten FHIR-, DICOM- en MedTech-services kunnen beheren met integraties in andere Azure-services.
In het artikel over winkelprofielen in Azure API for FHIR doorloopt u de basisbeginselen van FHIR-profielen en slaat u deze op. In dit artikel wordt uitgelegd hoe $validate
u resources kunt valideren op basis van profielen. Het valideren van een resource op basis van een profiel betekent dat wordt gecontroleerd of de resource voldoet aan het profiel, inclusief de specificaties die in Resource.meta.profile
of in een implementatiehandleiding worden vermeld.
$validate
is een bewerking in Fast Healthcare Interoperability Resources (FHIR) waarmee u ervoor kunt zorgen dat een FHIR-resource® voldoet aan de basisresourcevereisten of een opgegeven profiel. Deze bewerking zorgt ervoor dat de gegevens in Azure API for FHIR de verwachte kenmerken en waarden hebben. Ga naar HL7 FHIR-specificatie voor informatie over de validatiebewerking. Per specificatie kan de modus worden opgegeven met $validate
, zoals maken en bijwerken:
create
: Azure API for FHIR controleert of de profielinhoud uniek is op basis van de bestaande resources en of het acceptabel is om te worden gemaakt als een nieuwe resource.update
: Controleert of het profiel een update is voor de genomineerde bestaande resource (dat is geen wijzigingen aangebracht in de onveranderbare velden).
Er zijn verschillende manieren om de resource te valideren:
- Valideer een bestaande resource met validatiebewerking.
- Valideer een nieuwe resource met validatiebewerking.
- Valideer op resource CREATE/UPDATE met behulp van header.
Azure API for FHIR retourneert altijd een OperationOutcome
als validatieresultaten voor $validate bewerking. De Azure API for FHIR-service voert twee stappen uit, zodra een resource is doorgegeven aan $validate eindpunt. De eerste stap is een basisvalidatie om ervoor te zorgen dat de resource kan worden geparseerd. Tijdens het parseren van resources moeten afzonderlijke fouten worden opgelost voordat u verdergaat met de volgende stap. Zodra de resource is geparseerd, wordt de volledige validatie uitgevoerd als tweede stap.
Notitie
Waardensets die moeten worden gebruikt voor validatie, moeten worden geüpload naar de FHIR-server. Dit omvat waardenets die deel uitmaken van de FHIR-specificatie, evenals waardesets die zijn gedefinieerd in implementatiehandleidingen. Alleen volledig uitgevouwen waardensets die een volledige lijst met alle codes bevatten, worden ondersteund. ValueSet-definities die verwijzen naar externe bronnen, worden niet ondersteund.
Een bestaande resource valideren
Als u een bestaande resource wilt valideren, gebruikt $validate
u deze in een GET
aanvraag:
GET http://<your Azure API for FHIR base URL>/{resource}/{resource ID}/$validate
Voorbeeld:
GET https://myworkspace-myfhirserver.fhir.azurehealthcareapis.com/Patient/a6e11662-def8-4dde-9ebc-4429e68d130e/$validate
In dit voorbeeld valideert u de bestaande patiëntresource a6e11662-def8-4dde-9ebc-4429e68d130e
op basis van de basisresource voor patiënten. Als dit geldig is, krijgt u een voorbeeld van de OperationOutcome
volgende code:
{
"resourceType": "OperationOutcome",
"issue": [
{
"severity": "information",
"code": "informational",
"diagnostics": "All OK"
}
]
}
Als de resource niet geldig is, krijgt u een foutcode en een foutbericht met details over waarom de resource ongeldig is. Een voorbeeld OperationOutcome
wordt geretourneerd met foutberichten en kan eruitzien als het volgende codevoorbeeld:
{
"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"
]
}
]
}
In dit voorbeeld voldoet de resource niet aan het opgegeven patiëntenprofiel, waarvoor een waarde voor de patiënt-id en het geslacht is vereist.
Als u een profiel als parameter wilt opgeven, kunt u de canonieke URL voor het profiel opgeven waarop moet worden gevalideerd, zoals het volgende voorbeeld voor het HL7-basisprofiel voor heartrate
:
GET https://myAzureAPIforFHIR.azurehealthcareapis.com/Observation/12345678/$validate?profile=http://hl7.org/fhir/StructureDefinition/heartrate
Een nieuwe resource valideren
Als u een nieuwe resource wilt valideren die u uploadt naar Azure API for FHIR, kunt u een POST
aanvraag uitvoeren: De server retourneert altijd een OperationOutcome als resultaat.
POST http://<your Azure API for FHIR base URL>/{Resource}/$validate
Voorbeeld:
POST https://myAzureAPIforFHIR.azurehealthcareapis.com/Patient/$validate
Met deze aanvraag wordt de resource gevalideerd. Bij validatieresources worden niet gemaakt in de FHIR-service, moet u een POST-aanvraag verzenden zonder $validate om een resource te maken.
Valideer op resource CREATE/UPDATE met behulp van header.
Standaard is Azure API for FHIR geconfigureerd voor het uitschakelen van validatie voor resources Create/Update
. Met deze mogelijkheid kunt u valideren Create/Update
op , met behulp van de x-ms-profile-validation
header. Stel x-ms-profile-validation in op waar voor validatie.
Notitie
In de opensource FHIR-service kunt u de serverconfiguratie-instelling wijzigen onder CoreFeatures.
{
"FhirServer": {
"CoreFeatures": {
"ProfileValidationOnCreate": true,
"ProfileValidationOnUpdate": false
}
}
Volgende stappen
In dit artikel hebt u geleerd hoe u resources kunt valideren op basis van profielen met behulp van $validate
. Zie voor meer informatie over de andere door Azure API for FHIR ondersteunde functies
FHIR® is een geregistreerd handelsmerk van HL7 en wordt gebruikt met de machtiging HL7.