Versioner sammenlignet

Nøgle

  • Linjen blev tilføjet.
  • Denne linje blev fjernet.
  • Formatering blev ændret.

Dokumenthistorik

DatoVersionÆndringÆndret af

 

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

 

0.9Sammenfletning af Elevdata og Uddannelsesdata

 

0.9Opdatering af linksThor Thomsen Krarup 

 

0.9Opdatering af valideringsregler vedr. Institutionsdata

 

0.9Præcisering af fejlbeskeder

21 

0.9Afgangsårsager udgår og fejlvalideringsregler opdateres

Indhold

Indholdsfortegnelse
maxLevel3
excludeIndhold

Bemærk
titleAfgangsårsager

Indberetning af afgangsårsager udgår er udgået fra Elevdatabasens indberetningsflade

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) resortområde. De konkrete grunddata omfatter oplysninger om elevers aktuelle tilknytning til institutioner og uddannelser, herunder trin, start- og slutdatoer mv. samt elevernes årsager til afgang fra de enkelte uddannelsesforløb. 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 af elevdata fra institutionerne til STIL, således indberetningen af grunddata om elever fremover kun sker til ét sted, Elevdatabasen. 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 derfor nødvendigt, at Elevdatabasen leverer et højaktuelt billede af hvilke elever, som går på hvilke gymnasiale 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 eksterne systemer. Yderligere oplysninger om tilslutning samt tekniske detaljer kan findes på STIL’s supportside for Integrationsplatformen. Det overordnede flow kan ses i diagrammet nedenfor:


Image Modified

Indberetning til Elevdatabasen

Grunddata om elever

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

Elevdatabasens dataområder:

  • Persondata - Indeholder elevens personnummer
  • Institutionsdata - Indeholder hovedinstitution og afdeling for den indberettende institution
  • Uddannelsesdata - Data om den uddannelse, eleven går på - eksempelvis uddannelseskode, uddannelsesversion, skoleperioder, afgangsårsager mv.

Elevdatabasen validerer den indberettede data fra de studieadministrative systemer mod Det Centrale Personregister (CPR), Uddannelsesmodellen og Institutionsregisteret som vist i diagrammet nedenfor.

Image Modified

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 aktiv elev pr. indberetningsdatoen.
  2. En indberetning skal indeholde historisk data frem til indberetningsdatoen
  3. Ved ændringer til data på eleven skal indberetning ske senest dagen efter, at ændringen træder i kraft
  4. En indberetning må ikke indeholde forventede ændringer, f.eks. forventet orlov eller skifte fra 1.G til 2.G
  5. Brobygningselever og prøvedeltagere skal ikke indberettes

Omfattede uddannelser

I første omgang er det alene grunddata om elever på det gymnasiale område der skal indberettes. Det gymnasiale område defineres af de uddannelser der til enhver tid fremgår under formålsgruppe 2 og 33 i Uddannelsesmodellen.

Nedenstående tabel viser de uddannelseskoder der hører under Uddannelsesmodellens formålsgruppe 2 og 33 pr. 01-01-2022.

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

Følgende sektion beskriver de krav det 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 ogkravet om indberetning på samme CPR-nummer (krav #2) 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, da fejlen kan være relateret til en overbelastning internt i Elevdatabasen.

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 bliver 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, er det 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 man først sender næste indberetning, når første svar er modtaget fra Elevdatabasen.

Ønsker man at parallelisere indberetninger er det vigtigt, at paralleliseringen sker grupperet på CPR-nummer eller institution.

Håndtering af udfald i netværk og infrastruktur

Alle indberetninger skal påsættes et IndberetningsID af typen GUID, for at undgå dobbeltindberetninger ved fejl i netværk elleranden 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 SA-systemet at gensende den samme besked med samme IndberetningsID.

Hvis beskeden faktisk er behandlet korrekt i første omgang, vil svaret på gensendelsen af beskeden have status DUPLICATE. Var der fejl på den tidligere indberetning vil denne blive returneret som en SoapFault (se afsnittet SoapFaults for flere detajler).

IndberetningsID'et kan også 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 man forventes at gensende- eller generere en nyt IndberetningsID.

Webservice

Denne sektion beskriver den webservice der skal anvendes til brug for indberetning.

Anker
Adgang til webservice
Adgang til webservice
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 og dataadgange mellem institutioner og systemleverandører (udbydere).

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 (hovedinstitutionsniveau) via Tilslutning.

Yderligere oplysninger om tilslutning samt tekniske detaljer kan findes på STIL’s supportside for Integrationsplatformen.

Operationer

Der findes følgende 3 operationer i Elevdatabasen, Indberet, Status og Ping.

OperationBeskrivelse
IndberetSelve indberetningen, dvs. data om elev, uddannelse mv.
StatusHenter status for en indberetning ud fra IndberetningsId
PingAngiver om Elevdatabasen er funktionel

Anker
Indberet
Indberet
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.

De tekniske detajler, og eksempel på request/response kan findes i afsnittet Teknisk beskrivelse af operationer

Anker
Status
Status
Status

Anvendes til at hente - eller genhente - 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 kan benyttes ved tvivl om hvorvidt en indberetning er gået godt.

De tekniske detajler, og eksempel på request/response kan findes i afsnittet Teknisk beskrivelse af operationer

Ping

Anvendes til at pinge Elevdatabasen.

De tekniske detajler, og eksempel på request/response kan findes i afsnittet Teknisk beskrivelse af operationer

Anker
Fejlhåndtering
Fejlhåndtering
Fejlhåndtering

Elevdatabasen opererer med 3 typer af fejlkoder, Elevdb-XXXX, Indb-XXXX og Pers-1000. Elevdb-XXXX fejlkoderne dækker over interne fejl på Elevdatabasen. Indb-XXXX fejlkoderne dækker over fejl i indberetningen fra de studieadministrative systemer til Elevdatabasen. Pers-XXXX dækker over fejl i forbindelse med validering af CPR-oplysninger og kommunikation med CPR-registeret. 

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 implementationsspecifikke 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

er oplistet

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 under hovedinstitutionen end den oprindelige

afdeling som indberetningen

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 eller modeleret:

  • Fejlbesked: Intern server fejl

Nedenstående tilfælde bør ikke opstå

. Sker det, skal STILs support kontaktes.
  • Fejlbesked: Der skete en fejl ved udlæsning af data fra databasen, kontakt supporten

  • , derfor bør disse håndteres straks ved detektering af fejlene.

    Hvis det ikke er muligt for Elevdatabasen at hente request data ud af databasen som en XML streng og deserialisere denne til Java objekt repræsentationen før validering:

    • Fejlbesked: Der skete en fejl ved

    indberetning Intern server fejl på Elevdatabasen
    • udlæsning af data fra databasen, kontakt supporten

  • Fejlbesked: Digest algorithm not available.

  • Fejlbesked: Uventet fejl

  • Hvis det ikke er muligt for Elevdatabasen at konvertere Javas objekt repræsentationen af request data om til en XML streng, før data gemmes i databasen:

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

    Hvis Elevdatabasen ikke kan hashe requestet før tjek af duplikat data:

    • Fejlbesked: Digest algorithm not available.

    Hvis der er blevet tilføjet en ny fejlkode, men denne ikke bliver håndteret i mapningen til SOAP faults:

    • Fejlbesked: Uventet fejl


    Intern server fejl på Elevdatabasen
    JaJa
    Elevdb-1001InternalServerExceptionIkke defineretDenne fejl vises, hvis en operation endnu ikke er færdigimplementeret. Fejlen bør aldrig opstå på operationer beskrevet her. Kontakt STIL support hvis denne alligevel opstår.Nej; Kontakt STIL supportN/A
    Indb-2003IndberetningOutOfOrderException

    Data 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 afsnittet Integrationsmønstre) ikke overholdes.

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

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

    Data på indberetningen er ugyldig.

    Nej
    , data
    ; Data skal rettes manueltJa
    Pers-1000InternalServerExceptionDer skete en fejl ved kald til
    Persondata Modulet
    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 returnere både Interne fejl, og ugyldig 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 exception og en mere detaljeret beskrivelse af fejlen samt errorcode. I tilfælde af valideringsfejl indeholder den en liste med valideringsfejlkoder og dertilhørende fejlbeskrivelser.

    Parametre for SoapFault besked ved interne fejl

    Ved interne 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 validt request, men hvor der er valideringsfejl.

    UI Expand
    titleEksempel på InvalidIndberetningException-fault (valideringsfejl)
    Kodeblok
    languagexml
    <soap:Fault>
        <soap:Code>
            <soap:Value>soap:Receiver</soap:Value>
        </soap:Code>
        <soap:Reason>
            <soap:Text xml:lang="en">Indberetningen på indberetningsid 7814 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-04</Fejlkode>
                        <Fejlbeskrivelse>Skoleperioden 5 gælder ikke for uddannelsen 3017 i version 2</Fejlbeskrivelse>
                    </Indberetningsdetalje>
                    <Indberetningsdetalje>
                        <Fejlkode>Udd-06</Fejlkode>
                        <Fejlbeskrivelse>Elevens startdato 2022-01-01 ligger efter slutdato for uddannelsen med Uddannelseskoden 3017 og Uddannelsesversionen 2 hvor uddannelsen er lukket for optag</Fejlbeskrivelse>
                    </Indberetningsdetalje>
    				<Indberetningsdetalje>
    					<Fejlkode>Udd-13</Fejlkode>
    					<Fejlbeskrivelse>Adgangsvejen TD er ugyldig for skoleperioderne (5)</Fejlbeskrivelse>
                    </Indberetningsdetalje>
    			</Indberetningsdetaljer>
            </InvalidIndberetning>
        </soap:Detail>
    </soap:Fault>

    Anker
    Valideringsregler
    Valideringsregler
    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 #CPRnummer findes ikke i Det Centrale Personregister (CPR)
    Pers-02CPR-nummeret #CPRnummer 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-03Afdelingen #Afdelingsinstitutionsnummer hører ikke til den hovedinstitution #Hovedinstitutionsnummer der indberettes på.
    Inst-04

    Institutionen #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 Elevens startdato #Startdato ligger efter slutdato for uddannelsen med Uddannelseskoden #Uddannelseskode og Uddannelsesversionen #Uddannelsesversionen hvor uddannelsen er lukket for optagUdd-07Elevens startdato #Startdato ligger før startdato for uddannelsen med Uddannelseskoden #Uddannelseskode i version i version #Version
    Udd-08Afgangsårsagen #afgangsårsag findes ikke i Uddannelsesmodellen
    Udd-09Afgangsårsagens gyldig fra dato #gyldigfra ligger før uddannelsesforløbets startdato #elevdatostart
    Udd-10Elevskoleperiodens startdato #elevskoleperiodestart skal være før elevskoleperiodens slutdato #elevskoleperiodeslut
    Udd-11Elevskoleperiodens startdato #elevskoleperiodestart ligger før uddannelsesforløbets startdato #uddannelsesforløbstartdato
    Udd-12Adgangsvejen #adgangsvej er ukendt
    Udd-13Adgangsvejen #adgangsvej er ugyldig for skoleperioderne #skoleperioder
    Udd-14

    Gyldig-fra dato #gyldigfra for afgangsårsagen '#afgangsaarsag' skal ligge inden for afgangsårsagens gyldighedsperiode. Startdato: #afgangsaarsagStartdato, slutdato: #afgangsaarsagStopdato/Ingen



    Anker
    Teknisk beskrivelse af operationer
    Teknisk beskrivelse af operationer
    Teknisk beskrivelse af operationer

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

    Anker
    Indberet
    Indberet
    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

    GUIDIngen/Ikke relevantJ1GUID for indberetning. Id'et genereres af det 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.

    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.

    Elevskoleperioder

    List<ElevskoleperiodeElevskoleperiode>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.
    AfgangsaarsagerList<Afgangsaarsag>Ingen/Ikke relevantN
    Unbounded

    Årsager til elevens ophør på uddannelsen.

    Alle afgangsårsager tilknyttet eleven sendes ved alle indberetninger.

    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 10

    N1Navnet på den klasse eleven går i

    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

    Afgangsaarsag

    ...


    Parametre for response

    FeltDatatypeBegrænsningerKrævet
    Kardinalitet
    Beskrivelse
    Afgangsaarsagskode
    IndberetElevResponse
    StringMax længde: 5

    IndberetElevResponse

    Ingen/Ikke relevantJ
    1Afgangsårsagskode, for elevens afgangsårsag

    Response på Indberetning.
    Se

    Uddannelsesmodellen for de gældende centrale afgangsårsager.GyldigFraDateIngen/Ikke relevantJ1Angiver den dato, hvor eleven stopper på uddannelsen.GyldigTilDate

    Ingen/Ikke relevant

    N1Anvendes hvis eleven genoptager uddannelsen og angiver dato for genoptagelse.

    Parametre for response

    beskrivelsen i afsnittet IndberetElevResponse herunder. 

    IndberetElevResponse

    FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
    IndberetElevResponse
    Status

    IndberetElevResponse

    Ingen/Ikke relevant
    EnumDUPLICATE, COMPLETEJ

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

    IndberetElevResponse

    1

    Status på

    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

    UI Expand
    titleEksempel på request til Indberet
    Kodeblok
    languagexml
    linenumberstrue
    <ser:IndberetElevRequest>
    	<ser:IndberetningsId>32ed0545-b6a0-4e91-bf7b-0fc0dff8ef73</ser:IndberetningsId>
    	<ser:IndberetElev>
    		<ser:Personoplysninger>
    			<ser:CPRNummer>1234561231</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:Uddannelsesversion>1</ser:Uddannelsesversion>
    			<ser:Speciale>3<CPRNummer>1234561231</ser:Speciale>CPRNummer>
    		</ser:Personoplysninger>
    		<ser:Elevskoleperioder>Institutionsoplysninger>
    				<ser:Hovedinstitution>961851</ser:Elevskoleperiode>Hovedinstitution>
    					<ser:Skoleperiode>1<Afdeling>961851</ser:Skoleperiode>Afdeling>
    					<ser:Startdato>2022-02-01<</ser:Startdato>Institutionsoplysninger>
    		<ser:Uddannelsesoplysninger>
    			<ser:Slutdato>2022-02-27<Uddannelseskode>3017</ser:Slutdato>Uddannelseskode>
    				<<ser:Uddannelsesversion>1</ser:Elevskoleperiode>Uddannelsesversion>
    			<<ser:Speciale>3</ser:Elevskoleperioder>Speciale>
    			<ser:Afgangsaarsager>Elevskoleperioder>
    				<ser:Afgangsaarsag>Elevskoleperiode>
    					<ser:Afgangsaarsagskode>112<Skoleperiode>1</ser:Afgangsaarsagskode>Skoleperiode>
    					<ser:GyldigFra>2022Startdato>2022-0302-31<01</ser:GyldigFra>Startdato>
    					<ser:GyldigTil>2022Slutdato>2022-0802-01<27</ser:GyldigTil>Slutdato>
    				</ser:Afgangsaarsag>Elevskoleperiode>
    			</ser:Afgangsaarsager>Elevskoleperioder>
    			<ser:Adgangsvej>TD</ser:Adgangsvej>
    			<ser:Klassebetegnelse>1A</ser:Klassebetegnelse>
    		</ser:Uddannelsesoplysninger>		
    	</ser:IndberetElev>
    </ser:IndberetElevRequest>
    UI Expand
    titleEksempel på response til Indberet
    Kodeblok
    languagexml
    linenumberstrue
    <IndberetElevResponse xmlns="http://service.elevdatabasen.stil.dk/">
    	<Status>COMPLETE</Status>
    </IndberetElevResponse>

    Anker
    Status
    Status
    Status

    Status-operationen er stadig under udarbejdelse, og vi forventer response-strukturen kommer til at matche response-strukturen for 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 relevantJ1GUID 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
    StatusEnumCREATED, RECEIVED, DUPLICATE, PROCESSING, COMPLETEJ1Status for behandling af indberetningen.
    Se afsnittet Fejlhåndtering for information om status FAILED.
    IndberetningsdetaljerList<Indberetningsdetalje>Ingen/Ikke relevantNUnboundedUdspecificeret liste med fejlkoder og beskrivelser

    Indberetningsdetalje

    FeltDatatypeBegrænsningerKrævetKardinalitetBeskrivelse
    FejlkodeStringIngen/Ikke relevantJ1Elevdatabasens valideringsfejlkode
    FejlbeskrivelseStringIngen/Ikke relevantJ1Beskrivelse af valideringsfejlen
    UI Expand
    titleEksempel request til Status
    Kodeblok
    languagexml
    linenumberstrue
    <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>
    UI Expand
    titleEksempel responses til Status
    Kodeblok
    languagexml
    titleIndberetning gået godt (COMPLETE)
    linenumberstrue
    <StatusResponse xmlns="http://service.elevdatabasen.stil.dk/">
        <Status>COMPLETE</Status>
    </StatusResponse>
    Kodeblok
    languagexml
    titleFejl i indberetning
    linenumberstrue
    <soap:Fault>
        <soap:Code>
            <soap:Value>soap:Receiver</soap:Value>
        </soap:Code>
        <soap:Reason>
            <soap:Text xml:lang="en">Indberetningen på indberetningsid 7814 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>
    		/ErrorCode>
            <Indberetningsdetalje>
    			    <ErrorMessage>Data  indberetningen  <Fejlkode>Udd-14</Fejlkode>
    			er ugyldig.</ErrorMessage>
            <Fejlbeskrivelse>Gyldig-fra dato 2022-03-01 for afgangsårsagen '27' skal ligge inden for afgangsårsagens gyldighedsperiode. Startdato: 1970-01-01, slutdato: 2022-01-31</Fejlbeskrivelse>
    		<Status>FAILED</Status>        
                  </Indberetningsdetalje><Indberetningsdetaljer>
    		        <Indberetningsdetalje>
    			        <Fejlkode>Inst-01</Fejlkode>
    			        <Fejlbeskrivelse>Institutionsnummeret 213213 findes ikke</Fejlbeskrivelse>
    		        </Indberetningsdetalje>
    	        </Indberetningsdetaljer>
            </InvalidIndberetning>
        </soap:Detail>
    </soap:Fault>

    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
    UI Expand
    titleEksempel request til Ping
    Kodeblok
    languagexml
    linenumberstrue
    <ser:Ping/>

    ...