Java-SDK: Prüfung Fachdatenschema und Leistungsschlüssel vor Versand

Warum?

Subscriber definieren in ihren Zustellpunkten, welche Verwaltungsleistungen und welche Fachdatenschemata sie verarbeiten können. Sender sollten daher vor der Einreichung einer Submission prüfen, ob die Ziel-Destination die gewünschte Verwaltungsleistung und das genutzte Fachdatenschemata unterstützt.

Relevante Links und Bemerkungen

Aktuell gibt es einen ValidDataGuard, der bspw. hier prüft ob der Leikakey dem ServiceIdentifier der Destination entspricht.

Das Submission-Schema für unverschlüsselte Fachdaten wird aktuell vor dem Zusammenbauen der Metadaten geprüft, siehe hier. Allerdings beschränkt sich die Prüfung auf das erste verfügbare SubmissionSchema mit dem entsprechenden MimeType der Fachdaten. Sollte mehrere Schemata mit identischem MimeType vorliegen ist das Verhalten aktuell nicht-deterministisch. Gibt es hier Ideen welches Schema dann genommen werden sollte ?

siehe sdk-java!101 (comment 54960)

Akzeptanzkriterien

  1. Im SubmissionBuilder / EncryptedSubmissionBuilder werden sowohl Leistungsschlüssel (leikaKey), als auch Fachdatenschema (submissionSchema) festgelegt (vgl. #863 (closed)).
  2. Das SDK prüft vor dem Versand von Einreichungen (vor dem Aufruf von POST /v1/submissions) automatisch, ob es in der angegebenen Destination mind. einen service gibt, der
    1. a) im Attribut identifier den im (Encrypted)SubmissionBuilder angegebenen Leistungsschlüssel (leikaKey) enthält und
    2. b) im Attribut submissionSchemas das im (Encrypted)SubmissionBuilder angegebene Fachdatenschema (submissionSchema) enthält (identische schemaUri und mimeType).
  3. Die Prüfungen finden unabhängig davon statt, ob der SubmissionBuilder oder der EncryptedSubmissionBuilder genutzt werden.
  4. Sinn und Zweck der Prüfung ist hier in der Dokumentation beschrieben.

Durchführungsplan (von Entwickler:in bei Umsetzungsplanung auszufüllen)

Edited by Henry Borasch