Specifikation för automatisk export av lagstadgade och frivilliga anmälningar av laboratoriediagnoser till SmiNet 2010-04-28 Version: 2.8 Avdelningen för epidemiologi Smittskyddsinstitutet (SMI), Solna
Versionslogg Version: Logg: 1.0 Första version för remiss. 1.1 Första skarpa versionen. Total omarbetning av specifikationen för exportfilens utformning (XML-Schemat). Utförligare beskrivning av hur exportfilen skall överlämnas. Ny specifikation över kvittensen från webbtjänsten. Omarbetning av dispositionen. Alla bilagor omarbetade. Omarbetade riktlinjer för hur exportfilen skall namnges. 1.2 Mindre ändringar i dokumentationen i xml-exemplet. Lagt till T_S-grupp (istället för species om ej typning sker) som specification för labdiagnosen Salmonella enterica. I specification var Eythromycin SIR. Denna är omstavad till Erythromycin SIR, men både gamla och nya koden för Eythromycin SIR finns och är giltiga. 1.3 <referringdoctor> har gjorts till valfri uppgift så denna inte alltid finns på remissen. Makulering har lagts till som <status>. Alla R_ specification kan även anges som + eller -. Ett antal nya salmoneller och mycobacterium finns under tillåtna värden på Species. Provmateriallistan har utökats med Rectumprov, Urethraprov och Cervixprov. R_Beta anmäls även för Haemophilus influenzae (invasivt isolat). För Treponema pallidum kan Wassermann, VDRL, TPPA, Syfilis- ELISA-IgM och Syfilis-ELISA-IgG anges logiskt eller numeriskt. URL:en till webbtjänsten är ändrad. Diverse mindre korrektioner. 1.4 diagnoseintext kan vara 255 tecken lång. Status utökat med Komplettering. Koden för cervixprov ändrad från crev till cerv. Ändrat format för rikskod. referringcliniccounty obligatoriskt. 1.5 Adderat genotyp till labdiagnosen Neisseria gonorrhoeae. Ändrat labdiagnoserna Listeria monocytogenes och Salmonella enterica till Listeria species och Salmonella species. Lagt till sentforreferenceby som tag i xml-schemat. Tagit bort kodverket i detta dokument för att endast använda separat kodverk. Den senaste versionen av denna finns på: http://sminet.smittskyddsinstitutet.se/labexporter 1.6 SmiNet-koderna för Salmonella Species och Listeria Species är ändrade till Salspp och Lisspp. Genotyp tillagt på Neisseria meningitidis (invasivt isolat). 1.7 Tag:en takebacknotification tillagd i XML-schemat. 1.8 Ny tag tilllagd optionalreference. 2
Version: Logg: 2.0 Omgjort format för returkoder. XML-Schema skapat för returkvittot. Varje anmälan har en egen returkod associerad. 2.1 Lagt till tag optionalreference för takebacknotification. Alla förändringar efter version 1.8 är rödmarkerade. 2.2 Ändrat kontaktinformationen. Uppdaterat url:arna i avsnittet Web Service. Tagit bort rödmarkeringarna. 2.8 Tagit bort exemplet på rikskod. Ändring av SmiNet:s mailadress. Xml-scheman utbytta mot länkar till dessa för att undvika felaktigheter. Exempelfilen och kvittot borttagen för att undvika felaktigheter. 3
Innehållsförteckning Versionslogg... 2 Inledning... 5 Hur skall specifikationen läsas?... 5 Vad är XML-Schema?... 5 Vilka patogener skall anmälas?... 5 Mer information... 5 Kontakt... 5 Hur skall exportfilen överlämnas?... 5 Web Service... 5 Filnamn... 6 Gränssnitt... 6 SmiNetMonitor... 6 Ansvar... 6 Kvittens... 6 XML-Schema... 7 4
Inledning Följande dokument definierar ett protokoll mellan laboratorier och Smittskyddsinstitutet (SMI) för att hantera stora mängder anmälningar av laboratoriediagnoser. Specifikationen omfattar hur filen som exporterar information från laboratoriets datasystem skall utformas samt hur filen skall överlämnas till SMI. Specifikationen förklarar även var laboratoriets ansvar för en anmälan slutar. Hur skall specifikationen läsas? Förutom de inledande delarna av specifikationen som beskriver hur anmälan skall överlämnas från laboratoriet till SMI, finns även ett XML-schema och en exempelfil. Dessa definierar och ger exempel på hur exportfilen skall vara utformad. XML-schemat används för att validera en korrekt utformad xml-fil. Denna validering kommer att utföras på alla skickade filer från laboratoriet direkt då filen ankommer till SMI. För bättre felhantering rekommenderas att validering av filen även sker hos laboratoriet innan den skickas till SMI. Vad är XML-Schema? XML-Schema är en standard, reglerad av World Wide Web Consortium (W3C), för att validera xmlkod. En introduktion (tutorial) för att lära sig grunderna i XML-Schema finns tillgänglig via http://www.w3schools.com/schema/default.asp Vilka patogener skall anmälas? Vilka patogener som skall anmälas från ett laboratorium regleras av smittskyddslagen och smittskyddsförordningen. En konsekvens av att fler smittämnen nu blir anmäningspliktiga är att listan över smittämnen i den s.k. frivilliga laboratorierapporten kommer att minska. Endast tre smittämnen (influensavirus, RSV och calicivirus) återstår och dessa diagnoser kan nu hanteras direkt av SmiNet på samma sätt som de anmälningspliktiga. De sexuellt överförbara smittämnena (Chlamydia trachomatis, Neisseria gonorrhoeae, HIV och Treponema pallidum) kommer fr.o.m. 1 juli att vara anmälningspliktiga även från laboratorierna, men anmälan ska ske avidentifierat med rikskod. Även de frivilligrapporterade smittämnena anmäls med rikskod. Mer information På http://sminet.smi.se/labexporter finns all tillgänglig information inkl. den senaste versionen av detta dokument för att ladda ner. Där finns även den senaste versionen av bifogat XML-Schema som användas för att validera att exportfilen följer specifikationen. Kontakt Skulle det finnas frågor eller synpunkter går det utmärkt att höra av sig till: SmiNet Jourtelefon 070-522 95 22, bemannad vardagar kl. 9-16 Eller via mail till sminet@smi.se Hur skall exportfilen överlämnas? Överlämningen av den genererade exportfilen sker via en webbtjänst (web service). Vid överlämnandet returneras ett kvitto i form av en xml-fil (se nedan). Kvittensen innehåller två typer av returkoder: översiktliga och specifika. Den översiktliga felkoden beskriver status för hela filen. Returkod: '-1': det finns anmälningar i filen som måste skickas igen. '0': alla anmälningar i filen skickades utan problem. '1': alla anmälningar i filen skickades, men anmärkningar finns. Den specifika felkoden beskriver status för en enskilld anmälan. Returkod: '-1': Anmälan måste skickas igen. '0': Anmälan är gjord utan anmärkningar. '1': Anmälan är gjort, men det finns anmärkningar. Web Service Webbtjänsten finns på url: https://www.sminet.se/sminetlabxmlzone/services/sminetlabxmlzone 5
Ett program som skall använda webbtjänsten använder protokollet SOAP för att koppla upp sig. Gränssnittet definieras av en wsdl-fil, som finns tillgänglig via följande url: https://www.sminet.se/sminetlabxmlzone/services/sminetlabxmlzone?wsdl Filnamn Den exportade filen skall namnges enligt följande format: [LabNumber]_[datum och tid].xml, där datum och tid anges som ÅÅ-MM-DD_TTMMSS. Nedan följer några exempel på godtagbara filnamn: 1_04-01-23_125323.xml 23_03-12-31_235959.xml 5_99-09-01_000145.xml 10_04-03-29_133600.xml Gränssnitt Webbtjänsten tillhandahåller ett metodanrop för att överlämna filer. Metoden heter submitfile och tar två argument, dels en sträng som innehåller namnet på filen som skickas och dels en byte array (big endian) med en representation av filen. SmiNetMonitor SMI tillhandahåller en programpaket med öppen källkod (GPL) för att kommunicera med webbtjänsten. Detta enkla program tillhandahålls på allmän begäran, men vi rekommenderar ändå att göra en direkt uppkoppling från labdatasystemet till webbtjänsten. Observera att SMI inte har något som helst ansvar för koden och ansvarar heller inte för eventuell anpassning till ett individuellt laboratorium. SmiNetMonitor lyssnar på en specificerad filarea efter nyskapade xml-filer. Då en sådan hittas skickas denna in till webbtjänsten och väntar på att få tillbaka returkvittensen. Denna sparas i en fil i ett subbibliotek till det bibliotek som avlyssnas. Ansvar SMI:s ansvar för en anmälan börjar där laboratoriets ansvar slutar, i och med att laboratoriet fått ett kvitto tillbaka som visar att mottagandet av anmälan är fullbordat. Kvittens Kvittensen från webbtjänsten följer följande format: <?xml version='1.0' encoding='iso-8859-1'?> <sminetreceipt xmlns:xsi='http://www.w3.org/2001/xmlschema-instance' xsi:nonamespaceschemalocation= 'http://www.sminet.se/xml-schemas/sminetlabexportreceipt.xsd'> <returncode>[felkod]</returncode> <message>[besrivning]</message> <timestamp>[tidsstämpel]</timestamp> <notification> <returncode>[felkod]</returncode> <message>[ev. meddelande]</message> <description>[besrivning]</description> <sminetreference>[sminet referensnummer]</sminetreference> <localreference>[ev. Local referens]</localreference> </notification> </sminetreceipt> 6
XML-Schema Xml-chemat för testmiljön: http://stage.sminet.se/xml-schemas/sminetlabexport.xsd Xml-chemat för skarpa miljön: http://www.sminet.se/xml-schemas/sminetlabexport.xsd 7