AFVENTER ENDELIG GODKENDELSE
Nyeste version af systemet, og anbefalet for nye klienter at integrere med.
Liste af ændringer sket i snitfladen mellem versioner.
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.
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.
Alle kald til servicen vil benytte typer defineret under namespacet:
http://sundhedsdatastyrelsen.dk/SOROpdateringService/2019/03/14/
Mange af de data typer som bliver benyttet, kan typisk findes her:
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.
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/
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).
Element | Data type | Beskrivelse |
---|---|---|
Roles | ArrayOfSorSecurityGroupsExternalType | Liste 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. |
Entities | SorIdentifierCollectionType | Liste af SOR-ID'er hvis træer som afsenderen har adgang til at redigere i |
Element | Data type | Beskrivelse |
---|---|---|
ErrorCode | int | Hvis 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. |
Message | string | Hvis ErrorCode er 0, er dette felt tomt. Ellers indeholder den en kort beskrivelse af, hvilken fejl der skete. |
Element | Data type | Beskrivelse |
---|---|---|
SorSecurityGroupsExternal | En liste af SorSecurityGroupExternalType | Security groups |
Element | Data type | Beskrivelse |
---|---|---|
string | Enumeration af security groups. Kan have en af følgende værdier:
|
Element | Data type | Beskrivelse |
---|---|---|
EdiIdentifier | Liste af long | EDI numre |
Element | Data type | Beskrivelse |
---|---|---|
EanLocationCode | Liste af long (EanLocationCode) | Lokationsnumre |
Element | Data type | Beskrivelse |
---|---|---|
SorIdentifier | Long (SorIdentifierType) | Unik nøgle der identificerer en SOR enhed |
SorType | SorTypeType | Tekstværdi for SOR-type, skal være enten "IO", "HI", eller "OU" |
SorStatus | SorStatusType | Angiver SOR enhedens status |
GeographicalLocalisationIdentifier | Long (GeographicalLocalisationIdentifierType) | Id på den geografiske lokation |
GeographicalLocalisationName | String (GeographicalLocalisationNameType) | Navn på den geografiske lokation |
HasGeographicalLocalisation | Boolean | Angiver om SOR enheden har en geografisk lokation. Vil altid returneres som false. |
ParentSorIdentifier | Long (SorIdentifierType) | Forældre SOR-id |
ActivityAddressInformation | AddressInformationType | Aktivitetsadressen |
VisitingAddressInformation | AddressInformationType | Besøgsadressen |
PostalAddressInformation | AddressInformationType | Postadressen |
PharmacyIdentifier | String (PharmacyIdentifierType) | SOR-enhedens apoteksnummer |
EntityName | String (SorNameType) | SOR Enhedens navn |
EntityTypeIdentifier | Long (EntityTypeIdentifier) | Teknisk nøgle for EntityType (SNOMED Concept Id) |
VirtualAddressInformation | VirtualAddressInformationType | Angiver enhedens hjemmesideadresse, email, telefonnummer og faxnummer |
ReportingLevelIndicator | Boolean (ReportingLevelIndicator) | Angiver om enheden er indberetningsniveau til Landspatientregisteret (LPR2) |
LocalAttributeCollection | LocalAttributeCollectionType | Der kan være op til 5 lokale attributter |
LocalCode | String (LocalCodeType) | SOR-enhedens lokale kode. Attribut der frit kan benyttes af anvender organisationen. |
EanLocationCodeState | EanLocationCodeStateType | Angiver om lokationsnummer er nedarvet fra den hierarkiske mor. Kan være 'own', 'inherited' eller 'none'. |
EanLocationCodeEntity | EanLocationCodeEntityType | Angiver lokationsnummeret på SOR enheden |
PatientsAdmittedIndicator | Boolean (PatientsAdmittedIndicator) | Angiver om enheden er et sengeafsnit |
AmbulantActivityIndicator | Boolean (AmbulantActivityIndicator) | Angiver om enheden er et ambulatorie |
ShakIdentifier | String (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. |
PrioritizedEntitySpecialityCollection | PrioritizedEntitySpecialityCollectionType | Liste af SOR enhedens kliniske specialer. Der kan angives op til 8, hvoraf nr. 1 er hovedspecialet. |
ProviderIdentifier | String (ProviderIdentifierType) | SOR-enhedens ydernummer |
CVRnumberIdentifier | String (CVRnumberIdentifierType) | CVR nummer for SOR-enheden. Obligatorisk hvis SOR typen er IO. |
ProductionUnitIdentifier | String (ProductionUnitIdentifierType) | P nummer for SOR-enheden |
Element | Data type | Beskrivelse |
---|---|---|
string | Enumeration af stadier. Kan have en af følgende værdier:
|
Element | Data type | Beskrivelse |
---|---|---|
EanLocationCode | Long (EanLocationCode) | Lokationsnummer |
OnlyInternalIndicator | Boolean (OnlyInternalIndicator) | Angiver om lokationsnummeret er til internt brug |
NonActiveIndicator | Boolean (NonActiveIndicator) | Angiver om lokationsnummeret er ikke-aktivt |
SystemSupplierIdentifier | Long (SystemSupplierType) | Systemleverandør-id |
CommunicationSupplierIdentifier | Long (CommunicationSupplierType) | Netoperatør-id |
SystemTypeIdentifier | Long (SystemTypeIdentifier) | EDB-system-id |
EdiAdministratorIdentifier | Long (EdiAdministratorIdentifier) | EDI-Administrator-id |
SorNote | String (SorNoteType) | Angiver eventuelle bemærkninger til lokationsnummeret |
SorStatus | SorStatusType | Angiver SOR enhedens status |
RegionCode | String (AuthorityCodeType) | Regionens kode, f.eks. 1084 for RegionHovedstaden |
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.
Namespace: urn:oio:nsi:2.0.0
Original: http://filer.nsi.dk/sor/xsd/v_2_0_0/AddressInformation.xsd
Element | Data type | Beskrivelse |
---|---|---|
AddressPostal | AddressPostalType | |
MunicipalityCode | String (MunicipalityCode) | |
StreetCode | String (StreetCodeType) | |
RegionCode | String (AuthorityCodeType) | Feltet benyttes ikke |
AdditionalAddressInformationText | String (AdditionalAddressInformationTextType) | |
CoordETRS89z32NMeasure | Decimal (CoordETRS89z32NMeasure) | |
CoordETRS89z32EMeasure | Decimal (CoordETRS89z32EMeasure) | |
SkipAddressValidation | Boolean | Nyt felt i forhold til den originale type definition. Indikerer om den indtastede adresse skal valideres. Er altid sat til false i retur objektet. |
RegionName | String | Nyt felt i forhold til den originale type definition. Indeholder navnet på den valgte regionskode. |
InheritanceIndicator | Boolean | Nyt felt i forhold til den originale type definition. Indikerer om informationerne er nedarvet eller ej. |
Namespace: urn:oio:sundhedsstyrelsen:organisation:1.0.0
Original: http://filer.nsi.dk/sor/xsd/v_1_0_0/VirtualAddressInformation.xsd
Element | Data type | Beskrivelse |
---|---|---|
EmailAddressIdentifier | String (EmailAddressIdentifierType) | |
Website | String (WebsiteType) | |
TelehponeNumberIdentifier | String (TelephoneNumberIdentifierType) | |
FaxNumberIdentifier | Stirng (FaxNumberIdentifierType) | |
InheritanceIndicator | Boolean | Nyt felt i forhold til den originale type definition. Indikerer om informationerne er nedarvet eller ej. |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | CreateSorEntityRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | CreateSorEntityResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SorEntity | SorEntityType | Det SOR objekt som skal oprettes |
Element | Data type | Beskrivelse |
---|---|---|
SorEntity | SorEntityType | Det SOR objekt som blev oprettet i systemet |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | EditSorEntityRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | EditSorEntityResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SorEntity | SorEntityType | Det SOR objekt som skal redigeres |
Element | Data type | Beskrivelse |
---|---|---|
SorEntity | SorEntityType | SOR objektet som det ser ud efter redigering |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | MoveSorEntityRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | MoveSorEntityResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SorIdentifier | Long (SorIdentifierType) | ID på det SOR objekt som skal flyttes |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | ReplaceSorEntitiesRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | ReplaceSorEntitiesResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SorIdentifier | Long (SorIdentifierType) | ID på det SOR objekt som skal flyttes |
FromDate | Date (FromDate) | Dato for hvornår at erstatningen skal træde i kraft |
ReplacesEntityCollection | SorIdentifierCollectionType | Liste af SOR ID'er på de enheder som skal erstattes |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | CloseSorEntityRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | CloseSorEntityResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SorIdentifier | Long (SorIdentifierType) | ID på det SOR objekt som skal lukkes |
FromDate | Date (FromDate) | Dato for hvornår at lukningen skal træde i kraft |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | EditEanLocationCodeSystemTypeRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | EditEanLocationCodeSystemTypeResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SystemTypeIdentifier | Long (SystemTypeIdentifier) | EDB-system-id |
EanLocationCodeEntities | ArrayOfEanLocationCodeType | Liste af lokationsnumre som skal opdateres |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | EditEanLocationCodeCommunicationSupplierRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | EditEanLocationCodeCommunicationSupplierResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
CommunicationSupplierIdentifier | Long (CommunicationSupplierIdentifier) | VANS leverandør (ID) |
EanLocationCodeEntities | ArrayOfEanLocationCodeType | Liste af lokationsnumre som skal opdateres |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorEdiCentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | EditEanLocationCodeEdiAdministratorRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | EditEanLocationCodeEdiAdministratorResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
EdiAdministratorIdentifier | Long (EdiAdministratorIdentifier) | EDI-Administrator-id |
EanLocationCodeEntities | ArrayOfEanLocationCodeType | Liste af lokationsnumre som skal opdateres |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | EditEanLocationCodeRegionRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | EditEanLocationCodeRegionResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
RegionCode | String (RegionCode) | Region |
EanLocationCodeEntities | ArrayOfEanLocationCodeType | Liste af lokationsnumre som skal opdateres |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorEdiCentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | EditEanLocationCodeSystemSupplierRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | EditEanLocationCodeSystemSupplierResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SystemSupplierIdentifier | Long (SystemSupplierIdentifier) | Systemleverandør-id |
EanLocationCodeEntities | ArrayOfEanLocationCodeType | Liste af lokationsnumre som skal opdateres |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | MoveEanLocationCodeRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | MoveEanLocationCodeResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
SorIdentifier | Long (SorIdentifierType) | SOR-kode for den nye enhed, som den skal knyttes til |
EanLocationCode | Long (EanLocationCode) | Angiver lokationsnummeret for enheden |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
Parameter | UpdateEdiTypesRequestParameterType | Parametre for operationen |
User | UserType | User element til brug i autorisering af kaldet |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Result | UpdateEdiTypesResponseResultType | Resultatet af operationen |
Status | StatusType | Status for hvordan kaldet gik |
Element | Data type | Beskrivelse |
---|---|---|
EdiIdentifiers | ArrayOfEdiIdentifierType | Liste af EDI numre |
EanLocationCodeEntities | ArrayOfEanLocationCodeType | Liste af lokationsnumre som skal opdateres |
Element | Data type | Beskrivelse |
---|---|---|
Tomt objekt |
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 code | Fault string | Beskrivelse |
---|---|---|
invalid_signature | Invalid signature | Autentifikations fejl, invalid signatur |
missing_required_header | Unable to read request | Autentifikations fejl, kan ikke læse forespørgelsen |
security_level_failed | Invalid authentication level, level 3 or 4 required | Autorisations fejl, kun certifikat niveau 3 eller 4 er tilladt |
expired_idcard | Current time is outside of valid period | Autorisations fejl, uden for gyldighedsperioden for sikkerheds headeren |
invalid_certificate | The type of certificate used is invalid, FOCES or MOCES required | Autorisations fejl, ugyldig type af certifikat brugt, kun FOCES og MOCES er tilladt |
not_authorized | CVR not whitelisted | Autorisations fejl, CVR er ikke whitelisted |
processing_problem | Error happened while contacting SOR database | Fejl under forespørgelse mod databasen |
syntax_error | Unable to parse body | Fejl under transformeringen af SOAP body til et objekt |
processing_problem | Unable to marshal object | Fejl under transformeringen af object til XML |
processing_problem | Unable to write body | Fejl under at skrive det transformerede objekt til klienten |
processing_problem | Error happened while contacting SOR backend | Fejl under forespørgelse mod backenden |
processing_problem | Invalid request type | Ukendt operation mod backenden |
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".
For en eksempel implementation i Java, kan der med foredel tages udgangspunkt i servicens integrationstest:
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
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.
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.
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.
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.
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:
Mange af de data typer som bliver benyttet, kan typisk findes her:
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.
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/
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).
Element | Data type | Beskrivelse |
---|---|---|
Roles | ArrayOfsorSecurityGroupsExternal | Liste 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. |
Entities | ArrayOfLong | Liste af SOR-ID'er hvis træer som afsenderen har adgang til at redigere i |
Element | Data type | Beskrivelse |
---|---|---|
long | En liste af long | Tal værdier |
Element | Data type | Beskrivelse |
---|---|---|
sorSecurityGroupsExternal | En liste af sorSecurityGroupsExternal | Security groups |
Element | Data type | Beskrivelse |
---|---|---|
string | Enumeration af security groups. Kan have en af følgende værdier:
|
Element | Data type | Beskrivelse |
---|---|---|
string | Enumeration af stadier. Kan have en af følgende værdier:
|
Element | Data type | Beskrivelse |
---|---|---|
EanLocationCode | EanLocationCode (long) | Lokationsnummer |
OnlyInternalIndicator | OnlyInternalIndicator (boolean) | Angiver om lokationsnummeret er til internt brug |
NonActiveIndicator | NonActiveIndicator (boolean) | Angiver om lokationsnummeret er ikke-aktivt |
SystemSupplierIdentifier | long | Systemleverandør-id |
CommunicationSupplierIdentifier | long | Netoperatør-id |
SystemTypeIdentifier | SystemTypeIdentifier (long) | EDB-system-id |
EdiAdministratorIdentifier | EdiAdministratorIdentifier (long) | EDI-Administrator-id |
SorNote | SorNote (string, 254) | Angiver eventuelle bemærkninger til lokationsnummeret |
SorStatus | SorStatus | Angiver SOR enhedens status |
RegionCode | RegionCode (string, 4) | Regionens kode, f.eks. 1084 for RegionHovedstaden |
Element | Data type | Beskrivelse |
---|---|---|
eanLocationCode | Liste af long | Lokationsnumre |
Element | Data type | Beskrivelse |
---|---|---|
EdiIdentifier | Liste af long | EDI numre |
Element | Data type | Beskrivelse |
---|---|---|
ErrorCode | int | Hvis 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. |
Message | string | Hvis ErrorCode er 0, er dette felt tomt. Ellers indeholder den en kort beskrivelse af, hvilken fejl der skete. |
Element | Data type | Beskrivelse |
---|---|---|
SorIdentifier | SorIdentifier (long) | Unik nøgle der identificerer en SOR enhed |
SorType | string | Tekstværdi for SOR-type, skal være enten "IO", "HI", eller "OU" |
SorStatus | SorStatus | Angiver SOR enhedens status |
GeographicalLocalisationIdentifier | GeographicalLocalisationIdentifier (long) | Id på den geografiske lokation |
GeographicalLocalisationName | GeographicalLocalisationName (string, 40) | Navn på den geografiske lokation |
HasGeographicalLocalisation | boolean | Angiver om SOR enheden har en geografisk lokation. Vil altid returneres som false. |
ParentSorIdentifier | string | Forældre SOR-id |
ActivityAddressInformation | ActivityAddressInformation (AddressInformation) | Aktivitetsadressen |
VisitingAddressInformation | VisitingAddressInformation (AddressInformation) | Besøgsadressen |
PostalAddressInformation | PostalAddressInformation (AddressInformation) | Postadressen |
PharmacyIdentifier | PharmacyIdentifier (string, 20) | SOR-enhedens apoteksnummer |
EntityName | EntityName (string, 60) | SOR Enhedens navn |
EntityTypeIdentifier | EntityTypeIdentifier (long) | Teknisk nøgle for EntityType (SNOMED Concept Id) |
VirtualAddressInformation | VirtualAddressInformation | Angiver enhedens hjemmesideadresse, email, telefonnummer og faxnummer |
ReportingLevelIndicator | ReportingLevelIndicator (boolean) | Angiver om enheden er indberetningsniveau til Landspatientregisteret (LPR2) |
LocalAttributeCollection | LocalAttributeCollection | Der kan være op til 5 lokale attributter |
LocalCode | LocalCode (string, 20) | SOR-enhedens lokale kode. Attribut der frit kan benyttes af anvender organisationen. |
EanLocationCodeState | EanLocationCodeState | Angiver om lokationsnummer er nedarvet fra den hierarkiske mor. Kan være 'own', 'inherited' eller 'none'. |
EanLocationCodeEntity | EanLocationCodeEntityType | Angiver lokationsnummeret på SOR enheden |
CommunicationSupplier | CommunicationSupplier | Feltet benyttes ikke |
PatientsAdmittedIndicator | PatientsAdmittedIndicator (boolean) | Angiver om enheden er et sengeafsnit |
AmbulantActivityIndicator | AmbulantActivityIndicator (boolean) | Angiver om enheden er et ambulatorie |
ShakIdentifier | ShakIdentifier (string, 7) | 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. |
PrioritizedEntitySpecialityCollection | PrioritizedEntitySpecialityCollection | Liste af SOR enhedens kliniske specialer. Der kan angives op til 8, hvoraf nr. 1 er hovedspecialet. |
SystemSupplier | SystemSupplier | Feltet benyttes ikke |
ProviderIdentifier | ProviderIdentifier (string, 9) | SOR-enhedens ydernummer |
CVRnumberIdentifier | CVRnumberIdentifier (string, 8) | CVR nummer for SOR-enheden. Obligatorisk hvis SOR typen er IO. |
ProductionUnitIdentifier | ProductionUnitIdentifier (string, 10) | P nummer for SOR-enheden |
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.
Namespace: urn:oio:nsi:2.0.0
Original: http://filer.nsi.dk/sor/xsd/v_2_0_0/AddressInformation.xsd
Element | Data type | Beskrivelse |
---|---|---|
AddressPostal | AddressPostal | |
MunicipalityCode | MunicipalityCode | |
StreetCode | StreetCode | |
RegionCode | RegionCode | Feltet benyttes ikke |
AdditionalAddressInformationText | AdditionalAddressInformationText | |
CoordETRS89z32NMeasure | CoordETRS89z32NMeasure | |
CoordETRS89z32EMeasure | CoordETRS89z32EMeasure | |
SkipAddressValidation | boolean | Nyt felt i forhold til den originale type definition. Indikerer om den indtastede adresse skal valideres. Er altid sat til false i retur objektet. |
RegionName | string | Nyt felt i forhold til den originale type definition. Indeholder navnet på den valgte regionskode. |
InheritanceIndicator | boolean | Nyt felt i forhold til den originale type definition. Indikerer om informationerne er nedarvet eller ej. |
Namespace: urn:oio:sundhedsstyrelsen:organisation:1.0.0
Original: http://filer.nsi.dk/sor/xsd/v_1_0_0/VirtualAddressInformation.xsd
Element | Data type | Beskrivelse |
---|---|---|
EmailAddressIdentifier | EmailAddressIdentifier | |
Website | Website | |
TelehponeNumberIdentifier | TelehponeNumberIdentifier | |
FaxNumberIdentifier | FaxNumberIdentifier | |
InheritanceIndicator | boolean | Nyt felt i forhold til den originale type definition. Indikerer om informationerne er nedarvet eller ej. |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SorObject | SorEntity | Det SOR objekt som skal oprettes |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
CreateSorEntityResult | SorEntity | Det SOR objekt som blev oprettet i systemet |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SorObject | SorEntity | Det SOR objekt som skal redigeres |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
EditSorEntityResult | SorEntity | SOR objektet som det ser ud efter redigering |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SorIdentifier | SorIdentifier (long) | ID på det SOR objekt som skal flyttes |
ParentSorIdentifier | long | ID på den nye parent SOR enhed |
FromDate | date | Dato for hvornår at flytningen skal træde i kraft |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
MoveSorEntityResult | SorEntity | SOR objektet som det ser ud efter flytningen |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SorIdentifier | SorIdentifier (long) | ID på den SOR enhed som skal bruges til erstatte med |
ReplacesEntityCollection | ReplacesEntityCollection | Liste af SOR ID'er på de enheder som skal erstattes |
FromDate | date | Dato for hvornår at erstatningen skal træde i kraft |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SorIdentifier | SorIdentifier (long) | ID på det SOR objekt som skal lukkes |
FromDate | date | Dato for hvornår at lukningen skal træde i kraft |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SystemTypeIdentifier | SystemTypeIdentifier (long) | EDB-system-id |
EanLocationCodeEntities | ArrayOfEanLocationCodes | Liste af lokationsnumre som skal opdateres |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
CommunicationSupplierIdentifier | long | VANS leverandør (ID) |
EanLocationCodeEntities | ArrayOfEanLocationCodes | Liste af lokationsnumre som skal opdateres |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorEdiCentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
EdiAdministratorIdentifier | EdiAdministratorIdentifier (long) | EDI-Administrator-id |
EanLocationCodeEntities | ArrayOfEanLocationCodes | Liste af lokationsnumre som skal opdateres |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorEdiCentralRole, SorEdiAdminRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
RegionCode | RegionCode (string, 4) | Region |
EanLocationCodeEntities | ArrayOfEanLocationCodes | Liste af lokationsnumre som skal opdateres |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorEdiCentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SystemSupplierIdentifier | long | Systemleverandør-id |
EanLocationCodeEntities | ArrayOfEanLocationCodes | Liste af lokationsnumre som skal opdateres |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
SorIdentifier | SorIdentifier (long) | SOR-kode for den nye enhed, som den skal knyttes til |
EanLocationCode | EanLocationCode (long) | Angiver lokationsnummeret for enheden |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
Security gruppe påkrævet: SorEdiCentralRole, SorDecentralRole
Input | ||
Element | Data type | Beskrivelse |
---|---|---|
User | User | User element til brug i autorisering af kaldet |
EdiIdentifiers | ArrayOfEdiIdentifiers | Liste af EDI numre |
EanLocationCodeEntities | ArrayOfEanLocationCodes | Liste af lokationsnumre som skal opdateres |
Output | ||
Element | Data type | Beskrivelse |
---|---|---|
Status | Status | Status for hvordan kaldet gik |
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 code | Fault string | Beskrivelse |
---|---|---|
invalid_signature | Invalid signature | Autentifikations fejl, invalid signatur |
missing_required_header | Unable to read request | Autentifikations fejl, kan ikke læse forespørgelsen |
security_level_failed | Invalid authentication level, level 3 or 4 required | Autorisations fejl, kun certifikat niveau 3 eller 4 er tilladt |
expired_idcard | Current time is outside of valid period | Autorisations fejl, uden for gyldighedsperioden for sikkerheds headeren |
invalid_certificate | The type of certificate used is invalid, FOCES or MOCES required | Autorisations fejl, ugyldig type af certifikat brugt, kun FOCES og MOCES er tilladt |
not_authorized | CVR not whitelisted | Autorisations fejl, CVR er ikke whitelisted |
processing_problem | Error happened while contacting SOR database | Fejl under forespørgelse mod databasen |
syntax_error | Unable to parse body | Fejl under transformeringen af SOAP body til et objekt |
processing_problem | Unable to marshal object | Fejl under transformeringen af object til XML |
processing_problem | Unable to write body | Fejl under at skrive det transformerede objekt til klienten |
processing_problem | Error happened while contacting SOR backend | Fejl under forespørgelse mod backenden |
processing_problem | Invalid request type | Ukendt operation mod backenden |
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".
For en eksempel implementation i Java, kan der med foredel tages udgangspunkt i servicens integrationstest:
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
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.
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.