Page History
| Gliffy Diagram | ||||
|---|---|---|---|---|
|
Introduktion
XDS Validation er er et Java API, der stiller validering af bl.a. CDA- og Noah dokumenter og kald til XDS til rådighed. Der skal Det kaldes fra DRS bl.a. DROS i forbindelse med registrering af dokumenter og metadata i XDS infrastrukturen.
For nuværende er der tale om CDA dokumenter af typen APD v2, QRD og PHMR
Overblik
Nedenstående skitserer arkitekturen i biblioteket. Hvordan de forskellige nivauer af validering hænger sammen logisk.
Gliffy Diagram displayName overblik name overblik pagePin 5
Instantiering
Instantiering af interfacet sker via følgende klasse
- Validering af cda dokument: CdaDocumentValidatorFactory
- Validering af iti-41 kald: Iti41ValidationFactory
Valideringer
Biblioteket validerer på forskellige niveauer. Ovenstående figur viser, det hiraki der er, hvordan ansvaret er fordelt for denne validering.
og Noah dokumenter af typen Audiogram, Admittance/Impedance og Hearing Instrument Selection.
I biblioteket vil klasser specifikt brugt til validering af CDA være prefixet med Cda.
I biblioteket vil klasser specifikt brugt til validering af Noah være prefixet med Audio.
Overblik
Biblioteket består en en række valideringsklasser, der kan sættes sammen i en factory til en specifik samling af regler for en given "ting", der skal valideres. F.eks. sætter Iti41ValidationFactory et antal regler sammen, sådan at et iti-41 kald valideres korrekt inkl. cda dokumentet, der sendes i kaldet.
- En "ValidationFactory" består af en række validerings klasser, der er sat sammen i et træ.
- Til konfiguration af Validatorne kan XDSConfiguration anvendes. Den indeholder både navngivne/kendte konfigurationer og giver mulighed for udbygning. Dens formål kan sammenlignes med en klassisk property fil.
- I princippet en klasse per validerings regel.
- En valideringsklasse består af en validering samt en liste af eventuelle under-valideringer.
- En validering kan også være at forsøge at pakke et element ud, f.eks. at pakke et cda dokument ud af de bytes et kald har modtaget
- Alle klasser (undtagen "starter") operer på det samme objekt (XDSDocument), der sendes rundt og eventuelt beriges undervejs
- En valideringsklasse returner en fejlliste (med 0 eller flere fejl).
- Hvis en valideringsklasse ikke kan udføre det dens ansvar er, pga. manglende beriget information i XDSDocument returnere den en tome fejlliste.
Typer
En valideringsklasse til en Factory, er en af følgende 3 typer (templates):
- Validator - har en validering og et gennemløb på sine under-validatorer
- ModelEnricher - valideringen består af udpakning af noget input. Denne "berigelse" sættes på det indkomne objekt (deraf ModelEnricher) og senere validatorer kan så arbejde herpå
- Starter - adskiller sig fra en ModelEnricher ved, at den ikke modtager det fælles objekt XDSDocument, men istedet en request type. Dette request pakkes ud i et eller flere XDSDocument objekter, og Starter kører så sine under-validatorer på hver af disse objekter.
Gliffy Diagram displayName Validator typer name Validator typer pagePin 5
Default validerings konfiguration
Følgende diagram viser, hvordan de forskellige factory klasser, der komponerer en validering, for nuværende er sat sammen.
CDA
| Gliffy Diagram | ||||||||
|---|---|---|---|---|---|---|---|---|
|
* phad dokumenter er planlagt til at blive en del af validering, men afhænger af SDS-7229
Instantiering
Instantiering af biblioteket sker via en række factory klasser. Se guide til anvendereDet er muligt at tilføje felt/entitet valideringer på nivauerne CdaDocumentCdaHeaderParsingValidator, DocumentEntryValidator og DocumentEntryValidator og SubmissionSetValidator niveau.