Versions Compared

Key

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

...

Da DROS som nævnt gør brug af XdsValidationlXdsValidation, kan man her finde yderligere inspiration for implementering, hvis man som ekstern anvender ønsker at gøre brug af XDS validering. Dette dokument beskriver overordnet tilgængelighed af modulet samt anvendelse.

...

Biblioteket består af en række valideringsregler/klasser, som kan sættes sammen efter behov. Det er muligt at sætte en validering sammen, som en lang kæde, eller lave en træstruktur, sådan at vise visse valideringer, stopper for yderligere validering i specifikt område. Sidstnævnte kan f.eks. være, at hvis et dokument ikke er en kendt CDA type, så behøver man ikke validerere yderligere på dets metadata.

...

Figur: kæde- eller træstruktur

Men for For at lette arbejdet med bibliotekt, findes der en default opsætning per område, som det anbefales at arbejde med (såkaldet såkaldt factories). Se figuren "Validator overblik" i design og arkitekturdokumentet, for en overblik over disse. Hvordan disse factories anvendes er beskrevet i næste afsnit.

Hver valideringsregel er implementeret som en ud af 4 fire typer (Navngivning samt hvilken klasse den extender, illustrerer dette dette). Disse er beskrevet i det efterfølgende.

...

  • Den tilhørende starter vælges (Starter)
  • En struktur validator tilknyttes (Validator) som sikrer at et kald indeholder de komponenter, det skal (eksempel for ITI 41 documententry, assocation og selve dokumentet)
  • Alle andre relevante validatorer tilføjes, for ITI 41 drejer det sig om følgende træstruktur:
    • XDSDocumentContentModelEnricher (ModelEnricher), der pakker input ud som UTF8 bytes hvis muligt
      • XDSDocumentValidator (AtLeastOneValidator) og CdaDocumentHeaderModelEnricher, som forventer at kunne pakke input ud som et CDA dokument ved at finde en CDA header
        • CdaDocumentTypeValidator (AtLeastOneValidator) og CdaDocumentApdV2ModelEnricher, CdaDocumentPhmrModelEnricher samt CdaDocumentQrdModelEnricher der forventer at dokumentet er af en af typerne APD, PHMR eller QRD
          • Felt specifikke validatorer (Validator) for hver af de 3 dokument typer
    • Felt specifikke validatorer (Validator) for documentEntry
    • Felt specifikke validatorer (Validator) for SubmissionSet
    • Sammenlignings validatorer per felt (Validator) der sikrer DocumentEntry og SubmissionSet indeholder samme værdier
    • Sammenlignings validatorer per felt (Validator) der sikrer DocumentEntry og dokumentets CDA header indeholder samme værdier

Hvor Hver ITI kald har sin kombination, da ikke alle elementer er til stede i de forskellige kald. F.eks, har et ITI 41 det eneste kald, som har et faktisk dokument, der kan valideres.

En grafisk præsenation præsentation af denne konfiguration af default validering kan ses i Design og arkitektur dokumentet.

...

(nedenstående beskrivelse stammer fra javadoc i mvn modul validation-xds. Anvend "mvn javadoc:javadoc" for at generere i target/site folderen)

Default validering konfiguration

...

KlasseValideringITI 41 defaultITI 42 defaultITI 61 defaultITI 57 defaultCda dokument

DocumentEntryClassCodeValidator

  • displayName skal være udfyldt (IHE 4.2.3.1.2 Creating Coded Attributes)
  • udfyldt codeSystem (IHE 4.2.3.1.2 Creating Coded Attributes)
  • gyldigt codeSystem. Default er OID "1.2.208.184.100.9"  (DK_IHE_ClassCode_DE)
  • udfyldt code (IHE 4.2.3.1.2 Creating Coded Attributes)
  • længden på code må ikke være større end 3 (DK_IHE_ClassCode_DE)
gyldig codeSystem er OIDgyldig codeSystem er OID
gyldig codeSystem er OIDgyldig codeSystem er OID



na
DocumentEntryAuthorInstitutionValidator
  • Der skal være mindst een author (Metadata-v096 2.2.1.1 authorInstitution)
  • Der skal være en authorInstitution (Metadata-v096 2.2.1.1 authorInstitution)
  • udfyldt AssigningAuthority.UniversalId (Metadata-v096 2.2.1.1 authorInstitution)
  • gyldigt AssigningAuthority.UniversalId. Default er "1.2.208.176.1.1" (SOR) og "1.2.208.176.1.4" (YDERNUMMER).
  • udfyldt IdNumber (Metadata-v096 2.2.1.1 authorInstitution)
  • hvis AssigningAuthority.UniversalId er Yder så skal længden på IdNumber være 6
  • hvis AssigningAuthority.UniversalId er Yder så skal IdNumber være numerisk
gyldig UniversalId er SOR_OID og YDERNUMMER_OIDgyldig UniversalId er SOR_OID og YDERNUMMER_OIDgyldig UniversalId er SOR_OID og YDERNUMMER_OID



na
CdaHeaderAuthorInstitutionValidator
  • Der skal være een author (Metadata-v096 2.2.1.1 authorInstitution)
  • Der skal være en authorInstitution (Metadata-v096 2.2.1.1 authorInstitution)
  • udfyldt codeSystem (Metadata-v096 2.2.1.1 authorInstitution)
  • gyldigt codeSystem. Default er "1.2.208.176.1.1" (SOR) og "1.2.208.176.1.4" (YDERNUMMER).
  • udfyldt code (Metadata-v096 2.2.1.1 authorInstitution)
  • hvis codeSystem er Yder så skal længden på code være 6
  • hvis codeSystem er Yder så skal code være numerisk
gyldig UniversalId er SOR_OID og YDERNUMMER_OIDnaCdaHeaderAuthorInstitutionValidator
nanananagyldig UniversalId er SOR_OID og YDERNUMMER_OID