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 kommentare kommentarer omkring disse:

Release WSDL

Kommentar
1
3.
1
0

Release af version

2

3 af WSDL

Version 1 af WSDL er stadig aktiv, men opgradering til version 2 er anbefalet

- gældende version

2.0Release af version 2 - ikke tilgængelig
1.0Release af version 1
af WSDL
- ikke tilgængelig

Neden for kan dokumentationen for de aktive WSDL versioner findes.

...

Releases SORUS

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

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

...

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/v3/SOROpdateringService

TEST1-miljøet

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

TEST2-miljøet:

 https://test2-cnsp.ekstern-test.nspop.dk:8443/sor-opdatering/v3/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/v3/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/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.

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.
EntitiesSorIdentifierCollectionType

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

SorIdentifierCollectionType

ElementData typeBeskrivelse
SorIdentifierListe af longListe af SOR-koder

ArrayOfEanLocationCodeType

ElementData typeBeskrivelse
EanLocationCodeListe af longListe af lokationsnumre

ArrayOfEdiIdentifierType

ElementData typeBeskrivelse
EdiIdentifierListe af longListe af EDI meddelelsestyper

ArrayOfSorIdentifierType

ElementData typeBeskrivelse
SorIdentifierListe af longListe af SOR-koder

ArrayOfPrioritizedEntitySpecialityType

ElementData typeBeskrivelse
PrioritizedEntitySpecialityListe af PrioritizedEntitySpecialityTypeListe af SOR-

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
hoved specialet.
ProviderIdentifierString (ProviderIdentifierType)SOR-enhedens ydernummerCVRnumberIdentifierString (CVRnumberIdentifierType)CVR nummer for SOR-enheden. Obligatorisk hvis SOR typen er IO.ProductionUnitIdentifierString (ProductionUnitIdentifierType)P nummer for SOR-enheden

...

ArrayOfReplacingInfoType

ElementData typeBeskrivelse
ReplacingInfoTypeListe af ReplacingInfoTypeListe af SOR-enheder

ArrayOfSorSecurityGroupExternalType

ElementData typeBeskrivelse
SorSecurityGroupExternalListe af SorSecurityGroupExternalTypeSecurity groups

CountryIdentificationCodeType

ElementData typeBeskrivelsestring

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

  • Undefined
  • None
  • Inherited
  • Own

...

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

(OnlyInternalIndicator) (NonActiveIndicator) (SystemSupplierType) (CommunicationSupplierType) (SystemTypeIdentifier) (EdiAdministratorIdentifier) (SorNoteType) til lokationsnummeret
ElementData typeBeskrivelse
EanLocationCodeLongEanLocationCodeLong (EanLocationCode)Lokationsnummer
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.
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

EanLocationCodeStateType

ElementData typeBeskrivelse

String

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

  • Undefined
  • None
  • Inherited
  • Own

LocalAttributeCollectionType

ElementData typeBeskrivelseAddressPostalAddressPostalTypeMunicipalityCodeString (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

...

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
DateDateDato for erstatning

SorEntityType

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

Security gruppe påkrævet: SorCentralRole, SorDecentralRole

...

CreateSorEntityRequestParameterType

...

CreateSorEntityResponseResultType

...

EditSorEntity

Security gruppe påkrævet: SorCentralRole, SorDecentralRole

...

EditSorEntityRequestParameterType

...

EditSorEntityResponseResultType

...

MoveSorEntity

Security gruppe påkrævet: SorCentralRole, SorDecentralRole

...

MoveSorEntityRequestParameterType

...

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

SorSecurityGroupExternalType

MoveSorEntityResponseResultType

...

ReplaceSorEntities

Security gruppe påkrævet: SorCentralRole, SorDecentralRole

...

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

ReplaceSorEntitiesRequestParameterType

...


String

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

...

SorIdentifier (FromDate)
ElementData typeBeskrivelseLong (SorIdentifierType)ID på det SOR objekt som skal lukkes
FromDateDateDato for hvornår at lukningen skal træde i kraft

CloseSorEntityResponseResultType

...

EditEanLocationCodeSystemType

Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

...

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.

ToDateDateSidste dag enheden er aktiv. Kun output-felt. Input i feltet bliver ignoreret. Brug CloseSorEntity() til at lukke en enhed.
UpdatedAtDateDato hvornår enheden sidst er opdateret. Kun output-felt. Input I feltet bliver ignoreret.
FirstFromDateDateDato 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
SystemTypeIdentifierLong (SystemTypeIdentifier)EDB-system-id
EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe af lokationsnumre som skal opdateres

EditEanLocationCodeSystemTypeResponseResultType

...

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

EditEanLocationCodeCommunicationSupplier

Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole

...

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
ParameterCreateSorEntityRequestParameterTypeParameterEditEanLocationCodeCommunicationSupplierRequestParameterTypeParametre for operationen
UserUserTypeUser 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
FromDateDateDato 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
FromDateDateDato for hvornår at erstatningen skal træde i kraft
ReplacesEntityCollectionArrayOfSorIdentifierTypeListe 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
ToDateDateSidste 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

ElementData typeBeskrivelse
EdiIdentifiersSystemTypeIdentifierArrayOfEdiIdentifierTypeLongEDB-system-idListe af EDI numre
EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe 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)
EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe 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
EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe 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
EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe 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
EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe 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
EdiIdentifiersArrayOfEdiIdentifierTypeListe af EDI-meddelelsestyper som skal tilføjes til lokationsnumre som skal opdateres. Ved tom liste slettes alle EDI numre fra lokationsnumre som skal opdateres.
EanLocationCodeEntitiesArrayOfEanLocationCodeTypeListe 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:

https://svn.nspop.dk/src/components/sorus/trunk/SorUpdateService/src/test/java/dk/sds/nsp/sor/sorus/servletintegration/SorusV3ServletIT.java

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. Yderligere dokumentation for seal 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

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.