

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Löschen einer FHIR-Ressource
<a name="managing-fhir-resources-delete"></a>

Die `delete` FHIR-Interaktion entfernt eine vorhandene FHIR-Ressource aus einem HealthLake Datenspeicher. Weitere Informationen finden Sie [https://hl7.org/fhir/R4/http.html#delete](https://hl7.org/fhir/R4/http.html#delete)in der **FHIR RESTful R4-API-Dokumentation**.

**Um eine FHIR-Ressource zu löschen**  


1. Sammeln HealthLake `region` und bewerten`datastoreId`. Weitere Informationen finden Sie unter [Eigenschaften des Datenspeichers abrufen](managing-data-stores-describe.md).

1. Ermitteln Sie den FHIR-Typ, der gelöscht `Resource` werden soll, und erfassen Sie den zugehörigen `id` Wert. Weitere Informationen finden Sie unter [Ressourcentypen](reference-fhir-resource-types.md).

1. Konstruieren Sie mithilfe der gesammelten Werte für HealthLake `region` und `datastoreId` eine URL für die Anfrage. Geben Sie auch den `Resource` FHIR-Typ und den zugehörigen `id` Typ an. Scrollen Sie über die Schaltfläche **Kopieren**, um den gesamten URL-Pfad im folgenden Beispiel anzuzeigen.

   ```
   DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Resource/id
   ```

1. Senden Sie die Anforderung . Die `delete` FHIR-Interaktion verwendet eine `DELETE` Anfrage mit entweder [AWS Signature Version 4](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_sigv.html) oder SMART bei der FHIR-Autorisierung. Im folgenden `curl` Beispiel wird eine vorhandene `Patient` FHIR-Ressource aus einem HealthLake Datenspeicher entfernt. Scrollen Sie über die Schaltfläche **Kopieren**, um das gesamte Beispiel anzuzeigen.

------
#### [ SigV4 ]

   SigV4-Autorisierung

   ```
   curl --request DELETE \
     'https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/id' \
     --aws-sigv4 'aws:amz:region:healthlake' \
     --user "$AWS_ACCESS_KEY_ID:$AWS_SECRET_ACCESS_KEY" \
     --header "x-amz-security-token:$AWS_SESSION_TOKEN" \
     --header 'Accept: application/json'
   ```

   Der Server gibt einen `204` HTTP-Statuscode zurück, der bestätigt, dass die Ressource aus dem HealthLake Datenspeicher entfernt wurde. Wenn eine Löschanforderung fehlschlägt, erhalten Sie eine `400` Reihe von HTTP-Statuscodes, die angeben, warum die Anforderung fehlgeschlagen ist.

------
#### [ SMART on FHIR ]

   SMART on FHIR-Autorisierungsbeispiel für den [https://docs.aws.amazon.com/healthlake/latest/APIReference/API_IdentityProviderConfiguration.html](https://docs.aws.amazon.com/healthlake/latest/APIReference/API_IdentityProviderConfiguration.html)Datentyp.

   ```
   {
       "AuthorizationStrategy": "SMART_ON_FHIR",
       "FineGrainedAuthorizationEnabled": true,
       "IdpLambdaArn": "arn:aws:lambda:your-region:your-account-id:function:your-lambda-name",
       "Metadata": "{\"issuer\":\"https://ehr.example.com\", \"jwks_uri\":\"https://ehr.example.com/.well-known/jwks.json\",\"authorization_endpoint\":\"https://ehr.example.com/auth/authorize\",\"token_endpoint\":\"https://ehr.token.com/auth/token\",\"token_endpoint_auth_methods_supported\":[\"client_secret_basic\",\"foo\"],\"grant_types_supported\":[\"client_credential\",\"foo\"],\"registration_endpoint\":\"https://ehr.example.com/auth/register\",\"scopes_supported\":[\"openId\",\"profile\",\"launch\"],\"response_types_supported\":[\"code\"],\"management_endpoint\":\"https://ehr.example.com/user/manage\",\"introspection_endpoint\":\"https://ehr.example.com/user/introspect\",\"revocation_endpoint\":\"https://ehr.example.com/user/revoke\",\"code_challenge_methods_supported\":[\"S256\"],\"capabilities\":[\"launch-ehr\",\"sso-openid-connect\",\"client-public\",\"permission-v2\"]}"
   }
   ```

   Der Anrufer kann im Autorisierungs-Lambda Berechtigungen zuweisen. Weitere Informationen finden Sie unter [OAuth 2.0-Bereiche](reference-smart-on-fhir-oauth-scopes.md).

------
#### [ AWS Console ]

   1. Melden Sie sich auf der Seite „[Abfrage ausführen](https://console.aws.amazon.com/healthlake/home#/crud)“ in der HealthLake Konsole an.

   2. Treffen Sie im Abschnitt **Abfrageeinstellungen** die folgenden Optionen.
   + **Datenspeicher-ID** — Wählen Sie eine Datenspeicher-ID aus, um eine Abfragezeichenfolge zu generieren.
   + **Abfragetyp** — wählen Sie`Delete`.
   + **Ressourcentyp** — Wählen Sie den zu löschenden [FHIR-Ressourcentyp](reference-fhir-resource-types.md) aus.
   + **Ressourcen-ID** — geben Sie die FHIR-Ressourcen-ID ein.

   3. Wählen Sie **Abfrage ausführen**.

------

## Löschen von FHIR-Ressourcen auf der Grundlage von Bedingungen
<a name="conditional-delete-fhir"></a>

Bedingtes Löschen ist besonders nützlich, wenn Sie die spezifische FHIR-Ressourcen-ID nicht kennen, aber über andere identifizierende Informationen zu der Ressource verfügen, die Sie löschen möchten.

Mit dem bedingten Löschen können Sie eine vorhandene Ressource anhand von Suchkriterien und nicht anhand der logischen FHIR-ID löschen. Wenn der Server die Löschanforderung verarbeitet, führt er eine Suche mithilfe von Standardsuchfunktionen für den Ressourcentyp durch, um eine einzelne logische ID für die Anforderung aufzulösen.

### So funktioniert bedingtes Löschen
<a name="conditional-delete-works"></a>

**Die Aktion des Servers hängt davon ab, wie viele Treffer er findet:**  


1. **Keine Treffer**: Der Server versucht einen normalen Löschvorgang und reagiert entsprechend (404 Not Found für eine nicht existierende Ressource, 204 Kein Inhalt für bereits gelöschte Ressource)

1. **Eine Übereinstimmung**: Der Server führt eine normale Löschung der entsprechenden Ressource durch

1. **Mehrere Treffer**: Gibt den Fehler 412 Precondition Failed zurück, der darauf hinweist, dass die Kriterien des Clients nicht selektiv genug waren

### Reaktionsszenarien
<a name="response-scenerios"></a>

AWS HealthLake verarbeitet bedingte Löschvorgänge mit den folgenden Antwortmustern:

**Erfolgreiche Operationen**  

+ Wenn Ihre Suchkriterien erfolgreich eine einzelne aktive Ressource identifizieren, gibt das System nach Abschluss des Löschvorgangs **204 Kein Inhalt** zurück, genau wie bei Standardlöschvorgängen.

**ID-basiertes bedingtes Löschen**  
Beim Ausführen eines bedingten Löschvorgangs auf der `id` Grundlage zusätzlicher Parameter (`createdAt`,`tag`, oder`_lastUpdated`):
+ **204 Kein Inhalt**: Die Ressource wurde bereits gelöscht
+ **404 Nicht gefunden**: Die Ressource existiert nicht
+ **409 Konflikt**: Die ID stimmt überein, aber andere Parameter stimmen nicht überein

**Non-ID-Based Bedingtes Löschen**  
Wenn nicht `id` angegeben oder wenn andere Parameter verwendet werden als`createdAt`,`tag`, oder`_lastUpdated`:
+ **404 Nicht gefunden**: Keine Treffer gefunden

**Konfliktsituationen**  
Verschiedene Szenarien führen zu den Antworten 412 Precondition Failed:
+ Mehrere Ressourcen entsprechen Ihren Suchkriterien (die Kriterien sind nicht spezifisch genug)
+ Versionskonflikte bei der Verwendung von ETag Headern mit `If-Match`
+ Ressourcenaktualisierungen, die zwischen Such- und Löschvorgängen auftreten

**Beispiel für ein erfolgreiches bedingtes Löschen**  
Im folgenden Beispiel wird eine Patientenressource anhand bestimmter Kriterien gelöscht:

```
DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient?name=peter&birthdate=2000-01-01&phone=1234567890
```

Mit dieser Anfrage wird eine Patientenressource gelöscht, wobei:
+ Der Name ist „Peter“
+ Geburtsdatum ist der 1. Januar 2000
+ Die Telefonnummer ist 1234567890

**Bewährte Methoden**  


1. Verwenden Sie spezifische Suchkriterien, um Mehrfachübereinstimmungen und 412-Fehler zu vermeiden.

1. Ziehen Sie ETag Header für die Versionskontrolle in Betracht, wenn dies für gleichzeitige Änderungen erforderlich ist.

1. Gehen Sie angemessen mit Fehlerreaktionen um:
   + Für 404: Verfeinern Sie Ihre Suchkriterien
   + Für 412: Spezifizieren Sie die Kriterien oder lösen Sie Versionskonflikte

1. Bereiten Sie sich auf Zeitkonflikte in Umgebungen mit hoher Parallelität vor, in denen Ressourcen zwischen Such- und Löschvorgängen geändert werden können.