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

Version 2

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

Endpoint

Opdater servicen kan tilgås på adressen:

[miljø url]/sor-opdater/v2/SOROpdateringService

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

http://test1.ekstern-test.nspop.dk:8080/sor-opdater/v2/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/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

...

StatusType

...

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

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

...

SorEntityType

ElementData typeBeskrivelseSorIdentifierLong (SorIdentifierType)Unik nøgle der identificerer en SOR enhedSorTypeSorTypeTypeTekstværdi for SOR-type, skal være enten "IO", "HI", eller "OU"SorStatusSorStatusTypeAngiver SOR enhedens statusGeographicalLocalisationIdentifierLong (GeographicalLocalisationIdentifierType)Id på den geografiske lokationGeographicalLocalisationNameString (GeographicalLocalisationNameType)Navn på den geografiske lokationHasGeographicalLocalisationBooleanAngiver om SOR enheden har en geografisk lokation. Vil altid returneres som false.ParentSorIdentifierLong (SorIdentifierType)Forældre SOR-idActivityAddressInformationAddressInformationTypeAktivitetsadressenVisitingAddressInformationAddressInformationTypeBesøgsadressenPostalAddressInformationAddressInformationTypePostadressenPharmacyIdentifierString (PharmacyIdentifierType)SOR-enhedens apoteksnummerEntityNameString (SorNameType)SOR Enhedens navnEntityTypeIdentifierLong (EntityTypeIdentifier)Teknisk nøgle for EntityType (SNOMED Concept Id)VirtualAddressInformationVirtualAddressInformationTypeAngiver enhedens hjemmesideadresse, email, telefonnummer og faxnummerReportingLevelIndicatorBoolean (ReportingLevelIndicator)Angiver om enheden er indberetningsniveau til Landspatientregisteret (LPR2)LocalAttributeCollectionLocalAttributeCollectionTypeDer kan være op til 5 lokale attributterLocalCodeString (LocalCodeType)SOR-enhedens lokale kode. 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 lokationsnummeret på SOR enhedenPatientsAdmittedIndicatorBoolean (PatientsAdmittedIndicator)Angiver om enheden er et sengeafsnitAmbulantActivityIndicatorBoolean (AmbulantActivityIndicator)Angiver om enheden er et ambulatorieShakIdentifierString (ShakIdentifierType)Angiver hvilken sygehusafdelingskode, der er knyttet til SORenheden. Den samme sygehusafdelingskode kan være knyttet til mere end én SORenhed. Der kan kun registreres officielle sygehusafdelingskoder.PrioritizedEntitySpecialityCollectionPrioritizedEntitySpecialityCollectionTypeListe af SOR enhedens kliniske specialer
. Der kan angives op til 8, hvoraf nr. 1 er
hovedspecialet.ProviderIdentifierString (ProviderIdentifierType)SOR-enhedens ydernummerCVRnumberIdentifierString (CVRnumberIdentifierType)CVR nummer for SOR-enheden. Obligatorisk hvis SOR typen er IO.ProductionUnitIdentifierString (ProductionUnitIdentifierType)P nummer for SOR-enheden

...

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

String

Enumeration af

stadier

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

  • Undefined
  • None
  • Inherited
  • Own
    • iso3166-alpha2
    • iso3166-alpha3
    • un-numeric3
    • imk

    EanLocationCodeEntityType

    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
    til lokationsnummeret
    SorStatusSorStatusTypeAngiver SOR enhedens status. Kun output. Input bliver ignoreret.
    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

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

    ...

    VirtualAddressInformation type

    Namespace: urn:oio:sundhedsstyrelsen:organisation:1.0.0

    ...

    EanLocationCodeStateType

    ElementData typeBeskrivelse

    String

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

    • Undefined
    • None
    • Inherited
    • Own

    LocalAttributeCollectionType

    ElementData typeBeskrivelse
    LocalAttribute1StringLokal attribut 1
    LocalAttribute2StringLokal attribut 2
    LocalAttribute3StringLokal attribut 3
    LocalAttribute4StringLokal attribut 4
    LocalAttribute5StringLokal attribut 5

    PrioritizedEntitySpecialityType

    ElementData typeBeskrivelse
    SpecialityIdentifierLong 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

    ElementData typeBeskrivelse
    NameStringEnhedens navn
    SorIdLongEnhedens SOR-kode
    DateDateTimeDato for erstatning

    SorEntityType

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

    CreateSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    CreateSorEntityRequestParameterType

    ...

    CreateSorEntityResponseResultType

    ...

    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

    EditSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    EditSorEntityRequestParameterType

    ...

    EditSorEntityResponseResultType

    ...

    MoveSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    MoveSorEntityRequestParameterType

    ...

    MoveSorEntityResponseResultType

    ...

    ReplaceSorEntities

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

    ElementData typeBeskrivelse

    ResultStringReplaceSorEntitiesResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ReplaceSorEntitiesRequestParameterType

    ...

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

    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

    ReplaceSorEntitiesResponseResultType

    ...

    CloseSorEntity

    Security gruppe påkrævet: SorCentralRole, SorDecentralRole

    ...

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

    CloseSorEntityResponseResultType

    ...

    EditEanLocationCodeSystemType

    Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

    ...

    EditEanLocationCodeSystemTypeRequestParameterType

    ...

    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

    ...

    Tomt objekt
    ElementData typeBeskrivelse
    ErrorCode

    EditEanLocationCodeCommunicationSupplier

    Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

    IntHvis 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

    ...

    Parameter
    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
    ElementData typeBeskrivelse
    ParameterCreateSorEntityRequestParameterTypeParametre for operationen
    EditEanLocationCodeCommunicationSupplierRequestParameterTypeParametre for operationenUserUserTypeUser element til brug i autorisering af kaldet
    EditEanLocationCodeCommunicationSupplierResponseResultType
    Output
    ElementData typeBeskrivelse
    ResultCreateSorEntityResponseResultTypeResultatet af operationen
    StatusStatusTypeStatus for hvordan kaldet gik

    ...

    CreateSorEntityRequestParameterType

    ElementData typeBeskrivelse
    CommunicationSupplierIdentifierLong (CommunicationSupplierIdentifier)VANS leverandør (ID)
    EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe af lokationsnumre som skal opdateres

    ...

    SorEntitySorEntityTypeDet SOR objekt som skal oprettes

    CreateSorEntityResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    ...

    SorEntitySorEntityTypeDet SOR objekt som blev oprettet i systemet

    EditSorEntity

    Security gruppe påkrævet:  SorEdiCentralRoleSorDecentralRole, SorEditorRole

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

    ...

    EditSorEntityRequestParameterType

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

    ...

    SorEntitySorEntityTypeDet SOR objekt som skal redigeres

    EditSorEntityResponseResultType

    Tomt objekt
    ElementData typeBeskrivelse
    SorEntity

    EditEanLocationCodeRegion

    SorEntityTypeSOR objektet som det ser ud efter redigering

    MoveSorEntity

    Security gruppe påkrævet: SorDecentralRoleSecurity gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

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

    ...

    MoveSorEntityRequestParameterType

    ElementData typeBeskrivelse
    RegionCodeString (RegionCode)Region
    EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe af lokationsnumre som skal opdateres

    ...

    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 typeBeskrivelse
    Tomt objekt

    ...

    ReplaceSorEntities

    Security gruppe påkrævet:  SorEdiCentralRoleSorDecentralRole

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

    ...

    ReplaceSorEntitiesRequestParameterType

    ElementData typeBeskrivelse
    SystemSupplierIdentifierSorIdentifierLong (SystemSupplierIdentifier)Systemleverandør-id
    EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe af lokationsnumre som skal opdateres

    ...

    SOR-kode på det SOR objekt som skal flyttes
    FromDateDateTimeDato 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:  SorEdiCentralRole, SorDecentralRole

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

    ...

    CloseSorEntityRequestParameterType

    ElementData typeBeskrivelse
    SorIdentifierLong (SorIdentifierType)SOR-kode for den nye enhed, som den skal knyttes til
    EanLocationCodeLong (EanLocationCode)Angiver lokationsnummeret for enheden

    ...

    på det SOR objekt som skal lukkes
    ToDateDateTimeSidste dato for hvornår at enheden er aktiv

    CloseSorEntityResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    ...

    EditEanLocationCodeSystemType

    Security-gruppe påkrævet:  SorEdiCentralRole, SorDecentralRoleSorEdiAdminRole

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

    ...

    EditEanLocationCodeSystemTypeRequestParameterType

    ArrayOfEanLocationCodeType
    ElementData typeBeskrivelse
    EdiIdentifiersSystemTypeIdentifierArrayOfEdiIdentifierTypeLongEDB-system-idListe af EDI numre
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    ...

    EditEanLocationCodeSystemTypeResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    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:

    ...

    EditEanLocationCodeCommunicationSupplier

    Security gruppe påkrævet: SorEdiAdminRole

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

    EditEanLocationCodeCommunicationSupplierRequestParameterType

    ElementData typeBeskrivelse
    CommunicationSupplierIdentifierLongVANS leverandør (ID)
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    EditEanLocationCodeCommunicationSupplierResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    EditEanLocationCodeEdiAdministrator

    Security gruppe påkrævet: SorEdiAdminRole

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

    EditEanLocationCodeEdiAdministratorRequestParameterType

    ElementData typeBeskrivelse
    EdiAdministratorIdentifierLongEDI-Administrator-id
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    EditEanLocationCodeEdiAdministratorResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    EditEanLocationCodeRegion

    Security gruppe påkrævet: SorEdiAdminRole

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

    EditEanLocationCodeRegionRequestParameterType

    ElementData typeBeskrivelse
    RegionCodeLongRegion
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    EditEanLocationCodeRegionResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    EditEanLocationCodeSystemSupplier

    Security gruppe påkrævet: SorEdiAdminRole

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

    EditEanLocationCodeSystemSupplierRequestParameterType

    ElementData typeBeskrivelse
    SystemSupplierIdentifierLongSystemleverandør-id
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    EditEanLocationCodeSystemSupplierResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    MoveEanLocationCode

    Security gruppe påkrævet: SorDecentralRole

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

    MoveEanLocationCodeRequestParameterType

    ElementData typeBeskrivelse
    SorIdentifierLongSOR-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: SorEdiAdminRole

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

    UpdateEdiTypesRequestParameterType

    ElementData typeBeskrivelse
    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.
    EanLocationCodeEntitiesArrayOfLong1Liste af lokationsnumre som skal opdateres

    UpdateEdiTypesResponseResultType

    ElementData typeBeskrivelse
    Tomt objekt

    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.