ELEKTRONISK INDBERETNING BØRNEDATABASEN VIA DGWS 18/06-2013 VERSION 1.1 (Bemærk! Denne snitflade omlægges i 2018 til nyt format i forbindelse med SEI2 projektet)
Indhold Indhold... 2 Introduktion... 3 Den Gode Webservice... 4 ID-Kortet... 4 Signering... 4 BDBChildMeasurementReport webservicen... 5 CreateChildMeasurementReport()... 5 ModifyChildMeasurementReport()... 5 DeleteChildMeasurementReport()... 5 BDBNonGPChildReport webservicen... 6 CreateChildMeasurementReport()... 6 ModifyChildMeasurementReport()... 6 DeleteChildMeasurementReport()... 6 SetExclusivelyBreastFeedingPeriodEndReport()... 6 SetExposedToPassiveSmokingReport()... 6 Appendix A Argument XSD er... 7 CreateChildMeasurementReportType... 7 ModifyChildMeasurementReportType... 7 DeleteChildMeasurementReportType... 8 ExclusivelyBreastFeedingPeriodEndReportType... 8 ExposedToPassiveSmokingReportType... 9 Appendix B Retur XSD er... 10 BDBSuccessfullyDeleted... 10 BDBSuccessfullySet... 10 Appendix C Egen defineret komplekse typer... 11 ChildMeasurement... 11 MeasurementDate... 11 PersonHeight... 12 PersonWeight... 12 ExclusivelyBreastFeedingPeriodEnd... 12 ExposedToPassiveSmoking... 13 Appendix D Revisioner... 14-2 -
Introduktion Denne webservice muliggør indberetninger til børnedatabasen via Den Gode Webservice (DGWS). Webservicen tilgås via internettet. - 3 -
Den Gode Webservice Der vil ikke blive beskrevet i dette dokument, hvordan man taler med DGWS, men der vil til gengæld blive forklaret, hvordan id-kortet skal se ud og hvordan der skal signeres. ID-Kortet Id-kortet kan være i enten version 1.0.1 eller 1.1. Hvis der bliver brugt version 1.0.1, så skal authentication level være 3 (signeret med virksomhedscertifikat) eller 4 (signeret med medarbejder/personligt certifikat), afhængig af om der er brugt et user eller system id-kort. Hvis versionen er 1.1, så skal authentication level være 3 (signeret med Digital Signatur). Det er muligt at bruge Single-Signon (SSO). Hvis dette er brugt, så skal id-kortet være af typen user. Signering Indberetningen som der sendes skal signeres. Både id-kortet og hele beskeden skal signeres. Du kan bruge det samme certifikat eller 2 forskellige, det må du selv bestemme. Det certifikat som du bruger til at signere selve beskeden med, skal dog have adgang til SEI, dvs. at det er dette certifikat som er tilmeldt i SEI. Hvis du bruger SSO, så er det det CPR nummer som der står i id-kortet som skal have adgang og ikke certifikatet. - 4 -
BDBChildMeasurementReport webservicen Indberetninger sker via internettet. De 2 urls er følgende: Internettet: https://indberetning.sst.dk/dgws/childdatabase/bdbchildmeasurementreport.asmx Test over internettet: https://sei-test.sst.dk/dgws/childdatabase/bdbchildmeasurementreport.asmx Denne webservice har metoder til at indberette, ændre og annullere indberetninger. CreateChildMeasurementReport() Denne metode skal bruges for at indberette et nyt skema. Den tager som argument et objekt af typen CreateChildMeasurementReportType som beskriver selve indholdet af skemaet. Se Appendix A for en beskrivelse af typen. Metoden returnere en GUID som indikere det unikke ID som skemaet har fået. Denne kan evt. gemmes til senere brug. ModifyChildMeasurementReport() Hvis du har ændringer til en allerede eksisterende indberetning, så skal du bruge denne metode. Den tager som argument et objekt af typen ModifyChildMeasurementReportType som beskriver den nye indberetning. Se Appendix A for en beskrivelse af typen. Metoden returnere en GUID som indikere det unikke ID som skemaet har fået, hvilket er det samme som du allerede har givet ind i ModifyChildMeasurementReportType argumentet. DeleteChildMeasurementReport() Hvis der er kommet et skema ind, som ikke er gyldig, så er det muligt at annullere den. Den tager som argument et objekt af typen DeleteChildMeasurementReportType som beskriver hvilke skema som der skal annulleres. Metoden returnere en bool som indtil videre altid vil returnere true, da fejl bliver kastet med en SOAPFault exception. - 5 -
BDBNonGPChildReport webservicen Indberetninger sker via internettet. De 2 urls er følgende: Internettet: https://indberetning.sst.dk/dgws/childdatabase/bdbnongpchildreport.asmx Test over internettet: https://sei-test.sst.dk/dgws/childdatabase/bdbnongpchildreport.asmx Denne webservice har metoder til at indberette, ændre og annullere indberetninger + indberetninger af amning og passiv rygning. CreateChildMeasurementReport() Er det samme som i BDBChildMeasurementReport webservicen. Se denne for mere information. ModifyChildMeasurementReport() Er det samme som i BDBChildMeasurementReport webservicen. Se denne for mere information. DeleteChildMeasurementReport() Er det samme som i BDBChildMeasurementReport webservicen. Se denne for mere information. SetExclusivelyBreastFeedingPeriodEndReport() Hvis der er brugt amning til barnet, så kan man kalde denne metode for at indberette hvornår amningen er stoppet. Den tager som argument et objekt af typen ExclusivelyBreastFeedingPeriodEndReportType. Se Appendix A for en beskrivelse af typen. Metoden returnere en bool som indtil videre altid vil returnere true, da fejl bliver kastet med en SOAPFault exception. SetExposedToPassiveSmokingReport() Denne metode kan bruges til at fortælle, om barnet er blevet udsat for passiv rygning eller ej. Den tager som argument et objekt af typen ExposedToPassiveSmokingReportType. Se Appendix A for en beskrivelse af typen. Metoden returnere en bool som indtil videre altid vil returnere true, da fejl bliver kastet med en SOAPFault exception. - 6 -
Appendix A Argument XSD er Her er en beskrivelse af de XSD er som der bliver brugt direkte i metoderne og hvordan de skal udfyldes. CreateChildMeasurementReportType <xs:include schemalocation="http://sundcom.healthtelematics.dk/svn/b%c3%b8rnedb/xmlbrev/schema/childmeasurement.xsd" /> <xs:element name="createchildmeasurementreport" type="createchildmeasurementreporttype" /> <xs:complextype name="createchildmeasurementreporttype"> <xs:sequence> <xs:element ref="childmeasurement" /> </xs:sequence> </xs:complextype> ChildMeasurement En reference til selve skemaet ModifyChildMeasurementReportType xmlns:mc="http://rep.oio.dk/medcom.dk/core/xml.schema/2008.04.07/" <xs:include schemalocation="http://sundcom.healthtelematics.dk/svn/b%c3%b8rnedb/xmlbrev/schema/childmeasurement.xsd" /> <xs:import schemalocation="http://sundcom.healthtelematics.dk/svn/oio/core/mc_universallyuniqueidentifier_20080406.xsd" namespace="http://rep.oio.dk/medcom.dk/core/xml.schema/2008.04.07/" /> <xs:element name="modifychildmeasurementreport" type="modifychildmeasurementreporttype" /> <xs:complextype name="modifychildmeasurementreporttype"> <xs:sequence> <xs:element ref="mc:universallyuniqueidentifier" /> <xs:element ref="childmeasurement" /> </xs:sequence> </xs:complextype> UniversallyUniqueIdentifier ChildMeasurement GUID en på det skema som du vil ændre En reference til selve skemaet - 7 -
DeleteChildMeasurementReportType xmlns:mc="http://rep.oio.dk/medcom.dk/core/xml.schema/2008.04.07/" <xs:import schemalocation="http://sundcom.healthtelematics.dk/svn/oio/core/mc_universallyuniqueidentifier_20080406.xsd" namespace="http://rep.oio.dk/medcom.dk/core/xml.schema/2008.04.07/" /> <xs:element name="deletechildmeasurementreport" type="deletechildmeasurementreporttype" /> <xs:complextype name="deletechildmeasurementreporttype"> <xs:sequence> <xs:element ref="mc:universallyuniqueidentifier" /> </xs:sequence> </xs:complextype> UniversallyUniqueIdentifier GUID en på det skema som du vil annullere ExclusivelyBreastFeedingPeriodEndReportType xmlns:cpr="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/" <xs:import schemalocation="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/cpr_personcivilregistrationiden tifier.xsd" namespace="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/" /> <xs:include schemalocation="http://sundcom.healthtelematics.dk/svn/b%c3%b8rnedb/xmlbrev/schema/exclusivelybreastfeedingperiodend.xsd" /> <xs:element name="exclusivelybreastfeedingperiodendreport" type="exclusivelybreastfeedingperiodendreporttype" /> <xs:complextype name="exclusivelybreastfeedingperiodendreporttype"> <xs:sequence> <xs:element ref="cpr:personcivilregistrationidentifier" /> <xs:element ref="exclusivelybreastfeedingperiodend" /> </xs:sequence> </xs:complextype> PersonalCivilRegistrationIdentifier ExclusivelyBreastFeedingPeriodEnd CPR nummer på barnet Datoen for hvornår amning er stoppet - 8 -
ExposedToPassiveSmokingReportType xmlns:cpr="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/" <xs:import schemalocation="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/cpr_personcivilregistrationiden tifier.xsd" namespace="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/" /> <xs:include schemalocation="http://sundcom.healthtelematics.dk/svn/b%c3%b8rnedb/xmlbrev/schema/exposedtopassivesmoking.xsd" /> <xs:element name="exposedtopassivesmokingreport" type="exposedtopassivesmokingreporttype" /> <xs:complextype name="exposedtopassivesmokingreporttype"> <xs:sequence> <xs:element ref="cpr:personcivilregistrationidentifier" /> <xs:element ref="exposedtopassivesmoking" /> </xs:sequence> </xs:complextype> PersonalCivilRegistrationIdentifier ExposedToPassiveSmoking CPR nummer på barnet Er en enum som indikere om barnet har været udsat for passiv rygning. Kan være en af disse værdier: Yes No Unknown - 9 -
Appendix B Retur XSD er Her er de XSD er, som der bliver brugt som retur XSD er. BDBSuccessfullyDeleted <xs:element name="bdbsuccessfullydeleted" type="xs:boolean" /> BDBSuccessfullySet <xs:element name="bdbsuccessfullyset" type="xs:boolean" /> - 10 -
Appendix C Egen defineret komplekse typer Her er de XSD er som der bliver brugt af hoved xsd erne eller andre xsd er. ChildMeasurement xmlns:cpr="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/" xmlns:uvm="http://rep.oio.dk/uvm.dk/xml/schemas/2004/12/03/" <xs:import schemalocation="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/cpr_personcivilregistrationiden tifier.xsd" namespace="http://rep.oio.dk/cpr.dk/xml/schemas/core/2005/03/18/" /> <xs:import schemalocation="http://rep.oio.dk/uvm.dk/xml/schemas/2004/12/03/uvm_institutionidentifier.xsd" namespace="http://rep.oio.dk/uvm.dk/xml/schemas/2004/12/03/" /> <xs:include schemalocation="http://sundcom.healthtelematics.dk/svn/b%c3%b8rnedb/xmlbrev/schema/measurementdate.xsd" /> <xs:include schemalocation="http://sundcom.healthtelematics.dk/svn/b%c3%b8rnedb/xmlbrev/schema/personheight.xsd" /> <xs:include schemalocation="http://sundcom.healthtelematics.dk/svn/b%c3%b8rnedb/xmlbrev/schema/personweight.xsd" /> <xs:element name="childmeasurement" type="childmeasurementtype" /> <xs:complextype name="childmeasurementtype"> <xs:sequence> <xs:element ref="cpr:personcivilregistrationidentifier" /> <xs:element minoccurs="0" ref="uvm:institutionidentifier" /> <xs:element ref="measurementdate" /> <xs:element ref="personheight" /> <xs:element ref="personweight" /> </xs:sequence> </xs:complextype> PersonalCivilRegistrationIdentifier InstitutionIdentifier MeasurementDate PersonHeight PersonWeight CPR nummer på barnet Er enten en læges ydernummer, en kommunekode eller en skolekode Datoen for hvornår målingen er foretaget Højden af barnet i meter. Skal være mellem 0 og 4 med 2 decimaler nøjagtighed Hvor meget barnet vejer i kilogram. Skal være mellem 0 og 300 med 1decimal nøjagtighed MeasurementDate <xs:element name="measurementdate" type="xs:date" /> - 11 -
PersonHeight <xs:element name="personheight" type="personheighttype" /> <xs:simpletype name="personheighttype"> <xs:annotation> <xs:documentation>person højde i meter med 2 decimalers nøjagtighed</xs:documentation> </xs:annotation> <xs:restriction base="xs:decimal"> <xs:maxinclusive value="4" /> <xs:mininclusive value="0" /> <xs:fractiondigits value="2" /> </xs:restriction> </xs:simpletype> PersonWeight <xs:element name="personweight" type="personweighttype" /> <xs:simpletype name="personweighttype"> <xs:annotation> <xs:documentation>person vægt i kg med en decimals nøjagtighed</xs:documentation> </xs:annotation> <xs:restriction base="xs:decimal"> <xs:maxinclusive value="300" /> <xs:mininclusive value="0" /> <xs:fractiondigits value="1" /> </xs:restriction> </xs:simpletype> ExclusivelyBreastFeedingPeriodEnd <xs:element name="exclusivelybreastfeedingperiodend" type="xs:date" /> - 12 -
ExposedToPassiveSmoking <!--Created with Liquid XML Studio - FREE Community Edition 7.1.6.1440 (http://www.liquidtechnologies.com)--> <xs:element name="exposedtopassivesmoking" type="exposedtopassivesmokingtype" /> <xs:simpletype name="exposedtopassivesmokingtype"> <xs:restriction base="xs:string"> <xs:enumeration value="yes" /> <xs:enumeration value="no" /> <xs:enumeration value="unknown" /> </xs:restriction> </xs:simpletype> - 13 -
Appendix D Revisioner 1.0 Første udgave 1.01 Tilføjet mulighed for at indberette en skolekode 1.02 Tilføjet URLs til testsystemet 1.1 URLs ændret til den nye service på Internettet - 14 -