Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Introduktion

XDS Validation er et Java API, der stiller validering af CDA dokumenter og kald til XDS til rådighed. Det kaldes fra DROS i forbindelse med registrering af dokumenter og metadata i XDS infrastrukturen.

For nuværende er der tale om APD v2, QRD og PHMR

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):

...

Gliffy Diagram
displayNameValidator typer
nameValidator typer
pagePin5

Default validerings konfiguration

Følgende diagram viser, hvordan de forskellige factory klasser, der komponerer en validering, for nuværende er sat sammen.

...

* 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 anvendere.