Versions Compared

Key

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

AFVENTER ENDELIG GODKENDELSE

Navitabs
rootSOR Opdater Service (SORUS) - Leverancebeskrivelse
includeroottrue


...

Table of Contents
excludeIndholdsfortegnelse

Releases SORUS WSDL

En oversigt over de forskellige releases, og eventuelle kommentarer omkring disse:

Release WSDL

Kommentar
4.0

Release af version 4 af WSDL - gældende version

3.0

Release af version 3 af WSDL - ikke tilgængelig

2.0Release af version 2 -

...

ikke tilgængelig
1.0Release af version 1 - ikke tilgængelig

Neden for kan dokumentationen for de aktive WSDL versioner findes.

Releases SORUS

Nyeste version af systemet.

Release SORUSKommentar
1.2.3

Med rettelser efter QA v. Arosii. (SOR-429). 

SVN sendt til NSP d. 17.11.2022 - til TEST1 miljø. Godkendt v. Arosii.

Deployed på TEST1 miljø og deployed på TEST2 miljø d. 20.01.23.

Deploy til PROD miljø afventer at ekstern anvender har testet ok ved  hul-i-gennem-test (opdateret d. 23.1.23)

1.2.2

Med rettelser efter QA v. Arosii. (SOR-414). 

SVN sendt til NSP d. 11.10.2022 - til TEST1 miljø

Godkendt v. Arosii - sendt til Netic d. 13.10.22

1.2.1. 


Med rettelser efter QA v. Arosii. (SOR-414).

SVN sendt til NSP d. 21.9.2022 

1.2.0

Ændringer i forbindelse med overgang til Nemlogin3 og MitID (SOR-394)

1.1

Release af version 3 af WSDL

1.0Release af version 1 af WSDL

Endpoint

Endpoints til services på NSP er forskellige for kommuner/lægepraksissystemer  og regioner.

Kommunerne/lægepraksissystemer benytter den centrale NSP, cnsp, og regionerne bruger den decentrale NSP.


Opdater servicen kan tilgås på adressen:

[miljø url]/sor-opdatering/v4/SOROpdateringService

TEST1-miljøet

 https://test1-cnsp.ekstern-test.nspop.dk:8443/sor-opdatering/v4/SOROpdateringService

TEST2-miljøet:

 https://test2-cnsp.ekstern-test.nspop.dk:8443/sor-opdatering/v4/SOROpdateringService

WSDL filen for servicen kan hentes ved at tilføje "?wsdl" til enden af URL'en.

Produktionsmiljø:

https://cnsp.nsp.dsdn.dk:8443/sor-opdatering/v4/SOROpdateringService

Via SDN - Kræver aftale med SDN.

Snitfladebeskrivelser

Fælles

Sikkerhed

Succesfuld anvendelse af SORUS service kræver, at der medsendes gyldig sikkerhedsbillet (SOSI Idkort) fra STS i kaldet.

Valideringen af de indkommende sikkerhedsbilletter foretages vha NSP Security API.

Sikkerhedsbillletter på niveau 3 og 4 (FOCES, VOCES, MOCES og lokale identifikationsmidler) tillades. 'På vegne af' understøttes ikke.

Namespaces

Alle kald til servicen vil benytte typer defineret under namespacet:

http://sundhedsdatastyrelsen.dk/SOROpdateringService/2024/09/10/

Alle typer benyttet i parametre og resultater i disse kald er defineret under namespacet:

SOR.Services.SOAPServices.V4

Koder

Flere felter benytter koder frem for tekst strenge til at signalere over for servicen, hvilken type enhed der er ønsket at blive oprettet, eller hvor at enheden er placeret. Eksempel på sådan er SystemTypeIdentifier under EanLocationCodeEntityType.

For koderne til disse kan henvises til Klassifikationstabellen på KRS eller SorDataTypes.xml-filen som findes i SOR.zip her: https://sor-filer.sundhedsdata.dk/sor_produktion/data/sor/sorxml/

Gyldighed

I de kald hvor at SorEntityType bliver returneret, der er den returnerede version ikke den gyldige version af enheden. Den returnerede version er hvad der vil blive gyldigt i fremtiden (tidligst dagen efter). Dvs. det er muligt at se de ændringer som man har foretaget i kaldet eller den fremtidige enhed.

UserType

ElementData typeBeskrivelse
RolesArrayOfSorSecurityGroupExternalTypeListe af sikkerheds grupper som skal bruges under autoriseringen af et kald. Hvert type af kald har sin type som er nødvendigt, for at kunne udføre operationen. Afsenders CVR nummer skal være knyttet til den afsendte gruppe.
EntitiesArrayOfLong

Liste af SOR-koder hvis træer som afsenderen har adgang til at redigere i. Indholdet bruges kun under autorisering af CreateSorEntity, EditSorEntity, MoveSorEntity, ReplaceSorEntities, CloseSorEntity og MoveEanLocationCode.

Benyttes ikke ved EDI operationer.

AddressInformationType

ElementData typeBeskrivelse
AdditionalAddressInformationTextStringYderligere oplysninger om adressen
AddressPostalAddressPostalTypeIndeholder yderligere adresse informationer
InheritanceIndicatorBooleanIndikerer om adressen er nedarvet eller ej ("TRUE" = Ja)
SkipAddressValidationBooleanIndikerer om den indtastede adresse skal valideres. Kun til input. Er altid sat til false i retur objektet.
MunicipalityCodeStringKommunekode
StreetCodeString

Vejkodefeltet bruges kun til output - input i feltet bliver ignoreret.

RegionNameStringIndeholder navnet på den valgte regionskode. Feltet bruges kun til output - input i feltet bliver ignoreret.
RegionCodeStringFeltet bruges ikke - input i feltet bliver ignoreret.
CoordETRS89z32NMeasureDecimalNorthing koordinater i UTM zone 32 (ETRS89, North). Feltet bruges kun til output - input i feltet bliver ignoreret.
CoordETRS89z32EMeasuredecimalEasting koordinater i UTM zone 32 (ETRS89, East). Feltet bruges kun til output - input i feltet bliver ignoreret.

AddressPostalType

ElementData typeBeskrivelse
StreetNameStringVejnavn
StreetBuildingIdentifierStringHusnummer
FloorIdentifierStringEtage
SuiteIdentifierStringAdressens dør eller til højre, til venstre eller midt for
PostOfficeBoxIdentifierIntegerPostboks. Feltet bruges ikke i dag - input i feltet bliver ignoreret
PostCodeIdentifierStringPostnummer
DistrictNameStringPostdistrikt - input i feltet bliver ignoreret.
CountryIdentificationCodeCountryIdentificationCodeTypePostadressens landekode

ArrayOfLong

ElementData typeBeskrivelse
SorIdentifierListe af longListe af SOR-koder

ArrayOfLong1

ElementData typeBeskrivelse
EanLocationCodeListe af longListe af lokationsnumre

ArrayOfLong2

ElementData typeBeskrivelse
EdiIdentifierListe af longListe af EDI meddelelsestyper

ArrayOfPrioritizedEntitySpecialityType

ElementData typeBeskrivelse
PrioritizedEntitySpecialityListe af PrioritizedEntitySpecialityTypeListe af SOR-enhedens kliniske specialer. Der kan angives op til 8, hvoraf nr. 1 er hoved specialet.

ArrayOfReplacingInfoType

ElementData typeBeskrivelse
ReplacingInfoTypeListe af ReplacingInfoTypeListe af SOR-enheder

ArrayOfSorSecurityGroupExternalType

ElementData typeBeskrivelse
SorSecurityGroupExternalListe af SorSecurityGroupExternalTypeSecurity groups

CountryIdentificationCodeType

ElementData typeBeskrivelse
SchemeCountryIdentificationSchemeTypeLandekode identifikations system
ValueStringLandekode

CountryIdentificationSchemeType

ElementData typeBeskrivelse

String

Enumeration af landekode identifikations systemer. Kan have en af følgende værdier:

  • iso3166-alpha2
  • iso3166-alpha3
  • un-numeric3
  • imk

EanLocationCodeEntityType

ElementData typeBeskrivelse
EanLocationCodeLongLokationsnummer
OnlyInternalIndicatorBooleanAngiver om lokationsnummeret er til internt brug
NonActiveIndicatorBooleanAngiver om lokationsnummeret er ikke-aktivt
SystemSupplierIdentifierLongSystemleverandør-id
CommunicationSupplierIdentifierLongNetoperatør-id
SystemTypeIdentifierLongEDB-system-id
EdiAdministratorIdentifierLongEDI-Administrator-id
SorNoteStringAngiver eventuelle bemærkninger til lokationsnummeret
SorStatusSorStatusTypeAngiver SOR enhedens status. Kun output. Input bliver ignoreret.
RegionCodeStringRegionens kode, f.eks. 1084 for RegionHovedstaden

EanLocationCodeStateType

ElementData typeBeskrivelse

String

Enumeration af nedarving status for lokationsnumre

Releases

En oversigt over de forskellige releases, og eventuelle kommentare omkring disse:

...

Release af version 3 af WSDL

Version 1 og version 2 er fjernet

...

Neden for kan dokumentationen for de aktive WSDL versioner findes.

Version 3

Nyeste version af systemet.

Endpoint

Opdater servicen kan tilgås på adressen:

[miljø url]/sor-opdatering/v3/SOROpdateringService

For eksempel, på TEST1-miljøet vil det være:

http://test1-cnsp.ekstern-test.nspop.dk:8080/sor-opdatering/v3/SOROpdateringService

WSDL filen for servicen kan hentes ved at tilføje "?wsdl" til enden af URL'en.

Snitfladebeskrivelser

Fælles

Sikkerhed

Fælles for hele servicen, er at der bliver benyttet Den Gode Webservice (DGWS) til authentifikering, og der accepteres kun niveau 3 (VOCES og FOCES) eller 4 (MOCES) ID kort udstedt af SOSI-STS. Selvom at niveau 3 både indeholder FOCES og VOCES, så er det kun FOCES som er tilladt.

Namespaces

Alle kald til servicen vil benytte typer defineret under namespacet:

http://sundhedsdatastyrelsen.dk/SOROpdateringService/2019/10/08/

Alle typer benyttet i parametre og resultater i disse kald er defineret under namespacet:

SOR.Services.SOAPServices.V3

Koder

Flere felter benytter koder frem for tekst strenge til at signalere over for servicen, hvilken type enhed der er ønsket at blive oprettet, eller hvor at enheden er placeret. Eksempel på sådan er SystemTypeIdentifier under EanLocationCodeEntityType. Koderne for disse kan findes her:

http://filer.nsi.dk/sor/lookupdata/

Gyldighed

I de kald hvor at SorEntityType bliver returneret, der er den returnerede version ikke den gyldige version af enheden. Den returnerede version er hvad der vil blive gyldigt i fremtiden (tidligst dagen efter).

AddressInformationType

...

AddressPostalType

...

ArrayOfLong

...

ArrayOfPrioritizedEntitySpecialityType

...

ArrayOfReplacingInfoType

...

ArrayOfSorSecurityGroupExternalType

...

CountryIdentificationCodeType

...

CountryIdentificationSchemeType

...

Enumeration af landekode identifikations systemer. Kan have en af følgende værdier:

  • iso3166-alpha2
  • iso3166-alpha3
  • un-numeric3
  • imk

EanLocationCodeEntityType

...

EanLocationCodeStateType

...

Enumeration af nedarving status for lokationsnumre. Kan have en af følgende værdier:

  • Undefined
  • None
  • Inherited
  • Own

LocalAttributeCollectionType

...

PrioritizedEntitySpecialityType

...

ReplacingInfoType

...

SorEntityType

...

SorSecurityGroupExternalType

ElementData typeBeskrivelsestringEnumeration af security groups

. Kan have en af følgende værdier:

SorCentralRole
  • Undefined
SorDecentralRole
  • None
SorEditorRole
  • Inherited
SorGeoRole
  • Own
  • SorShakRole
  • SorEdiCentralRole
  • SorEdiAdminRole
  • SorMoveEanRole
  • SorStatusType

    LocalAttributeCollectionType

    ElementData typeBeskrivelse
    FromDate
    LocalAttribute1
    date
    String
    ToDate
    Lokal attribut 1
    date
    LocalAttribute2
    UpdatedAt
    String
    date
    Lokal attribut 2
    FirstFromDate
    LocalAttribute3
    date
    String

    ...

    Lokal attribut 3
    Element
    LocalAttribute4
    Date typeBeskrivelsestring

    Enumeration af SOR typer. Kan have en af følgende værdier:

    • IO
    • HI
    • OU

    ...

    StringLokal attribut 4
    LocalAttribute5StringLokal attribut 5

    PrioritizedEntitySpecialityType

    ElementData typeBeskrivelse
    ErrorCode
    SpecialityIdentifier
    intErrorMessagestring

    VirtualAddressInformationType

    Long Speciale-id: Identifikationskode der identificerer et lægefagligt speciale. Kommentar: Identifikationskoden er et begrebs-id fra SNOMED CT.
    SpecialityPriorityIdentifierLongPrioriteten af specialet. Hoved-/bi-speciale: Markerer om det er et hoved- eller bi-speciale.

    ReplacingInfoType

    Element
    Element
    Data typeBeskrivelse
    InheritanceIndicator
    Name
    boolean
    String
    EmailAddressIdentifier
    Enhedens navn
    string
    SorId
    WebsitestringTelephoneNumberstringFaxNumberIdentifierstring

    Version 2

    Nyeste version af systemet, og anbefalet for nye klienter at integrere med.

    Ændringer

    Liste af ændringer sket i snitfladen mellem versioner.

    Til v2.0

    • Request og response bliver indpakket af et ekstra objekt, for at servicen behøver mindre operation specifik kode (quality of life ændring for fremtidig udvikling)
    • Ryddet op i XSD filer, således at det muligt nu kun at udstille de som en klient af servicen skal bruge, uden også at udstille de typer som bruges mod interne SOR systemer
    • MoveSorEntity returnerer nu ikke længere SorEntity
    • Ændringer i nogle af de SDS producerede XSD filer, således at null værdier er tilladt
    • Felterne CommunicationSupplierType og SystemSupplierType er blevet fjernet fra SorEntity

    Snitfladebeskrivelser

    Fælles

    Sikkerhed

    Fælles for hele servicen, er at der bliver benyttet Den Gode Webservice (DGWS) til authentifikering, og der accepteres kun niveau 3 (VOCES og FOCES) eller 4 (MOCES) ID kort udstedt af SOSI-STS. Selvom at niveau 3 både indeholder FOCES og VOCES, så er det kun FOCES som er tilladt.

    Namespaces

    Alle kald til servicen vil benytte typer defineret under namespacet:

    http://sundhedsdatastyrelsen.dk/SOROpdateringService/2019/03/14/

    Eksterne typer

    Mange af de data typer som bliver benyttet, kan typisk findes her:

    http://filer.nsi.dk/sor/xsd/

    Typer under både v_1_0_0 og v_2_0_0 bliver benyttet.

    Følgende lokationer bliver også inkluderet for typer:

    http://digitaliser.dk/resource/1945/artefact/CVR_CVRnumberIdentifier.xsd

    http://rep.oio.dk/cvr.dk/xml/schemas/2005/03/22/CVR_ProductionUnitIdentifier.xsd

    http://rep.oio.dk/kms.dk/xml/schemas/2007/05/23/

    Alle typer hentet eksternt fra er ikke angivet i dette dokument, da listen så vil blive meget lang.

    Koder

    Flere felter benytter koder frem for tekst strenge til at signalere over for servicen, hvilken type enhed der er ønsket at blive oprettet, eller hvor at enheden er placeret. Eksempler på sådanne er SystemTypeIdentifier under EanLocationCodeEntityType, eller RegionCode under de forskellige adresse typer (aktivitet, post, of visitation). Koderne for disse kan findes her:

    http://filer.nsi.dk/sor/lookupdata/

    Gyldighed

    I de kald hvor at SorEntity bliver returneret, der er den returnerede version ikke den gyldige version af enheden. Den returnerede version er hvad der vil blive gyldigt i fremtiden (tidligst dagen efter).

    UserType

    ...

    LongEnhedens SOR-kode
    DateDateTimeDato for erstatning

    SorEntityType

    ElementData typeBeskrivelse
    SorIdentifierLongUnik nøgle der identificerer en SOR enhed. Genereres automatisk. En SOR-kode består af fire komponenter: - Fortløbende nummer - Namespace (7 cifre: "1000016") - Partition-ID (2 cifre) - Checksum-ciffer (1 cifre). Den første mulige SOR-kode er dermed '11000016002'.
    SorTypeSorTypeTypeSOR-type. Angiver SOR-typen. Fx. "Institutionsejer" eller "Sundhedsinstitution".
    SorStatusSorStatusTypeAngiver SOR enhedens status. Overbegreb - indeholder dato og opdateringsoplysninger.
    GeographicalLocalisationIdentifierLongId på den geografiske lokation. Bruges kun til output. Må kikke angives i input.
    GeographicalLocalisationNameStringNavn på den geografiske lokation. Bruges kun til output. Må ikke angives i input
    HasGeographicalLocalisationBooleanAngiver om SOR enheden har en geografisk lokation, skal være false eller tom hvis SOR typen er IO.
    ParentSorIdentifierLongForældre SOR-id, må ikke udfyldes hvis SOR typen er IO. Ved Edit må feltet ikke udfyldes. Benyttes som input til CreateSorIntity operationen. Benyttes som output fra begge.
    ActivityAddressInformationAddressInformationTypeAktivitetsadressen, skal være tom hvis SOR typen er IO eller HI. Hvis en OU oprettes/redigeres uden en aktivitetsadresse, nedarves den fra egen besøgsadresse.
    VisitingAddressInformationAddressInformationTypeBesøgsadressen, skal være tom hvis SOR typen er IO. Hvis HI/OU oprettes/redigeres uden en besøgsadresse, nedarves den fra enhedens egen postadresse.
    PostalAddressInformationAddressInformationTypePostadressen, skal være udfyldt vis SOR typen er IO. For HI og OU gælder det, hvis enheden oprettes/redigeres uden en postadresse, nedarves den fra forældre enhedens postadresse.
    PharmacyIdentifierStringSOR-enhedens apoteksnummer, skal være tom hvis SOR typen er IO, og hvis enheden ikke er en apoteksenhed
    EntityNameStringSOR Enhedens navn
    EntityTypeIdentifierLongTeknisk nøgle for EntityType (SNOMED Concept Id)
    VirtualAddressInformationVirtualAddressInformationTypeAngiver enhedens hjemmesideadresse, email, telefonnummer og faxnummer. Er obligatorisk for IO. For HI/OU gælder: Hvis objektet er null, så bliver VirtualAddress autoamtisk nedarvet fra parent-enheden
    ReportingLevelIndicatorBooleanAngiver om enheden er indberetningsniveau til Landspatientregisteret (LPR2). Kun OU under HI med typen hospital kan have en. Feltet skal være false eller tom hvis SOR typen er IO eller HI, og hvis det ikke er en OU under en HI med typen hospital.
    LocalAttributeCollectionLocalAttributeCollectionTypeDer kan være op til 5 lokale attributter, skal være tom hvis SOR typen er IO eller HI
    LocalCodestringSOR-enhedens lokale kode. Kun OU under HI med typen hospital kan have en. Feltet skal være tom hvis SOR typen er IO eller HI, og hvis det er en OU som ikke er under en HI med typen hospital. Attribut der frit kan benyttes af anvender organisationen.
    EanLocationCodeStateEanLocationCodeStateTypeAngiver om lokationsnummer er nedarvet fra den hierarkiske mor. Kan være 'own', 'inherited' eller 'none'.
    EanLocationCodeEntityEanLocationCodeEntityTypeAngiver lokationsnummeroplysninger på SOR enheden
    PatientsAdmittedIndicatorbooleanAngiver om enheden er et sengeafsnit. Kun OU under HI med typen hospital kan have en. Feltet skal være false eller tom hvis SOR typen er IO eller HI, og hvis det ikke er en OU under en HI med typen hospital.
    AmbulantActivityIndicatorbooleanAngiver om enheden er et ambulatorie. Kun OU under HI med typen hospital kan have en. Feltet skal være false eller tom hvis SOR typen er IO eller HI, og hvis det ikke er en OU under en HI med typen hospital.
    ShakIdentifierStringAngiver hvilken sygehusafdelingskode, der er knyttet til SOR-enheden. Den samme sygehusafdelingskode kan være knyttet til mere end én SORenhed. Der kan kun registreres officielle sygehusafdelingskoder. Skal være tom hvis SOR typen er IO.
    PrioritizedEntitySpecialityCollectionArrayOfPrioritizedEntitySpecialityTypeListe af SOR-enhedens kliniske specialer. Der kan angives op til 8, hvoraf nr. 1 er hovedspecialet. Skal være tom hvis SOR typen er IO eller HI.
    ProviderIdentifierStringSOR-enhedens ydernummer feltet skal være tom, hvis SOR typen er IO eller HI eller det er en OU som ikke er under en HI med typen "hospital". Kun OU ikke under HI med typen hospital kan have en. Input i feltet bliver ignoreret uden varsel hvis der er tale om en hospital OU.
    CVRNumberIdentifierstringCVR nummer for SOR-enheden. Obligatorisk hvis SOR typen er IO.
    ProductionUnitIdentifierStringP nummer for SOR-enheden, skal være tom hvis SOR typen er IO, eller hvis det er en OU under en HI med typen hospital
    ReplacedByEntityCollectionArrayOfReplacingInfoTypeListe af SOR-enheder denne enhed er blevet erstattet af
    ReplacesEntityCollectionArrayOfReplacingInfoTypeListe af SOR-enheder denne enhed erstatter
    OrganizationalLevelLongOrganisations kode

    SorSecurityGroupExternalType

    ElementData typeBeskrivelse

    String

    Enumeration af security groups

    StatusType

    ...

    ArrayOfSorSecurityGroupsExternalType

    ...

    En liste af SorSecurityGroupExternalType

    ...

    SorSecurityGroupExternalType

    ...

    Enumeration af security groups. Kan have en af følgende værdier:

    • SorCentralRole
    • SorDecentralRole
    • SorEditorRole
    • SorGeoRole
    • SorShakRole
    • SorEdiCentralRole
    • SorEdiAdminRole
    • SorMoveEanRole

    ArrayOfEdiIdentifierType

    ...

    ArrayOfEanLocationCodeType

    ...

    SorTypeType

    ElementData typeBeskrivelsestringEnumeration af SOR typer

    . Kan have en af følgende værdier:

    • IO
    • HI
    • OU

    SorEntityType

    ...

    1. SorDecentralRole
    2. Rolle med adgang til de fleste funktioner i SOR,

      men kun for de specificerede SOR-ID’er (og alle enheder derunder) og kun for Organisatoriske Enheder (OE).

      Kræver tillægsroller for hhv.

      • Flytning af lokationsnumre (sorMoveEan)
      • oprettelse og redigering af geografiske lokaliteter (sorGeo)
      • oprettelse, redigering og lukning af afdelingskoder (sorShak).


      Det er ikke muligt for denne rolle at oprette eller redigere Institutionsejere, Sundhedsinstitutioner eller oprette/redigere sygehuskoder.

      Denne rolle kan også masseopdatere.

    3. SorEditorRole
      1. Hovedrolle med adgang til udvalgte funktioner i SOR og kun til specifikke SOR-enheder.

        Rollen giver kun adgang til at redigere OE under de specificerede SOR-ID’er.

        Kræver tillægsroller for hhv.

        • flytning af lokationsnumre (sorMoveEan)
        • oprettelse og redigering af geografiske lokaliteter (sorGeo)
        • oprettelse, redigering og lukning af afdelingskoder (sorShak).

        Denne rolle kan ikke masseopdatere.

    4. SorGeoRole
      1. Giver mulighed for at oprette og redigere geografiske lokaliteter.

    5. SorShakRole
      1. Giver mulighed for at håndtere Shak-koder, dvs. at til-og fra knytte afdelings-og afsnitskoder på de specificerede SOR-ID’er.

    6. SorMoveEanRole
      1. Giver mulighed for at flytte lokationsnumre mellem SOR-koder som man har rettigheder til.
    7. SorEdiAdminRole
      1. Giver adgang til alle lokationsnumre funktioner (for leverandør bruger)

    SorStatusType

    ElementData typeBeskrivelse
    FromDateDateTime

    Kun output-felt. Input i feltet bliver ignoreret. FromDate bliver default set til i dag+1 dag. Dvs. ændringer gælder altid fra i morgen.

    Under oprettelse (CreateSorEntity): Skal indeholde den første dag,  hvor enheden er aktiv. 

    Under rettelser (EditSorEntity), output: første dag ændring er aktiv/dato for dagen ændringen gælder fra.

    ToDateDateTimeSidste dag enheden er aktiv. Kun output-felt. Input i feltet bliver ignoreret. Brug CloseSorEntity() til at lukke en enhed.
    UpdatedAtDateTimeDato hvornår enheden sidst er opdateret. Kun output-felt. Input I feltet bliver ignoreret.
    FirstFromDateDateTimeDato for hvornår enheden første gang var aktiv. Bliver kun brugt til output. Input i feltet bliver ignoreret.

    SorTypeType

    ElementDate typeBeskrivelse

    String

    Enumeration af SOR-typer. Kan have en af følgende værdier:

    • IO
    • HI
    • OU

    StatusType

    ElementData typeBeskrivelse
    ErrorCodeIntHvis kaldet var en succes, så vil denne have værdien 0. Ved validerings fejl, så vil denne have en positiv værdi. Ved Tekniske og praktiske fejl, så vil denne have en negativ værdi.
    ErrorMessageStringHvis ErrorCode er 0, er dette felt tomt. Ellers indeholder den en kort beskrivelse af, hvilken fejl der skete.

    VirtualAddressInformationType

    ElementData typeBeskrivelse
    InheritanceIndicatorBooleanIndikerer om informationerne er nedarvet eller ej fra parent enheden.
    EmailAddressIdentifierStringEmailadresse
    WebsiteStringHjemmesideadresse
    TelephoneNumberIdentifierStringTelefonnummer
    FaxNumberIdentifierString

    Fax-nummer

    CreateSorEntity

    Security gruppe påkrævet: SorDecentralRole

    Input

    EanLocationCodeStateType

    ...

    Enumeration af stadier. Kan have en af følgende værdier:

    • Undefined
    • None
    • Inherited
    • Own

    ...

    ElementData typeBeskrivelse
    EanLocationCodeLong (EanLocationCode)Lokationsnummer
    OnlyInternalIndicatorBoolean (OnlyInternalIndicator)Angiver om lokationsnummeret er til internt brug
    NonActiveIndicatorBoolean (NonActiveIndicator)Angiver om lokationsnummeret er ikke-aktivt
    SystemSupplierIdentifierLong (SystemSupplierType)Systemleverandør-id
    CommunicationSupplierIdentifierLong (CommunicationSupplierType)Netoperatør-id
    SystemTypeIdentifierLong (SystemTypeIdentifier)EDB-system-id
    EdiAdministratorIdentifierLong (EdiAdministratorIdentifier)EDI-Administrator-id
    SorNoteString (SorNoteType)Angiver eventuelle bemærkninger til lokationsnummeret
    SorStatusSorStatusTypeAngiver SOR enhedens status
    RegionCodeString (AuthorityCodeType)Regionens kode, f.eks. 1084 for RegionHovedstaden

    Eksterne typer med lokale ændringer

    Alle data typer nævnt her, er typer som originalt er defineret andre steder. Projektet har været nødt til at lave lokale ændringer til disse, for at opfylde forskellige behov eller krav.

    Disse ændringer er allerede udført i WSDL og XSD filerne leveret af projektet, og ingen ændringer er nødvendige fra anvenders side. Denne sektion er kun til information.

    AddressInformationType

    Namespace: urn:oio:nsi:2.0.0

    ...

    ParameterCreateSorEntityRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet
    Output
    ElementData typeBeskrivelse
    ResultCreateSorEntityResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    CreateSorEntityRequestParameterType

    ElementData typeBeskrivelse
    SorEntitySorEntityTypeDet SOR objekt som skal oprettes

    CreateSorEntityResponseResultType

    ElementData typeBeskrivelse
    SorEntitySorEntityTypeDet SOR objekt som blev oprettet i systemet

    EditSorEntity

    Security gruppe påkrævet: SorDecentralRole, SorEditorRole

    Input
    ElementData typeBeskrivelse
    ParameterEditSorEntityRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet
    Output
    ElementData typeBeskrivelse
    ResultEditSorEntityResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    EditSorEntityRequestParameterType

    ElementData typeBeskrivelse
    AddressPostalSorEntityAddressPostalTypeMunicipalityCodeString (MunicipalityCode)StreetCodeString (StreetCodeType)
    RegionCodeString (AuthorityCodeType)Feltet benyttes ikke
    AdditionalAddressInformationTextString (AdditionalAddressInformationTextType)CoordETRS89z32NMeasureDecimal (CoordETRS89z32NMeasure)CoordETRS89z32EMeasureDecimal (CoordETRS89z32EMeasure)
    SkipAddressValidationBooleanNyt felt i forhold til den originale type definition. Indikerer om den indtastede adresse skal valideres. Er altid sat til false i retur objektet.
    RegionNameStringNyt felt i forhold til den originale type definition. Indeholder navnet på den valgte regionskode. Feltet bruges kun til output.
    InheritanceIndicatorBooleanNyt felt i forhold til den originale type definition. Indikerer om informationerne er nedarvet eller ej.

    VirtualAddressInformation type

    Namespace: urn:oio:sundhedsstyrelsen:organisation:1.0.0

    ...

    SorEntityTypeDet SOR objekt som skal redigeres

    EditSorEntityResponseResultType

    ElementData typeBeskrivelse
    SorEntitySorEntityTypeSOR objektet som det ser ud efter redigering

    MoveSorEntity

    Security gruppe påkrævet: SorDecentralRole

    Input
    ElementData typeBeskrivelse
    ParameterMoveSorEntityRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet
    Output
    ElementData typeBeskrivelse
    ResultMoveSorEntityResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    MoveSorEntityRequestParameterType

    ElementData typeBeskrivelse
    SorIdentifierLongSOR-kode på det SOR objekt som skal flyttes
    ParentSorIdentifierLongSOR-kode på det SOR objekt der skal være den nye parent
    FromDateDateTimeDato for hvornår at flytningen skal træde i kraft

    MoveSorEntityResponseResultType

    ElementData typeBeskrivelseEmailAddressIdentifierString (EmailAddressIdentifierType)WebsiteString (WebsiteType)TelehponeNumberIdentifierString (TelephoneNumberIdentifierType)FaxNumberIdentifierStirng (FaxNumberIdentifierType)
    InheritanceIndicatorBooleanNyt felt i forhold til den originale type definition. Indikerer om informationerne er nedarvet eller ej.

    CreateSorEntity

    Tomt objekt

    ReplaceSorEntities

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    Input
    ElementData typeBeskrivelse
    ParameterCreateSorEntityRequestParameterTypeReplaceSorEntitiesRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet
    CreateSorEntityResponseResultType
    Output
    ElementData typeBeskrivelse
    ResultReplaceSorEntitiesResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    ReplaceSorEntitiesRequestParameterType

    ElementData typeBeskrivelse
    SorEntitySorIdentifierSorEntityTypeLongSOR-kode på det Det SOR objekt som skal oprettesflyttes

    ...

    FromDate
    ElementData typeBeskrivelse
    SorEntitySorEntityTypeDet SOR objekt som blev oprettet i systemet

    ...

    DateTimeDato for hvornår at erstatningen skal træde i kraft
    ReplacesEntityCollectionArrayOfLongListe af SOR-koder på de enheder som skal erstattes

    ReplaceSorEntitiesResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    CloseSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    Input
    ElementData typeBeskrivelse
    ParameterEditSorEntityRequestParameterTypeCloseSorEntityRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet
    EditSorEntityResponseResultType
    Output
    ElementData typeBeskrivelse
    ResultCloseSorEntityResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    CloseSorEntityRequestParameterType

    ElementData typeBeskrivelse
    SorEntitySorIdentifierSorEntityTypeLongSOR-kode på det Det SOR objekt som skal redigeres

    ...

    lukkes
    ToDateDateTimeSidste dato for hvornår at enheden er aktiv

    CloseSorEntityResponseResultType

    SorEntity
    ElementData typeBeskrivelse
    Tomt objektSorEntityTypeSOR objektet som det ser ud efter redigering

    MoveSorEntity

    EditEanLocationCodeSystemType

    Security-gruppe påkrævet: SorEdiAdminRoleSecurity gruppe påkrævet: SorCentralRole, SorDecentralRole

    Input
    ElementData typeBeskrivelse
    ParameterMoveSorEntityRequestParameterTypeEditEanLocationCodeSystemTypeRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet. User.ententies ikke benyttes for EditEanLocationCodeSystemType operationen.
    MoveSorEntityResponseResultType
    Output
    ElementData typeBeskrivelse
    ResultEditEanLocationCodeSystemTypeResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    EditEanLocationCodeSystemTypeRequestParameterType

    ElementData typeBeskrivelse
    SorIdentifierSystemTypeIdentifierLong (SorIdentifierType)ID på det SOR objekt som skal flyttes
    ParentSorIdentifierLong (SorIdentifierType)ID på det SOR object der skal være den nye parent
    FromDateDate (FromDate)Dato for hvornår at flytningen skal træde i kraft

    MoveSorEntityResponseResultType

    ...

    EDB-system-id
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    EditEanLocationCodeSystemTypeResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    EditEanLocationCodeCommunicationSupplier

    ...

    Security gruppe påkrævet: SorCentralRole, SorDecentralRoleSorEdiAdminRole

    Input
    ElementData typeBeskrivelse
    ParameterReplaceSorEntitiesRequestParameterTypeEditEanLocationCodeCommunicationSupplierRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet. User.Entities benyttes ikke for EditEanLocationCodeCommunicationSupplier operationen.
    Output
    ElementData typeBeskrivelse
    ResultReplaceSorEntitiesResponseResultTypeEditEanLocationCodeCommunicationSupplierResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    EditEanLocationCodeCommunicationSupplierRequestParameterType

    flyttes
    ElementData typeBeskrivelse
    SorIdentifierCommunicationSupplierIdentifierLongVANS leverandør (SorIdentifierTypeID)ID på det SOR objekt
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres
    FromDateDate (FromDate)Dato for hvornår at erstatningen skal træde i kraft
    ReplacesEntityCollectionSorIdentifierCollectionTypeListe af SOR ID'er på de enheder som skal erstattes

    ReplaceSorEntitiesResponseResultType

    ...

    EditEanLocationCodeCommunicationSupplierResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    EditEanLocationCodeEdiAdministrator

    ...

    Security gruppe påkrævet: SorCentralRole, SorDecentralRoleSorEdiAdminRole

    Input
    ElementData typeBeskrivelse
    ParameterCloseSorEntityRequestParameterTypeEditEanLocationCodeEdiAdministratorRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet. User.Entities benyttes ikke for EditEanlocationCodeEdiAdministrator operationen.
    Output
    ElementData typeBeskrivelse
    ResultCloseSorEntityResponseResultTypeEditEanLocationCodeEdiAdministratorResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    EditEanLocationCodeEdiAdministratorRequestParameterType

    ElementData typeBeskrivelse
    SorIdentifierEdiAdministratorIdentifierLong (SorIdentifierType)ID på det SOR objekt som skal lukkes
    FromDateDate (FromDate)Dato for hvornår at lukningen skal træde i kraft

    CloseSorEntityResponseResultType

    EDI-Administrator-id
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    EditEanLocationCodeEdiAdministratorResponseResultType

    ElementData typeElementData typeBeskrivelse
    Tomt objekt

    ...

    EditEanLocationCodeRegion

    Security gruppe påkrævet:  SorEdiCentralRole, SorEdiAdminRole

    Input
    ElementData typeBeskrivelse
    ParameterEditEanLocationCodeSystemTypeRequestParameterTypeEditEanLocationCodeRegionRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet. User.Entities benyttes ikke for EditEanLocationCodeRegion operationen.
    Output
    ElementData typeBeskrivelse
    ResultEditEanLocationCodeSystemTypeResponseResultTypeEditEanLocationCodeRegionResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    EditEanLocationCodeRegionRequestParameterType

    ElementData typeBeskrivelse
    SystemTypeIdentifierRegionCodeLong (SystemTypeIdentifier)RegionEDB-system-id
    EanLocationCodeEntitiesArrayOfEanLocationCodeTypeArrayOfLong1Liste af lokationsnumre som skal opdateres

    ...

    EditEanLocationCodeRegionResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    ...

    EditEanLocationCodeSystemSupplier

    Security gruppe påkrævet:  SorEdiCentralRole, SorEdiAdminRole

    Input
    ElementData typeBeskrivelse
    ParameterEditEanLocationCodeCommunicationSupplierRequestParameterTypeEditEanLocationCodeSystemSupplierRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet. User.Entities benyttes ikke for EditEanLocationCodeSystemSupplier.
    Output
    ElementData typeBeskrivelse
    ResultEditEanLocationCodeCommunicationSupplierResponseResultTypeEditEanLocationCodeSystemSupplierResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    EditEanLocationCodeSystemSupplierRequestParameterType

    ElementData typeBeskrivelse
    CommunicationSupplierIdentifierSystemSupplierIdentifierLong (CommunicationSupplierIdentifier)VANS leverandør (ID)Systemleverandør-id
    EanLocationCodeEntitiesArrayOfEanLocationCodeTypeArrayOfLong1Liste af lokationsnumre som skal opdateres

    ...

    EditEanLocationCodeSystemSupplierResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    ...

    MoveEanLocationCode

    Security gruppe påkrævet:  SorEdiCentralRoleSorDecentralRole

    Input
    ElementData typeBeskrivelse
    ParameterEditEanLocationCodeEdiAdministratorRequestParameterTypeMoveEanLocationCodeRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet
    Output
    ElementData typeBeskrivelse
    ResultEditEanLocationCodeEdiAdministratorResponseResultTypeMoveEanLocationCodeResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    MoveEanLocationCodeRequestParameterType

    ElementData typeBeskrivelse
    EdiAdministratorIdentifierSorIdentifierLong (EdiAdministratorIdentifier)EDI-Administrator-id
    EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe af lokationsnumre som skal opdateres

    ...

    SOR-kode for den nye enhed, som den skal knyttes til
    EanLocationCodeLongAngiver lokationsnummeret for enheden

    MoveEanLocationCodeResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    ...

    UpdateEdiTypes

    Security gruppe påkrævet:  SorEdiCentralRole, SorEdiAdminRole

    Input
    ElementData typeBeskrivelse
    ParameterEditEanLocationCodeRegionRequestParameterTypeUpdateEdiTypesRequestParameterTypeParametre for operationen
    UserUserTypeUser element til brug i autorisering af kaldet. User.Entities benyttes ikke for UpdateEdiTypes operationen.
    Output
    ElementData typeBeskrivelse
    ResultEditEanLocationCodeRegionResponseResultTypeUpdateEdiTypesResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    UpdateEdiTypesRequestParameterType

    ArrayOfEanLocationCodeType
    ElementData typeBeskrivelse
    RegionCodeString (RegionCode)Region
    EdiIdentifiersArrayOfLong2Liste af EDI-meddelelsestyper som skal tilføjes til lokationsnumre som skal opdateres. Ved tom liste slettes alle EDI numre fra lokationsnumre som skal opdateres.
    EanLocationCodeEntitiesArrayOfLong1EanLocationCodeEntitiesListe af lokationsnumre som skal opdateres

    ...

    UpdateEdiTypesResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    EditEanLocationCodeSystemSupplier

    Security gruppe påkrævet: SorEdiCentralRole

    ...

    EditEanLocationCodeSystemSupplierRequestParameterType

    ...

    EditEanLocationCodeSystemSupplierResponseResultType

    ...

    MoveEanLocationCode

    Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole

    ...

    MoveEanLocationCodeRequestParameterType

    ...

    MoveEanLocationCodeResponseResultType

    ...

    UpdateEdiTypes

    Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole

    ...

    UpdateEdiTypesRequestParameterType

    ...

    UpdateEdiTypesResponseResultType

    ...

    Fejlkoder

    Alle operationer vil som udgangspunkt returnere et Status objekt som en del af svaret. Dette object indeholder altid to felter, ErrorCode og Message. Hvis ErrorCode er 0, så var kaldet en succes, ellers skete der en fejl i løbet af kaldet. Positive værdier er validerings fejl fra SOR's interne systemer, og Message vil have en beskrivelse af fejlen. Mere tekniske fejl vil blive lavet som en SOAP fault. De nedenstående er hvilke denne applikation definerer:

    ...

    Fejlkoder

    Alle operationer vil som udgangspunkt returnere et Status objekt som en del af svaret. Dette object indeholder altid to felter, ErrorCode og Message. Hvis ErrorCode er 0, så var kaldet en succes, ellers skete der en fejl i løbet af kaldet.

    Positive værdier er validerings fejl fra SOR's interne systemer, og Message vil have en beskrivelse af fejlen.

    Mere tekniske fejl vil blive lavet som en SOAP fault.

    De nedenstående er hvilke denne applikation definerer:

    MedCom fault codeFault stringBeskrivelse
    missing_required_headerIkke muligt at læse forespørgslenAutentifikations fejl, kan ikke læse forespørgslen
    ticket_missingDer opstod en fejl under autentificeringen: Manglende sikkerhedsbillet i forespørgselAutentifikations fejl, manglende sikkerhedsbillet i forespørgsel
    ticket_not_validDer opstod en fejl under autentificeringen: Sikkerhedsbilletten er ikke gyldigAutentifikations fejl, ugyldig sikkerhedsbillet i forespørgsel
    principal_user_presentDer opstod en fejl under autoriseringen: På vegne af understøttes ikkeAutorisations fejl, på vegne af tillades ikke adgang
    organisation_missingDer opstod en fejl under autoriseringen: Manglende organisation i sikkerhedsbillettenAutorisations fejl, organisation ikke angivet
    user_type_not_validDer opstod en fejl under autoriseringen: Brugertypen kan ikke autoriseresAutorisations fejl, brugertypen tillades ikke adgang
    not_authorizedCVR er ikke whitelistetAutorisations fejl, manglende whitelisting
    syntax_errorDet er ikke muligt at læse bodyFejl under transformeringen af SOAP body til et objekt
    processing_problemUgyldig requesttypeRequest typen i SOAP action findes ikke
    processing_problemDet er ikke muligt at læse forespørgslenRequest body kan ikke læses
    processing_problemDer er sket en fejl i forsøget på at kontakte SOR databasenFejl under forespørgsel mod whitelistingdatabasen
    processing_problemError happened while contacting SOR backend

    Fejl under forespørgsel mod backenden

    Supporten kan søge i SOR ekstern/SOR intern fejllogs

    processing_problemDet er ikke muligt at skrive objektFejl under at skrive det transformerede objekt til klienten
    processing_problemDet er ikke muligt at skrive bodyFejl under transformeringen af object til XML
    processing_problemDet er ikke muligt at læse bodyFejl under transformeringen af SOAP body til et objekt

    Andre fejlkoder kan forekomme, men disse kommer fra SOR Ekstern eller SOR Intern.

    Det skal pointeres, at MedCom's fault code kan findes under detail sektionen af den resulterende SOAP fault. Den påkrævede faultstring vil altid være "Server".

    Eksempel på kald

    Java frameworks

    For et eksempel implementation i Java, kan der med fordel tages udgangspunkt i servicens integrationstest:

    Denne implementerer og bruger er JAX-WS klient for servicen, implementeret med Apache CXF. Klienten benytter også Seal.Java biblioteket til håndtering af SOSI ID kort og DGWS.

    .NET frameworks

    Seal.NET er .NET ekvivalenten til Seal.Java

    Der eksisterer ingen eksempel implementation i .NET, men bibliotek og WSDL er frit tilgængelig til at lave en sådan

    Andre fejlkoder kan forekomme, men disse kommer fra backenden, eller dens underliggende services.

    Det skal pointeres, at MedCom's fault code kan findes under detail sektionen af den resulterende SOAP fault. Den påkrævede faultstring vil altid være "Server".

    Eksempel på kald

    Java frameworks

    For en eksempel implementation i Java, kan der med foredel tages udgangspunkt i servicens integrationstest:

    https://svn.nspop.dk/svn/capgemini/SORServices/NSP/sorus/trunk/SorUpdateService/src/test/java/dk/sds/nsp/sor/sorus/servlet/SorusV2ServletIT.java

    Denne implementerer og bruge er JAX-WS klient for servicen, implementeret med Apache CXF. Klienten benytter også Seal.Java biblioteket til håndtering af SOSI ID kort og DGWS. Yderligere dokumentation på biblioteket kan findes her:

    https://digitaliser.dk/group/374971

    .NET frameworks

    Seal.NET er .NET ekvivalenten til Seal.Java, og er dokumenteret her:

    http://digitaliser.dk/group/375117

    Der eksisterer ingen eksempel implementation i .NET, men bibliotek og WSDL er frit tilgængelig til at lave en sådan.

    Version 1

    Denne version af systemet er uddateret, og ikke anbefalet for nye klienter. Den bliver holdt i live i en overgangsperiode, og vil forsvinde i en fremtidig opdatering af systemet.

    Endpoint

    Opdater servicen kan tilgås på adressen:

    [miljø url]/sor-opdater/SOROpdateringService

    For eksempel, på TEST1-miljøet vil det være:

    http://test1.ekstern-test.nspop.dk:8080/sor-opdater/SOROpdateringService

    WSDL filen for servicen kan hentes ved at tilføje "?wsdl" til enden af URL'en.

    Snitfladebeskrivelser

    Fælles

    Sikkerhed

    Fælles for hele servicen, er at der bliver benyttet Den Gode Webservice (DGWS) til authentifikering, og der accepteres kun niveau 3 (VOCES og FOCES) eller 4 (MOCES) ID kort udstedt af SOSI-STS. Selvom at niveau 3 både indeholder FOCES og VOCES, så er det kun FOCES som er tilladt.

    Namespaces

    Alle kald til servicen vil benytte typer defineret under namespacet:

    http://sundhedsdatastyrelsen.dk/SOROpdateringService/2018/09/06/

    Der er type med samme navne under andre namespaces, så det er vigtigt at få valgt den rigtige.

    Alle svar fra servicen vil benytte typer defineret under namespacet:

    http://sor.dksund.dk/

    Eksterne typer

    Mange af de data typer som bliver benyttet, kan typisk findes her:

    http://filer.nsi.dk/sor/xsd/

    Typer under både v_1_0_0 og v_2_0_0 bliver benyttet.

    Følgende lokationer bliver også inkluderet for typer:

    http://digitaliser.dk/resource/1945/artefact/CVR_CVRnumberIdentifier.xsd

    http://rep.oio.dk/cvr.dk/xml/schemas/2005/03/22/CVR_ProductionUnitIdentifier.xsd

    http://rep.oio.dk/kms.dk/xml/schemas/2007/05/23/

    Alle typer hentet eksternt fra er ikke angivet i dette dokument, da listen så vil blive meget lang.

    Koder

    Flere felter benytter koder frem for tekst strenge til at signalere over for servicen, hvilken type enhed der er ønsket at blive oprettet, eller hvor at enheden er placeret. Eksempler på sådanne er SystemTypeIdentifier under EanLocationCodeEntityType, eller RegionCode under de forskellige adresse typer (aktivitet, post, of visitation). Koderne for disse kan findes her:

    http://filer.nsi.dk/sor/lookupdata/

    Gyldighed

    I de kald hvor at SorEntity bliver returneret, der er den returnerede version ikke den gyldige version af enheden. Den returnerede version er hvad der vil blive gyldigt i fremtiden (tidligst dagen efter).

    User type

    ...

    ArrayOfLong type

    ...

    ArrayOfsorSecurityGroupsExternal type

    ...

    En liste af sorSecurityGroupsExternal

    ...

    sorSecurityGroupsExternal type

    ...

    Enumeration af security groups. Kan have en af følgende værdier:

    • SorCentralRole
    • SorDecentralRole
    • SorEditorRole
    • SorGeoRole
    • SorShakRole
    • SorEdiCentralRole
    • SorEdiAdminRole
    • SorMoveEanRole

    EanLocationCodeState type

    ...

    Enumeration af stadier. Kan have en af følgende værdier:

    • Undefined
    • None
    • Inherited
    • Own

    EanLocationCodeEntityType type

    ...

    ArrayOfEanLocationCodes type

    ...

    ArrayOfEdiIdentifiers type

    ...

    Status type

    ...

    SorEntity type

    ...

    Feltet benyttes ikke

    ...

    Eksterne typer med lokale ændringer

    Alle data typer nævnt her, er typer som originalt er defineret andre steder. Projektet har været nødt til at lave lokale ændringer til disse, for at opfylde forskellige behov eller krav.

    Disse ændringer er allerede udført i WSDL og XSD filerne leveret af projektet, og ingen ændringer er nødvendige fra anvenders side. Denne sektion er kun til information.

    AddressInformation type

    Namespace: urn:oio:nsi:2.0.0

    Original: http://filer.nsi.dk/sor/xsd/v_2_0_0/AddressInformation.xsd

    ...

    VirtualAddressInformation type

    Namespace: urn:oio:sundhedsstyrelsen:organisation:1.0.0

    Original: http://filer.nsi.dk/sor/xsd/v_1_0_0/VirtualAddressInformation.xsd

    ...

    CreateSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    EditSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    MoveSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    ReplaceSorEntities

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    CloseSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    EditEanLocationCodeSystemType

    Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

    ...

    EditEanLocationCodeCommunicationSupplier

    Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

    ...

    EditEanLocationCodeEdiAdministrator

    Security gruppe påkrævet: SorEdiCentralRole

    ...

    EditEanLocationCodeRegion

    Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

    ...

    EditEanLocationCodeSystemSupplier

    Security gruppe påkrævet: SorEdiCentralRole

    ...

    MoveEanLocationCode

    Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole

    ...

    UpdateEdiTypes

    Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole

    ...

    Fejlkoder

    Alle operationer vil som udgangspunkt returnere et Status objekt som en del af svaret. Dette object indeholder altid to felter, ErrorCode og Message. Hvis ErrorCode er 0, så var kaldet en succes, ellers skete der en fejl i løbet af kaldet. Positive værdier er validerings fejl fra SOR's interne systemer, og Message vil have en beskrivelse af fejlen. Mere tekniske fejl vil blive lavet som en SOAP fault. De nedenstående er hvilke denne applikation definerer:

    ...

    Andre fejlkoder kan forekomme, men disse kommer fra backenden, eller dens underliggende services.

    Det skal pointeres, at MedCom's fault code kan findes under detail sektionen af den resulterende SOAP fault. Den påkrævede faultstring vil altid være "Server".

    Eksempel på kald

    Java frameworks

    For en eksempel implementation i Java, kan der med foredel tages udgangspunkt i servicens integrationstest:

    https://svn.nspop.dk/svn/capgemini/SORServices/NSP/sorus/trunk/SorUpdateService/src/test/java/dk/sds/nsp/sor/sorus/servlet/SorusServletIT.java

    Denne implementerer og bruge er JAX-WS klient for servicen, implementeret med Apache CXF. Klienten benytter også Seal.Java biblioteket til håndtering af SOSI ID kort og DGWS. Yderligere dokumentation på biblioteket kan findes her:

    https://digitaliser.dk/group/374971

    .NET frameworks

    Seal.NET er .NET ekvivalenten til Seal.Java, og er dokumenteret her:

    http://digitaliser.dk/group/375117

    Der eksisterer ingen eksempel implementation i .NET, men bibliotek og WSDL er frit tilgængelig til at lave en sådan.

    Kendte fejl

    Der er desværre en udfordring med at sende værdien null frem og tilbage, som ikke er muligt at få løst før en fremtidig release. Heldigvis er de lette at detektere og håndtere.

    Alle dato værdier som burde blive returneret som null, vil i stedet blive returneret som 0001-01-01 (så, starten for vores tidsregning).

    Alle tal felter som burde blive returneret som null, vil i stedet blive returneret som deres mindste værdi. Felter som er long vil blive -9.223.372.036.854.775.808, integer vil blive -2.147.483.648, og så videre.

    Alle boolean felter som burde være null, vil i stedet blive returneret som false. Men dette vil også være den forventede værdi i tilfælde af at den mangler.

    Alle string felter er dog ikke kendt at have dette null problem, og burde blive returneret korrekt.