Tjänsteplattform Tekniska krav ARK_0034 Version 1.3 |
Innehållsförteckning |
---|
Versionshistorik | ||
Version | Författare | Kommentar |
PA1 | Mattias Nordvall | Första utkast |
PA2 | Mattias Nordvall | Uppdaterat efter intern remiss |
PA3 | Lars Erik Röjerås | Justeringar efter genomläsning |
1.0 | Mattias Nordvall | Dokumentets underrubrik är nu ”Tekniska krav” istället för ”Regler för interoperabilitet”. Lagt till kapitel med definition av termer. Tagit bort texter om reverse proxy (betraktas som implementationsdetalj). Lagt till felkoder för virtualiseringsplattform. Tagit bort regel om loggning av förändringar av TAK-information (inte ett tekniskt krav). Tagit bort skrivning om godkännande av tjänstekontrakt i 3.1.1 (inte ett tekniskt krav). Ändrat regel om uppbyggnad av URL:er till att enbart beskriva slutet på adresserna (det enda som är reglerat i RIV TA). Förtydligat att anropsbehörighet i TAK avser närmast anropande tjänstekonsument. Kapitlet om TAK använde begreppet ”logisk adress” om två olika saker. Lagt till översiktligt kapitel om Tjänsteväxel. Korrigerat ordval och stavfel. Uppdaterade illustrationer. |
1.0.1 | Mattias Nordvall | Korrigerat vissa formuleringar och illustrationer. Nytt stycke om förhållandet mellan nationella och regionala tjänsteplattformar. |
1.1 | Mattias Nordvall | Kapitlet om anpassningsplattform och tjänsteväxel omskrivet och felaktigheter korrigerade. Regel ”Exponering av URL:er” i kapitel 4 korrigerad för att överensstämma med underliggande regelverk. Exempel från den senaste versionen av RIV-TA Basic Profile, t.ex. SOAP Headers, är ändrade till mer generella begrepp |
1.2 | Mattias Nordvall | Lagt till regler i kapitel 4 från RIV TA Basic Profile 2.0. Dessa regler behöver följas av tjänsteplattformar. Lagt till Regel #6 under kapitlet Aggregeringsplattform. |
1.3 | Mattias Nordvall | Uppdaterat Regel #6 under kapitlet Aggregeringsplattform. |
- Inledning
Hälso- och sjukvårdssektorn i Sverige har på uppdrag av Sveriges Kommuner och Landsting och under ledning av CeHis, nuvarande Inera, gemensamt tagit fram en nationell teknisk arkitektur i syfte att stödja samarbete över organisationsgränserna.
...
Tjänsteplattformar kan dock realiseras med valfri programvara såvida reglerna i detta dokument kan uppfyllas.
Tjänsteplattform med ingående komponenter. Vissa komponenter är valfria.
...
Det har gjorts ett antal implementationer av tjänsteplattformar av den typ som beskrivs i detta dokument. Genom att studera dessa kan kompletterande information fås kring hur reglerna i detta dokument har tolkats och realiserats.
Namn | Adress | Beskrivning |
SKL TP | Officiell referens-implementation. Bygger på Mule ESB. | |
Regional tjänsteplattform, Landstinget Dalarna | Landstinget Dalarnas implementation av SKL TP |
1.5 Referenser
Ref | Dokument | Beskrivning |
[R1] | T-boken | Referensarkitektur för vård och omsorg |
[R2] | RIV Tekniska Anvisningar – Översikt | |
[R3] | RIV Tekniska Anvisningar – Basic Profile | RIV-TA:s tillägg till WS-I Basic Profile |
[R4] | RIV Tekniska Anvisningar – Basic Profile – Valfria Tillägg 2.1 | |
[R5] | RIV Tekniska Anvisningar – Tjänsteschema | Beskrivning av schema-filer för tjänstekontrakt. |
[R6] | Tjänstekontrakts-beskrivning Engagemangsindex | Beskrivning av tjänstekontrakt i domänen itintegration:engegementindex. |
[R7] | WS-I Basic Profile 1.1 | En specifikation på protokollanvändning i syfte att kunna implementera interoperabla webbtjänster. |
[R8] | Tjänstekontrakts-beskrivning Tjänsteadressering | Beskrivning av tjänstekontrakt i domänen infrastructure:itintegration:registry. http://rivta.se/domains/infrastructure_itintegration_registry.html |
2. Terminologi
Följande termer förekommer i dokumentet.
Term | Definition |
Tjänstekonsument | En tjänstekonsument är en tjänstekomponent (informationssystem) där agerandet leder till ett automatiskt informationsutbyte med andra tjänstekomponenter (exempelvis tjänsteproducenter). En tjänstekonsument kan t ex vara en eTjänst, ett verksamhetssystem, en partneringång eller en tjänsteplattform. Tjänstekonsumenten agerar som initiativtagare i ett informationsutbyte. |
Tjänsteproducent | En tjänsteproducent är en tjänstekomponent som har ett tekniskt gränssnitt som möjliggör för tjänstekonsumenter att genom meddelanden förändra eller begära information. |
Tjänstekomponent | Avgränsad mängd programvara som kan utvecklas, integreras, testas, driftsättas och förvaltas fristående. |
Tjänstekontrakt | Specifikation som beskriver ett nationellt standardiserat gränssnitt som förekommer mellan tjänstekomponenter i en tjänsteorienterad arkitektur. |
Tjänstedomän | En enligt VIFO-kartan övergripande, verksamhetsbaserad indelningsgrund för nationellt standardiserade tjänsteinteraktioner. |
Tjänsteinteraktion | Informationsutbyte mellan tjänstekomponenter baserat på tjänstekontrakt. |
3. Allmänt
3.1 Regelverk
...
Tjänstekomponenter ansluts till någon av dessa tjänsteplattformar. Därefter styr tjänsteplattformarnas vägvalsinformation och anropsbehörigheter åtkomsten mellan tjänstekomponenterna.
Tjänstekonsumenter skickar alltid sina meddelanden till den tjänsteplattform tjänstekonsumenten är ansluten till. Meddelandena är adresserade med mottagarens logiska adress.
...
Virtualiseringsplattformen har tillkommit för att uppfylla T-bokens arkitekturella princip om lös koppling mellan tjänstekonsumenter och -producenter.
5.1 Regler
Regel #1: Datakommunikation
...
Virtualiseringsplattformen skall returnera felmeddelanden enligt respektive RIV TA-profil, med följande felkoder och i följande felsituationer:
Fault code * | Fault string * |
VP001 | RIV-version inte konfigurerad för den anslutningspunkt som den virtualiserade tjänsten publicerar. |
VP002 | SERIALNUMBER ej tillgängligt i konsumentens certifikat. |
VP003 | LogicalAddress ej angiven i SOAP Header i inkommande meddelande. |
VP004 | Det finns ingen tjänsteproducent definierad i Tjänstekatalogen som matchar logisk adress, tjänstekontrakt och dagens datum. |
VP005 | Det finns ingen tjänsteproducent definierad i Tjänstekatalogen som matchar angiven RIV-version. |
VP006 | Det finns mer än en tjänsteproducent definierad i Tjänstekatalogen som matchar logisk adress, tjänstekontrakt och dagens datum. |
VP007 | Den finns ingen behörighet för den tjänstekomponent som anropar att samverka med tjänsteproducenten. Avser behörigheter definierade i tjänstekatalogen. |
VP008 | Ingen kontakt med tjänstekatalogen. |
VP009 | Fel vid kontakt med tjänsteproducenten. |
VP010 | Ingen adress angiven i tjänsteproducenten |
VP011 | Anropande konsument är inte betrodd att göra http-anrop till VP |
VP012 | Nödvändiga resurser saknas för att VP skall fungera. |
* Terminologi från SOAP 1.1
...
Aggregeringsplattformen exponerar aggregerande tjänster baserade på RIV TA tjänstekontrakt. Varje aggregerande tjänst exponerar ett specifikt tjänstekontrakt. Villkoret för att kunna använda ett tjänstekontrakt i en aggregerande tjänst är att kontraktets svarsmeddelande är utformat i form av en lista och därigenom stöder att flera svar sammanfogas.
7.1 Relationer till andra tjänster
...
Den gemensamma arkitekturen beskriver en stödtjänst kallad Engagemangsindex. Den har till uppgift att avlasta aggregeringsplattformen genom att registrera vilka tjänsteproducenter som har uppgifter av en viss typ för en viss person. Denna information gör att en aggregerad tjänst enbart behöver kontakta dessa tjänsteproducenter för att kunna leverera ett fullständigt resultat.
Om en tjänsteplattform har en aggregeringsplattform skall även tjänsten engagemangsindex implementeras. Här beskrivs de regler som tjänsten behöver uppfylla.
...
9.1 Tjänsteväxel
En tjänsteväxel används för att översätta mellan den modell för teknisk kommunikation som används inom hälso- och sjukvårdssektorn och modeller som tillämpas av externa parter, såsom myndigheter. Ett exempel är översättning mellan RIV Tekniska Anvisningar och myndigheters SHS-arkitektur.
...
9.2 Anpassningstjänst
Anpassningstjänster används för att anpassa IT-system inom hälso- och sjukvårdssektorn till RIV TA-standarden. En anpassningstjänst konstrueras vanligtvis för ett specifikt, icke RIV-kompatibelt, IT-system och anpassar in- och utgående anrop mellan RIVTA och systemet. Detta kan innebära att såväl protokoll, adressering, säkerhetsmekanismer och meddelandeinnehåll förändras.
...
Följande illustration och tabell visar skillnader och likheter mellan tjänsteväxel och anpassningstjänster.
| Tjänsteväxel | Anpassningstjänst |
Kan översätta meddelandeinnehåll | Vanligtvis inte | Ja |
Kan översätta adressering | Ja | Ja |
Kan översätta protokoll | Ja | Ja |
Kan översätta säkerhets-mekanismer | Ja | Ja |
Knuten till specifika tjänstedomäner | Nej | Ja |
Knuten till specifika IT-system | Nej | Ja |
Placeras vanligtvis | Nationellt | Regionalt |
Kommunikation | Med system utanför hälso- och sjukvårdsområdet | Med system inom hälso- och sjukvårdsområdet |
Exempel | RIV-SHS-växel | Anpassning av SLL:s hälsovalstjänst till tjänstekontraktet GetListings. |