Du ser en gammel version af denne side. Se den nuværende version.

Sammenlign med nuværende Vis sidehistorik

« Forrige Version 20 Næste »

Dokumenthistorik

DatoVersionÆndringÆndret af

 

1.0Interface til operationen Slet tilføjet, implementering af funktionaliteten udestår.

 

1.0Tilføjelse af valideringsregler Udd-15 og Udd-16

 

1.0Orientering om kommende slettefunktion

 

1.0Valideringsregel Udd-12 er fjernet

 

1.0Opdateret jf. ny struktur i webservicen og udgivet i version 1.0
Arkiveret dokumenthistorik
DatoVersionÆndringÆndret af

 

0.9Eksempler på fejlbeskeder, request og response er opdateret

 

0.9Afgangsårsager udgår og fejlvalideringsregler opdateres

 

0.9Præcisering af fejlbeskeder

 

0.9Opdatering af valideringsregler vedr. Institutionsdata

 

0.9Opdatering af links

 

0.9Sammenfletning af Elevdata og Uddannelsesdata

 

0.9Første offentliggørelse af foreløbig grænsefladebeskrivelse

Indhold

Slettefunktion

Interface til operationen Slet er implementeret (skal anvendes ved fejloprettelse af elever), funktionaliteten er endnu ikke implementeret.

Elevdatabasen

Elevdatabasen er et nyt grunddatasystem i Styrelsen for It og Læring (STIL), indeholdende grunddata om elever på uddannelser under Børne- og Undervisningsministeriets (BUVM) ressortområde. De konkrete grunddata omfatter oplysninger om elevers tilknytning til institutioner og uddannelser, herunder trin, start- og slutdatoer mv. De overordnede dataområder, Elevdatabasen opererer med, er persondata, institutionsdata og uddannelsesdata.

I dag indhenter en række fagsystemer i STIL helt eller delvist egne elevdata. Hertil kommer også månedlige og kvartalsvise statistikindberetninger til Datavarehuset. Elevdatabasen vil minimere antallet af indberetningsprocesser fra institutionerne til STIL's systemer, således indberetningen af grunddata om elever fremover kun sker til ét sted. Dette skal medvirke til at STIL's fagsystemer fremover trækker elevdata fra Elevdatabasen. Den skal således udgøre et fælles datagrundlag for elevdata, som understøtter datakvalitet og de administrative og statistiske opgaver på tværs af STIL. Det er derfor nødvendigt, at Elevdatabasen leverer et højaktuelt billede af hvilke elever, som går på hvilke uddannelser. Dette sikres gennem højfrekvente indberetninger af elevdata fra uddannelsesinstitutionerne.

Indberetninger til Elevdatabasen sker fra uddannelsesinstitutionernes studieadministrative systemer (SA-systemer) via en webservice udstillet på STIL’s integrationsplatform (Integrationsplatformen). Integrationsplatformen er knudepunktet for STIL’s eksternt rettede webservices. Den er en infrastrukturkomponent som via autentificering, autorisering, logning og kryptering (https) understøtter en sikker, ensartet og effektiv udveksling af data mellem STIL's centrale systemer og de eksterne systemer i sektoren. Yderligere oplysninger om tilslutning samt tekniske detaljer kan findes på STIL’s supportside for Integrationsplatformen. Det overordnede flow kan ses i diagrammet nedenfor:


Indberetning til Elevdatabasen

Grunddata om elever

Denne sektion beskriver i overordnede træk de tre dataområder i Elevdatabasen, der tilsammen udgør grunddata om elever, og mod hvilke kilder denne data valideres.

Elevdatabasens dataområder:

  • Persondata - Indeholder elevens personnummer. Data valideres mod Det Centrale Personregister (CPR)
  • Institutionsdata - Indeholder hovedinstitution og afdeling for den indberettende institution. Data valideres mod Institutionsregisteret
  • Uddannelsesdata - Data om den uddannelse, eleven går på - eksempelvis uddannelseskode, uddannelsesversion, skoleperioder, mv. Data valideres mod Uddannelsesmodellen


For en detaljeret gennemgang af de enkelte valideringer, se afsnittet om Valideringsregler.

Håndtering af indberetninger, der ikke overholder valideringsreglerne, beskrives i afsnittet Fejlhåndtering.

Grundlæggende principper for indberetning

  1. En indberetning skal indeholde gældende data for en elev.
  2. En indberetning skal indeholde historisk data for eleven for den pågældende uddannelse og institution.
  3. Ved ændringer til data på eleven, skal indberetning ske senest dagen efter at ændringen er trådt i kraft.
  4. En indberetning må ikke indeholde forventede fremtidige ændringer

Omfattede uddannelser

Grundskole

Alle elever, der går på en grundskoleuddannelse, skal indberettes til Elevdatabasen, herunder folkeskoler, fri- og privatskoler, efterskoler mv.

Uddannelseskode (CØSA formål)

UddannelseFormålsgruppe
332EUD1018
211910. klasseundervisning18
4800Folkeskole45
4801Ungdomsskoler45
4802Kommunale internationale grundskoler45
4803Frie skoler45
4804Efterskoler45


Gymnasieområdet

Alle elever, der går på en gymnasieuddannelse under formålsgruppe 2 eller 33 i Uddannelsesmodellen, skal indberettes til Elevdatabasen.

Brobygningselever og prøvedeltagere skal ikke indberettes.

Uddannelseskode (CØSA formål)

UddannelseFormålsgruppe
1064FGU-kombi med htx fagelementer2
1080Studierettet påbygning, tekniske uddannelser2
1980Studierettet påbygning, merkantile uddannelser2
3010Højere Handelseksamen2
30442-årigt hhx kursus2
3310Højere teknisk eksamen2
3311EUX, tekniske uddannelser2
3315EUX, merkantile uddannelser2
1063FGU-kombi med hf-fagelementer33
2992European Baccalaureate33
2999Ingeniør Adgangskurser33
3000Optagelsesprøve gymnasiale uddannelser33
3001Et- og flerårige enkeltfag33
3003Pre International Baccalaureate33
3009stx33
3017hf33
3021Studenterkursus33
3028International Baccalaureate33
3042Laboratoriekurser for enkeltfagselever33
3046hf 3 årigt forløb33
30473 årigt studenterkursus33
3079stx 4 årigt forløb33
3312Dansk-Tysk studentereksamen33
3313Dansk-Fransk Bacalaurétte33

Integrationsmønstre

Denne sektion beskriver de krav som SA-systemet skal opfylde ved integration til Elevdatabasen. Kravene er vigtige for at sikre en stabil service og data af høj kvalitet.

Sikring af stabil drift

For at sikre stabil drift af Elevdatabasen, skal integrationen designes så der maksimalt sendes 20 requests i sekundet per SA-system.
Det er tilladt at indberette parallelt, så længe det samlede antal requests holdes under denne grænse og kravet om indberetning på samme CPR-nummer (Håndtering af samtidighed) overholdes.
Hvis en indberetning fejler, og der automatisk prøves igen, skal disse indberetninger stadig ske kontrolleret jf. dette krav. Det anbefales ydermere at man ved gentagende fejl øger forsinkelsen for hvornår der prøves igen.

Håndtering af samtidighed

Da beskeder kan skifte rækkefølge i både netværk og på Integrationsplatformen (IPL), giver det en risiko for at ændringer kan blive overhalet, og dermed bliver data i Elevdatabasen forskellig fra den faktiske data i SA-systemet.
Rækkefølgen af indberetninger bliver først gjort endelig idet beskeden modtages af Elevdatabasen, og det er derfor ikke tilladt at indberette 2 ændringer på samme CPR-nummer i parallel.
Alle indberetninger på samme CPR-nummer skal således ske sekventielt - dvs. at næste indberetning først sendes, når svar er modtaget fra Elevdatabasen på den sidste indberetning for det pågældende CPR-nummer.
Ønsker man at parallelisere indberetningerne, er det derfor vigtigt at paralleliseringen sker grupperet på CPR-nummer.

Håndtering af udfald i netværk og infrastruktur

Alle indberetninger skal påsættes et IndberetningsId af typen UUID for at undgå dobbeltindberetninger ved fejl i netværk eller anden infrastruktur.
Hvis der ikke modtages et svar på en indberetning - f.eks. fordi svaret er gået tabt i netværket eller forbindelsen lukkes inden processeringen er færdig, forventes det at SA-systemet gensender den samme besked med samme IndberetningsId.
Hvis beskeden faktisk er behandlet korrekt ved første indberetning, vil svaret på gensendelsen af beskeden have status DUPLICATE. Var der valideringsfejl på den tidligere indberetning vil denne blive returneret som en SoapFault (se afsnittet SoapFaults for flere detajler).

IndberetningsId'et kan bruges til at tjekke status på en indberetning med Status-operationen. Se afsnittet Operationer for flere detaljer.

Se tabellen i afsnittet Fejlhåndtering for yderligere detaljer om hvornår SA-systemet forventes at gensende en indberetning på et IndberetningsId.


Webservice

Denne sektion beskriver webservicen til indberetning.

Adgang til webservice

Elevdatabasens webservice udstilles på STIL's integrationsplatform (Integrationsplatformen). Integrationsplatformen anvender STIL's system Tilslutning til brug for oprettelse, administration og vedligehold af tilslutninger til services og dataadgange mellem institutioner og systemleverandører.

For at kunne indberette til Elevdatabasen er det påkrævet, at der er indgået en aftale om udveksling af data (dataadgang) mellem det studieadministrative system og den konkrete uddannelsesinstitution via Tilslutning. Dataadgangen skal oprettes på hovedinstitutionen, hvis der skal indberettes for en afdeling under en hovedinstitution.


Operationer

Der findes 4 operationer i Elevdatabasens indberetningswebservice.

OperationBeskrivelse
IndberetSelve indberetningen, dvs. data om elev, uddannelse mv.
StatusHenter status for en indberetning ud fra IndberetningsId
SletSletter alle indberetninger for en elev på en institution. Kun til fejlindberetninger.
PingAngiver om Elevdatabasen er funktionel

De tekniske detaljer og eksempler på request/response kan findes i afsnittet Teknisk beskrivelse af operationer.

Indberet

Indberetning af data til Elevdatabasen sker med operationen Indberet for én elev af gangen.

Elevdatabasen returnerer en status for hver indberetning som angiver, om indberetningen er gået godt eller er fejlet. Alle fejl kastes som en SoapFault og er således ikke en del af Response-objektet. SoapFault indeholder fejlkoder og fejlbeskrivelser, som angiver, hvad der er galt. Se afsnittet Fejlhåndtering for en detaljeret beskrivelse om håndtering af disse fejl.

Status

Anvendes til at hente status for en indberetning ud fra det ID som indberetningen er foretaget på. Ved status FAILED , vil responset indeholde valideringsfejlene, der efterfølgende kan behandles af afhenter.

Svaret fra Status-operationen er identisk med svaret på en indberetning, og operationen kan benyttes ved tvivl om hvorvidt en indberetning er gået godt.

Slet

Anvendes til at slette alle indberetninger for en elev på en institution. Operationen er udelukkende tiltænkt situationer hvor der er indberettet elevdata på et forkert personnummer eller en forkert uddannelse. I situationer hvor der er indberettet forkerte data om en elevs skoleperioder, laves der en ny almindelig indberetning med elevens korrekte skoleperioder og data på institutionen.

Ping

Anvendes til at pinge Elevdatabasen og angiver om Elevdatabasen kan modtage indberetninger.


Fejlhåndtering

Elevdatabasen opererer med 3 typer af fejlkoder, Elevdb-XXXX, Indb-XXXX og Pers-XXXX. Elevdb-XXXX dækker over interne fejl på Elevdatabasen. Indb-XXXX dækker over fejl i indberetningen fra de studieadministrative systemer til Elevdatabasen. Pers-XXXX dækker over fejl ved valideringen af personoplysninger mod CPR.

Tabellen nedenfor indeholder en oversigt over de enkelte fejlkoder og information om, hvordan disse fejl skal håndteres.

ErrorCodeException (SoapFault type)FejlbeskrivelseForklaringAutomatisk gensendelse muligNyt IndberetningsId ved genindberetning
<ingen><ingen>-Hvis kaldet timer ud, eller andet går galt der gør at svar ikke kommer tilbage fra Elevdatabasen, vil fejlkode typisk være implementeringsspecifikke for det enkelte system. Som eksempel kunne dette være en "ConnectionClosed" eller "TimeoutException".JaNej
Elevdb-1000InternalServerException

Varierer alt efter fejl opstået i Elevdatabasen. Kendte scenarier listet op nedenfor fordelt på operationer:

Status:

Elevdatabasen kender ikke indberetningsId:

  • Fejlbesked: Ingen indberetning fundet på indberetningsid: #IndberetningsId

Der forespørges en status på en anden afdeling end den oprindelige indberetning blev lavet på:

  • Fejlbesked: Institutionsnummeret #Afdeling matcher ikke den tidligere indberetning

Indberet:

Indberetningen er endt i en ugyldig tilstand. Dette sker hvis indberetningen er fejlet under behandlingen af request og der forsøges indberettet igen på samme IndberetningsId:

  • Fejlbesked: Indberetningen på indberetningsid #IndberetningsId er i en ugyldig tilstand. Kontakt supporten for Elevdatabasen.

Tilfælde hvor fejlen ikke er kendt:

  • Fejlbesked: Intern server fejl

Andre fejlbeskeder, hvor supporten for Elevdatabasen skal kontaktes

  • Fejlbesked: Der skete en fejl ved udlæsning af data fra databasen, kontakt supporten

  • Fejlbesked: Der skete en fejl ved indberetning af data, kontakt supporten

  • Fejlbesked: Digest algorithm not available.
  • Fejlbesked: Uventet fejl
Intern server fejl på ElevdatabasenJaJa
Elevdb-1001InternalServerExceptionIkke defineretIntern fejl på Elevdatabasen. Kontakt STIL support.Nej; Kontakt STIL supportN/A
Indb-2003IndberetningOutOfOrderExceptionData er tidligere modtaget med et højere transaktionsId end #transaktionsId

Denne fejl opstår, hvis Elevdatabasen modtager 2 indberetninger på samme elev samtidig. Dette kan kun ske, hvis kravet om håndtering af samtidighed (se afsnit om andre krav) ikke overholdes.

Kontakt STIL's support, hvis fejlen opstår på trods af en korrekt implementering.

Nej; Der er lavet en implementeringsfejl der bør rettesN/A
Indb-2004InvalidIndberetningIndberetningen på indberetningsid #IndberetningsId er ugyldig

Data på indberetningen er ugyldig.

Nej; Data skal rettes manueltJa
Pers-1000InternalServerExceptionDer skete en fejl ved kald til PersondatamoduletFejl ved validering af CPR-oplysninger. Selvom dette er en intern fejl der opstår, hvis fx CPR-registeret ikke svarer, så skal der i dette tilfælde genereres et nyt IndberetningsId for at sikre indberetningen håndteres igen.JaJa

SoapFaults

Elevdatabasen returnerer både tekniske fejl og datafejl som SoapFaults. Elevdatabasens SoapFaults er bygget op omkring 2 overordnede elementer:

<soap:Reason> - Indeholder en overordnet beskrivelse af den pågældende fejl.

<soap:Detail> - Indeholder en mere detaljeret beskrivelse af fejlen (ErrorMessage) samt ErrorCode. I tilfælde af valideringsfejl indeholder fejlbeskeden en liste af valideringsfejlkoder og dertilhørende fejlbeskrivelser.

Parametre for SoapFault-besked ved interne fejl

Ved tekniske fejl benyttes følgende format

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
ErrorCodeStringIngen/Ikke relevantJ1Fejlkode
ErrorMessageStringIngen/Ikke relevantJ1Beskrivelse af fejlen

Parametre for SoapFault-besked ved valideringsfejl

Ved valideringsfejl benyttes ved følgende format

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
ErrorCodeStringIngen/Ikke relevantJ1Fejlkode
ErrorMessageStringIngen/Ikke relevantJ1Beskrivelse af fejlen
StatusEnumDUPLICATE, FAILEDJ1

Status på indberetningen.

DUPLICATE angiver, at data tidligere er modtaget på IndberetningsId'et, og behandlet uden fejl.

Ingen data er blevet behandlet i dette request, og fejl listet i Indberetningsdetaljer er således fejl fra den tidligere indberetning


Se afsnittet Fejlhåndtering for håndtering af fejl

IndberetningsdetaljerList<Indberetningsdetalje>Ingen/Ikke relevantJUnboundedUdspecificeret liste med fejlkoder og beskrivelser
Indberetningsdetalje
FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
FejlkodeStringIngen/Ikke relevantJ1Elevdatabasens valideringsfejlkode
FejlbeskrivelseStringIngen/Ikke relevantJ1Beskrivelse af valideringsfejlen

Fault eksempel

Følgende viser et eksempel på en SoapFault ved indberetning af request hvor der er valideringsfejl.

Eksempel på InvalidIndberetningException-fault (valideringsfejl)
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
   <soap:Body>
      <soap:Fault>
         <soap:Code>
            <soap:Value>soap:Sender</soap:Value>
         </soap:Code>
         <soap:Reason>
            <soap:Text xml:lang="en">Indberetningen på indberetningsid 7622c460-51cc-4d73-ad1d-6b72f761b8a8 er ugyldig</soap:Text>
         </soap:Reason>
         <soap:Detail>
            <InvalidIndberetning xmlns="http://service.elevdatabasen.stil.dk/">
               <ErrorCode>Indb-2004</ErrorCode>
               <ErrorMessage>Data på indberetningen er ugyldig.</ErrorMessage>
               <Status>FAILED</Status>
               <Indberetningsdetaljer>
                  <Indberetningsdetalje>
                     <Fejlkode>Udd-01</Fejlkode>
                     <Fejlbeskrivelse>Den indberettede kombination af uddannelseskode, uddannelsesversion, speciale og skoleperioder er ikke gyldig</Fejlbeskrivelse>
                  </Indberetningsdetalje>
                  <Indberetningsdetalje>
                     <Fejlkode>Udd-02</Fejlkode>
                     <Fejlbeskrivelse>Uddannelseskoden 1234 findes ikke i Uddannelsesmodellen</Fejlbeskrivelse>
                  </Indberetningsdetalje>
                  <Indberetningsdetalje>
                     <Fejlkode>Udd-03</Fejlkode>
                     <Fejlbeskrivelse>Versionen 2 findes ikke for uddannelsen 1234</Fejlbeskrivelse>
                  </Indberetningsdetalje>
                  <Indberetningsdetalje>
                     <Fejlkode>Udd-04</Fejlkode>
                     <Fejlbeskrivelse>Skoleperioden 1 gælder ikke for uddannelsen 1234 i version 2</Fejlbeskrivelse>
                  </Indberetningsdetalje>
               </Indberetningsdetaljer>
            </InvalidIndberetning>
         </soap:Detail>
      </soap:Fault>
   </soap:Body>
</soap:Envelope>

Valideringsregler

Nedenfor er listet de valideringer, der foretages på Elevdatabasen. Valideringerne er delt op i tre dele: Persondata, Institutionsdata og Uddannelsesdata.

Ved brud på valideringsregler, returneres en liste af valideringsfejl som Indberetningsdetaljer i en SoapFault.

Persondata

Fejlkode

Fejltekst

Pers-01CPR-nummeret #CPR-nummer findes ikke i Det Centrale Personregister (CPR)
Pers-02CPR-nummeret #CPR-nummer er ikke aktivt i Det Centrale Personregister (CPR)

Institutionsdata

FejlkodeFejltekst
Inst-01Institutionsnummeret #Institutionsnummer er ikke aktivt
Inst-02

Afhængig af #Flyttekode.

(#Flyttekode=1): Institution #Institutionsnummer er flyttet til institution #NyInstitutionsnummer.

(#Flyttekode=2): Institution #Institutionsnummer er flyttet til institution #NyInstitutionsnummer.

Inst-03

Afdelingen #Afdelingsinstitutionsnummer hører ikke til den hovedinstitution #Hovedinstitutionsnummer der indberettes på.

Inst-04Institutionen #Hovedinstitution er indberettet som en institution uden afdelinger, men institutionen er registreret som en afdeling eller hovedinstitution.

Uddannelsesdata

FejlkodeFejltekst
Udd-01

Den indberettede kombination af uddannelseskode, uddannelsesversion, speciale og skoleperioder er ikke gyldig

Udd-02Uddannelseskoden #uddannelseskode findes ikke i Uddannelsesmodellen.
Udd-03Versionen #uddannelsesversion findes ikke for uddannelsen #uddannelseskode
Udd-04Skoleperioderne #skoleperioder gælder ikke for uddannelsen #uddannelseskode i version #version.
Udd-05Specialet #specialekode gælder ikke for uddannelsen #uddannelseskode i version #version med skoleperioderne #skoleperioder
Udd-06
Udd-07Tidligste registrering af eleven #tidligsteSkoleperiodeStartdato ligger før startdato for uddannelsen med uddannelseskoden #uddannelseskode i version #Version
Udd-08
Udd-09
Udd-10Elevskoleperiodens startdato #elevskoleperiodestart skal være før elevskoleperiodens slutdato #elevskoleperiodeslut
Udd-11
Udd-12
Udd-13Adgangsvejen #adgangsvej på skoleperiode #skoleperiode er ikke tilknyttet uddannelsen #uddannelseskode" med version #Version
Udd-14
Udd-15Skoleperiode #skoleperiode på uddannelsen #uddannelseskode i version #version mangler en adgangsvej
Udd-16Elevtypen #elevtype på skoleperiode #skoleperiode er ikke tilknyttet specialet #speciale på uddannelsen #Uddannelseskode

Teknisk beskrivelse af operationer

Dette afsnit beskriver de tekniske detaljer for hver operation på Elevdatabasens webservice.

Indberet

Operationen har følgende struktur for request og response:

Parametre for request

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse

IndberetElevRequest

IndberetElevRequest

Ingen/Ikke relevantJ1Request på Indberetning
Se beskrivelsen i afsnittet IndberetElevRequest herunder. 

IndberetElevRequest

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse

IndberetningsId

UUIDIngen/Ikke relevantJ1UUID for indberetning, genereres af indberettende system

IndberetElev

IndberetElev

Ingen/Ikke relevantJ1

Elev der indberettes data på

IndberetElev

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
PersonoplysningerPersonoplysningerIngen/Ikke relevantJ1Personoplysninger om eleven
InstitutionsoplysningerInstitutionsoplysningerIngen/Ikke relevantJ1Oplysninger om institutionen, hvor eleven går
UddannelsesoplysningerUddannelsesoplysningerIngen/Ikke relevantJ1Oplysninger om uddannelsen eleven er i gang med

Personoplysninger

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
CPRNummerStringLængde: 10J1CPR-nummer (personnummer) på eleven. Der kan ikke indberettes elever uden CPR-nummer.

Institutionsoplysninger

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
HovedinstitutionHeltalMax cifre: 6J1Hovedinstitutionen for den afdeling hvor eleven modtager undervisning
AfdelingHeltalMax cifre: 6J1

Institutionsnummeret for afdelingen hvor eleven modtager undervisning

Er institutionen en selvstændig institution uden hovedinstitution skal samme institutionsnummer angives i Hovedinstitution og Afdeling.

Uddannelsesoplysninger

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
UddannelseskodeString

Minimums længde: 1, max længde: 4, ingen whitespace tegn

J1

Den officielle uddannelseskode (CØSA-formål) for uddannelsen.
Se Uddannelsesmodellen for de gældende uddannelseskoder.

Elevskoleperioder

List<Elevskoleperiode>Ingen/Ikke relevantJUnboundedListe af samtlige Elevskoleperioder for den pågældende elev.
Elevskoleperiode er den skoleperiode eller det trin, som eleven har eller har haft på den pågældende uddannelse.

Elevskoleperiode

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
SkoleperiodeStringIngen/Ikke relevantJ1

Skoleperiode eller trin for elevskoleperioden.
Se Uddannelsesmodellen for de gældende skoleperioder.

Startdato

DateIngen/Ikke relevantJ1Startdato for elevskoleperioden

Slutdato

DateIngen/Ikke relevantN1Slutdato for elevskoleperioden

Uddannelsesversion

HeltalMax cifre: 4J1

Den version af uddannelsen som eleven går på.
Se Uddannelsesmodellen for de gældende versioner.

Speciale

String

Minimums længde: 1, max længde: 2, ingen whitespace tegn

N1

Speciale for uddannelsen, hvis uddannelsen har et speciale.
Se Uddannelsesmodellen for de gældende specialer.

ElevtypeStringMax længde: 10N1

Information om eleven er prøvefri, får specialundervisning mv.

OBS: Kun relevant for grundskoleområdet

AdgangsvejString

Min længde 1

Max længde 4

N1

Adgangsvej for elevens optag på uddannelsen.
Se Uddannelsesmodellen for de gældende adgangsveje.

KlassebetegnelseString

Min længde 1

Max længde 50

N1Navnet på den klasse eleven går i


Parametre for response

FeltDatatypeBegrænsningerKrævetBeskrivelse
IndberetElevResponse

IndberetElevResponse

Ingen/Ikke relevantJ

Response på Indberetning.
Se beskrivelsen i afsnittet IndberetElevResponse herunder. 

IndberetElevResponse

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
StatusEnumDUPLICATE, COMPLETEJ1

Status på indberetningen af den enkelte elev. DUPLICATE angiver, at data tidligere er modtaget på IndberetningsID'et, og behandlet uden fejl. Ingen data er blevet behandlet i dette request.


Se afsnittet Fejlhåndtering for håndtering af fejl.

I tilfælde af at status er andet end COMPLETE eller DUPLICATE betyder det at indberetningen er endt i en ugyldig tilstand.

Eksempel på request til Indberet
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:v1="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0" xmlns:ser="http://service.elevdatabasen.stil.dk/">
   <soap:Header/>
   <soap:Body>
      <v1:IndberetElevRequest>
         <v1:Identifier>
            <v1:SystemName>TESTSYSTEM</v1:SystemName>
            <v1:SystemTransactionID>123456789</v1:SystemTransactionID>
         </v1:Identifier>
         <v1:Message>
            <ser:IndberetElevRequest>
               <ser:IndberetningsId>32ed0545-b6a0-4e91-bf7b-0fc0dff8ef73</ser:IndberetningsId>
               <ser:IndberetElev>
                  <ser:Personoplysninger>
                     <ser:CPRNummer>0101011231</ser:CPRNummer>
                  </ser:Personoplysninger>
                  <ser:Institutionsoplysninger>
                     <ser:Hovedinstitution>961851</ser:Hovedinstitution>
                     <ser:Afdeling>961851</ser:Afdeling>
                  </ser:Institutionsoplysninger>
                  <ser:Uddannelsesoplysninger>
                     <ser:Uddannelseskode>3017</ser:Uddannelseskode>
                     <ser:Elevskoleperioder>
                        <ser:Elevskoleperiode>
                           <ser:Skoleperiode>2</ser:Skoleperiode>
                           <ser:Startdato>2021-08-01</ser:Startdato>
                           <ser:Uddannelsesversion>1</ser:Uddannelsesversion>
                           <ser:Speciale>3</ser:Speciale>
                           <ser:Adgangsvej>TD</ser:Adgangsvej>
                           <ser:Klassebetegnelse>2020TD</ser:Klassebetegnelse>
                        </ser:Elevskoleperiode>
                        <ser:Elevskoleperiode>
                           <ser:Skoleperiode>1</ser:Skoleperiode>
                           <ser:Startdato>2020-08-01</ser:Startdato>
                           <ser:Slutdato>2021-06-22</ser:Slutdato>
                           <ser:Uddannelsesversion>1</ser:Uddannelsesversion>
                           <ser:Speciale>3</ser:Speciale>
                           <ser:Adgangsvej>TD</ser:Adgangsvej>
                           <ser:Klassebetegnelse>2020TD</ser:Klassebetegnelse>
                        </ser:Elevskoleperiode>
                     </ser:Elevskoleperioder>
                  </ser:Uddannelsesoplysninger>
               </ser:IndberetElev>
            </ser:IndberetElevRequest>
         </v1:Message>
      </v1:IndberetElevRequest>
   </soap:Body>
</soap:Envelope>



Eksempel på response til Indberet
<IndberetElevResponse xmlns="http://service.elevdatabasen.stil.dk/">
	<Status>COMPLETE</Status>
</IndberetElevResponse>

Status

Status-operationen er stadig under udarbejdelse, og vi forventer at response-strukturen kommer til at matche Indberet-operationen

Parametre for request

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse

StatusRequest

StatusRequest

Ingen/Ikke relevantJ1Request på status for indberetning.
Se beskrivelsen i afsnittet StatusRequest herunder. 

StatusRequest

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
InstitutionsoplysningerInstitutionsoplysningerIngen/Ikke relevantJ1Oplysninger om den indberettende institution
IndberetningsIdGUIDIngen/Ikke relevantJ1UUID for indberetningen der ønskes status for

Institutionsoplysninger

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
HovedinstitutionHeltalMax cifre: 6J1Hovedinstitutionen for den afdeling hvor eleven modtager undervisning
AfdelingHeltalMax cifre: 6J1

Institutionsnummeret for afdelingen hvor eleven modtager undervisning

Er institutionen en selvstændig institution uden hovedinstitution skal samme institutionsnummer angives i Hovedinstitution og Afdeling.

Parametre for response

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse

StatusResponse

StatusResponse

Ingen/Ikke relevantJ1Response på status.
Se beskrivelsen i afsnittet StatusResponse herunder. 

StatusResponse

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
StatusEnum

CREATED,

RECEIVED,

DUPLICATE,

PROCESSING,

COMPLETE,

FAILED

J1

Status for behandling af indberetningen.
Se afsnittet Fejlhåndtering for information om status FAILED.

I tilfælde at status er andet end FAILED, COMPLETE eller DUPLICATE betyder, det at indberetningen er endt i en ugyldig tilstand.

IndberetningsdetaljerList<Indberetningsdetalje>Ingen/Ikke relevantNUnboundedUdspecificeret liste med fejlkoder og beskrivelser

Indberetningsdetalje

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
FejlkodeStringIngen/Ikke relevantJ1Elevdatabasens valideringsfejlkode
FejlbeskrivelseStringIngen/Ikke relevantJ1Beskrivelse af valideringsfejlen
Eksempel request til Status
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:v1="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0" xmlns:ser="http://service.elevdatabasen.stil.dk/">
   <soap:Header/>
   <soap:Body>
      <v1:StatusRequest>
         <v1:Identifier>
            <v1:SystemName>TESTSYSTEM</v1:SystemName>
            <v1:SystemTransactionID>123456789</v1:SystemTransactionID>
         </v1:Identifier>
         <v1:Message>
            <ser:StatusRequest>
               <ser:Institutionsoplysninger>
                  <ser:Hovedinstitution>961851</ser:Hovedinstitution>
                  <ser:Afdeling>961851</ser:Afdeling>
               </ser:Institutionsoplysninger>
               <ser:IndberetningsId>32ed0545-b6a0-4e91-bf7b-0fc0dff8ef73</ser:IndberetningsId>
            </ser:StatusRequest>
         </v1:Message>
      </v1:StatusRequest>
   </soap:Body>
</soap:Envelope>
Eksempel responses til Status
Indberetning gået godt (COMPLETE)
<StatusResponse xmlns="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0">
    <Status>COMPLETE</Status>
</StatusResponse>
Fejl i indberetning
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
   <soap:Body>
      <soap:Fault>
         <soap:Code>
            <soap:Value>soap:Sender</soap:Value>
         </soap:Code>
         <soap:Reason>
            <soap:Text xml:lang="en">Input error</soap:Text>
         </soap:Reason>
         <soap:Detail>
            <ServiceFaultDetailerV2 xmlns:ns2="http://service.elevdatabasen.stil.dk/" xmlns="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0">
               <CorrelationID>9718cb0b-6072-45ce-9656-a0799f99a5de</CorrelationID>
               <Timestamp>2022-06-13T11:01:37</Timestamp>
               <ErrorCode>IPL171003</ErrorCode>
               <ErrorMessage>Indberetning is invalid</ErrorMessage>
               <Details>Indberetningen på indberetningsid 32ed0545-b6a0-4e91-bf7b-0fc0dff8ef73 er ugyldig</Details>
               <SourceSystemError>
                  <SourceSystemName>Elevdatabasen</SourceSystemName>
                  <ErrorCode>Indb-2004</ErrorCode>
                  <DetailsList>
                     <Detail>
                        <Code>Inst-04</Code>
                        <Description>Hovedinstitutionen 961851 er registreret som en hovedinstitution med afdelinger</Description>
                     </Detail>
                  </DetailsList>
               </SourceSystemError>
            </ServiceFaultDetailerV2>
         </soap:Detail>
      </soap:Fault>
   </soap:Body>
</soap:Envelope>

Slet

Denne operation benyttes kun hvis der er indberettet data på et forkert CPR-nummer eller en forkert uddannelse.

Slettefunktion

Interface til operationen Slet er implementeret (skal anvendes ved fejloprettelse af elever), funktionaliteten er endnu ikke implementeret.

Operationen har følgende struktur for request og response:

Parametre for request

Felt

Datatype

Begrænsninger

Krævet

Kardinalitet

Beskrivelse

SletRequest

SletRequest

Ingen/Ikke relevantJ1Request på Slet
Se beskrivelsen i afsnittet SletRequest herunder. 

SletRequest

Felt

Datatype

Begrænsninger

Krævet

Kardinalitet

Beskrivelse

CPRNummerStringLængde:10J1CPR-nummer (personnummer) på eleven hvis elevdata skal slettes.
HovedinstitutionHeltalMax cifre: 6J1Institutionsnummeret for hovedinstitutionen hvor elevdata skal slettes.
AfdelingHeltalMax cifre: 6J1

Institutionsnummeret for afdelingen hvor elevdata skal slettes.

Er institutionen en selvstændig institution uden hovedinstitution, skal samme institutionsnummer angives i Hovedinstitution og Afdeling.

UddannelseskodeStringMinimum længde: 1, max længde: 4, ingen whitespace tegnJ1Den officielle uddannelseskode (CØSA-formål) for uddannelsen hvor elevdata skal slettes.

Parametre for response

Felt

Datatype

Begrænsninger

Krævet

Kardinalitet

Beskrivelse

SletStatus

Enum

Værdimængde: DELETEDJ1Response på slet
Eksempel request til Slet
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:v1="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0" xmlns:ser="http://service.elevdatabasen.stil.dk/">
   <soap:Header/>
   <soap:Body>
      <v1:SletRequest>
         <v1:Identifier>
            <v1:SystemName>TESTSYSTEM</v1:SystemName>
            <v1:SystemTransactionID>123456789</v1:SystemTransactionID>
         </v1:Identifier>
         <v1:Message>
            <ser:SletRequest>
               <ser:CPRNummer>0101011231</ser:CPRNummer>
               <ser:Hovedinstitution>961851</ser:Hovedinstitution>
               <ser:Afdeling>961851</ser:Afdeling>
               <ser:Uddannelseskode>3017</ser:Uddannelseskode>
            </ser:SletRequest>
         </v1:Message>
      </v1:SletRequest>
   </soap:Body>
</soap:Envelope>
Eksempel response til Slet

(Operationen er endnu ikke implementeret)

<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
   <soap:Body>
      <soap:Fault>
         <soap:Code>
            <soap:Value>soap:Receiver</soap:Value>
         </soap:Code>
         <soap:Reason>
            <soap:Text xml:lang="en">Internal error</soap:Text>
         </soap:Reason>
         <soap:Detail>
            <ServiceFaultDetailerV2 xmlns:ns2="http://service.elevdatabasen.stil.dk/" xmlns="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0">
               <CorrelationID>4422fe65-0b42-451b-b942-f54df0ab95ac</CorrelationID>
               <Timestamp>2022-06-13T11:02:52</Timestamp>
               <ErrorCode>IPL171001</ErrorCode>
               <ErrorMessage>An internal server error occurred on the source service</ErrorMessage>
               <Details>Slette funktion ikke implementeret</Details>
               <SourceSystemError>
                  <SourceSystemName>Elevdatabasen</SourceSystemName>
                  <ErrorCode>Elevdb-1001</ErrorCode>
                  <Details>Ikke implementeret</Details>
               </SourceSystemError>
            </ServiceFaultDetailerV2>
         </soap:Detail>
      </soap:Fault>
   </soap:Body>
</soap:Envelope>

Ping

Operationen har følgende struktur for request og response

Parametre for request

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse

Ping

Ping

Ingen/Ikke relevantJ1Ping kald til Elevdatabasen

Parametre for response

FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse

PingReponse

PingSvar

Ingen/Ikke relevantJ1Ping svar fra Elevdatabasen
StatusStringup, downJ1Status på ping svar fra Elevdatabasen
Eksempel request til Ping
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:v1="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0">
   <soap:Header/>
   <soap:Body>
      <v1:Ping/>
   </soap:Body>
</soap:Envelope>
Eksempel response til Ping
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
   <soap:Body>
      <PingResponse xmlns="http://ipl.stil.dk/services/elevdatabasen/indberetning/v1.0">
         <Status>up</Status>
      </PingResponse>
   </soap:Body>
</soap:Envelope>