Skip to end of metadata
Go to start of metadata


 

Yleinen kuvaus

Yhtenäisten koodien avulla eri toimijoiden kuten esimerkiksi Opetushallituksen ja Tilastokeskuksen tiedot voidaan tarvittaessa yhdistää. Yhtenäisten koodien avulla eri järjestelmien välinen tiedonsiirto voidaan mahdollistaa (esim. koulutuksen järjestäjien omat järjestelmät, opintohallintojärjestelmät).

Oppijan palvelukokonaisuuden toteuttama koodistopalvelu on keskitetty tallennus- ja hallintapaikka koodistoille, jonne jatkossa tuodaan myös ulkoisten toimijoiden ylläpitämät koodistot. Koodistoa ja luokituksia käytetään pohjatietoina ylläpidettäessä oppijan verkkopalveluiden muita tietoja (organisaatiotiedot, tarjontatiedot jne.). Koodistoa ja luokituksia käytetään pohjatietoina myös tiedon hakutilanteissa ja raportti- ja tilastotietojen luokittelutietoina. Mikä tahansa tieto, joka voidaan esittää valikossa valittavana vaihtoehtona, voi muodostaa koodiston.

Tilastokeskus hallinnoi ja ylläpitää kansallisia opetushallinnon käytössä olevia koodistoja (esim. koulutusluokitus, oppilaitostyyppi, omistajatyyppi, oppilaitoksen tunnuskoodi, tutkinto), kansainvälisiä ja kansallisia koodistoja (esim. maakoodit, kielikoodit, sekä alueelliset koodit). Viralliset maa- ja kielikoodit perustuvat ISO-standardiin, joten ne tulee hankkia SFS:ltä. Itella hallinnoi postinumero- ja postitoimipaikkakoodistoa.

Opetushallitus hallinnoi ja ylläpitää tutkintotietoja, koulutusohjelmia ja tutkintonimikkeitä koodeineen OKM:n antamien asetusten mukaan.  Tutkintotietoja ylläpidetään koulutusluokitusten mukaisesti. Keskitettyjen palveluiden tarjontatietojen sisältötuotanto tuottaa myös tietoja osaksi koodistoa.  Opetustoimen koodistoja voivat olla mm. hakeutujan palveluissa oppijalle luotava yksilöivä opiskelijatunnus, tutkintoluokitus, tutkintorakenteen osat, koulutuksen järjestäjät, koulutuksen tuotantoyksiköt/oppilaitokset.

OPH ylläpitää oppijan verkkopalveluiden koodistoa manuaalisesti siltä osin, kun koodistoa ei ole saatavilla muilta toimijoilta automaattisesti.

Koodistoa voi selata ja ylläpitää. Koodiston yksittäisiä koodeja voi selata ja ylläpitää. Koodistopalvelulla voi hallinnoida hierarkisia koodistoja sekä linkittää toisiinsa semanttisesti samaa tarkoittavia koodeja (rinnasteisuus).

Koodiston voi ladata paikalliseen käyttöön tai sen voi kopioida rajapinnan avulla. Koodisto voidaan tuoda ulkoisesta lähteestä selaimella tai rajapinnan avulla. Rajapinnat toteutetaan JHS-suositusten mukaisina.

 


 

Arkkitehtuuri

Koodistopalvelu koostuu kahdesta kerroksesta. Käyttöliittymästä ja palvelukerroksesta. Kaikki sekä ulkopuoliset että sisäiset rajapinnat ovat palvelukerroksessa. Palvelukerros tarjoaa sekä SOAP- että REST-rajapintoja (JSON)

.

Sisäiset integraatiot

Jäjestelmä hakee organisaatiotietoja organisaatiopalvelusta.

Ulkoiset integraatiot

Järjestelmällä ei ole integraatioita ulkoisiin järjestelmiin.

 


 

Teknologiat

Koodistopalvelu käyttää Postgres-tietokantaa tiedon tallennukseen ja sitä ajetaan Apache Tomcat -sovelluspalvelimella.

Koodistopalvelussa käytettävät kirjastot ja sovelluskehykset:

NimiKuvausKäyttö palvelussaLinkki
Apache CXFSovelluskehys rajapintapalveluiden luomiseen. Sillä voidaan luoda esim. JAX-WS ja JAX-RS tyyppisiä palveluita. Se tukee myös useita eri protokollia esim. SOAP, XML/HTTP, RESTful HTTP ja CORBA. http://cxf.apache.org/
JacksonKirjasto JSON-muotoisen informaation käsittelyyn. https://github.com/FasterXML/jackson/
HibernateORM (object-relational mapping) -kirjasto. Se tukee JPA 2.0:aa. http://www.hibernate.org/
SpringYleinen sovelluskehys Java-ohjelmien tekemiseen. http://www.springsource.org/
Castor XMLXML-Object- mapping kirjasto http://castor.codehaus.org/
JerseyKirjasto RESTful Web Services palveluiden tekemiseen (JAX-RS). http://jersey.java.net/
Swagger

REST APIn dokumentaatio

Dokumentaatio saatavilla: https://virkailija.opintopolku.fi/koodisto-service/swagger/index.html

Koodisto-servicehttps://helloreverb.com/developers/swagger
JPASpesifikaatio relationaalisen data hallintaan Java-sovelluksissa. http://www.oracle.com/technetwork/java/javaee/tech/persistence-jsp-140049.html
AngularJSAngularJS on Googlen ylläpitämä avoimen lähdekoodin JavaScript-viitekehys. http://angularjs.org/

 


 

Rajapinnat

SOAP

Koodistopalvelun SOAP-rajapinnat DRAFT

REST

Koodiston REST-rajapinnat

REST-rajapinnan Swagger-kuvaus

 


 

Tietomalli

 

koodisto_taulukuvaus.png

Tietotyypit on kuvattu ylläolevassa kuvassa.

Koodistot

 

Taulu: koodistometadata
SarakeTietotyyppiKuvausKäytössä
id-Taulun avainKyllä
version-Sisäinen versionumero (hibernate versio)Kyllä
kasite-Koodistoa vastaavan käsitteen URI-tunnus (esim. viittaus jhsmeta.fi- tai yso.fi -palvelun käsiteartikkeliin)Ei
kayttoohje-Koodiston käyttöä tai koodien muodostamista kuvaava ohjeEi
kieli-Metadatan kieliKyllä
kohdealue-Julkisen hallinnon toiminnallisen kokonaisuuden osa, johon koodisto kuuluuEi
kohdealueenalueosa-Julkisen hallinnon toiminnallisen kokonaisuuden osan tarkennusEi
kuvaus-Koodiston sanallinen kuvailuKyllä
nimi-Koodistoa kuvaava lyhyt, selväkielinen nimiKyllä
toimintaymparisto-Konteksti, jossa koodistoa käytetään (kohdealuetta tai sen osaa tarkentava)Ei
koodistoversio_id-Sen koodistoversion id johon koodistometadata kuuluuKyllä
huomioitavakoodisto-Linkki toiseen koodistoon, jonka semanttinen merkitys on tämän koodiston merkityksen kannalta huomionarvoinenEi
koodistonlahde-Koodiston alkuperän kuvausEi
sitovuustaso-Koodiston käytön sitovuusEi
tarkentaakoodistoa-Linkki koodistoon jota tämä koodisto tarkentaaEi
Taulu: koodistoversio
SarakeTietotyyppiKuvausKäytössä
id-Taulun avainKyllä
version-Sisäinen versionumero (hibernate versio)Kyllä
paivityspvm-Timestamp milloin koodistoversiota on viimeksi päivitetty.Kyllä
tila-koodistoversion käsittelyn vaihe (HYVAKSYTTY, LUONNOS, PASSIIVINEN)Kyllä
versio-Koodistoon kuuluvien koodistoversioiden versio- eli järjertysnumeroKyllä
voimassaoloalkupvm-Koodistoversion voimassaolon alkupäivämäärä (YYYY-MM-DD). Jos koodistoversio on hyväksytty niin alkupäivämäärä on sama kuin edellisen version voimassaolon loppupäivämäärä.Kyllä
voimassaololoppupvm-Koodistoversion voimassaolon loppupäivämäärä (YYYY-MM-DD)Kyllä
koodisto_id-Sen oodiston id mihin kyseinen koodistoversio kuulu.Kyllä
huomioitavakoodisto-Linkki toiseen koodistoon, jonka semanttinen merkitys on tämän koodiston merkityksen kannalta huomionarvoinenEi
koodistonlahde-Koodiston alkuperän kuvausEi
tarkentaakoodistoa-Linkki koodistoon jota tämä koodisto tarkentaaEI
toimintaymparisto-Konteksti, jossa koodistoa käytetään (kohdealuetta tai sen osaa tarkentava)Ei
Taulu: koodisto
SarakeTietotyyppiKuvausKäytössä
id-Taulun avainKyllä
version-Sisäinen versionumero (hibernate versio)Kyllä
koodistouri-Koodiston URI-tunnus (yksilöivä)Kyllä
lukittu-Kytkin, joka kertoo, voiko koodistoa muokata muu kuin pääkäyttäjäEi
omistaja-

Koodiston omistajan selkokielinen nimi

Kyllä
organisaatioid-Koodiston omistajan organisaation id (oid)Kyllä
sitovuustaso-Koodiston käytön sitovuusEi
Taulu: koodistonsuhde
SarakeTietotyyppiKuvausKäytössä
id-Taulun avainKyllä
version -Sisäinen versionumero (hibernate versio)Kyllä
alakoodistoversio_id -

Child koodistoversion id

Kyllä
suhteentyyppi -Koodistoversioiden välisen suuhteen tyyppi (SISALTYY, RINNASTEINEN)Kyllä
ylakoodistoversio_id-Parent koodistoversion idKyllä
versio-Koodistonsuhteen versionumeroKyllä

Koodit

 

Taulu: koodi
SarakeTietotyyppiKuvausKäytössä
id-Taulun avainKyllä
version-Sisäinen versionumero (hibernate versio)Kyllä
koodiuri-Koodin URI-tunnus (yksilöivä)Kyllä
koodisto_id-Sen koodiston id johon koodi kuuluuKyllä
Taulu: koodiversio
SarakeTietotyyppiKuvausKäytössä
id -Taulun avainKyllä
version -Sisäinen versionumero (hibernate versio)Kyllä
koodiarvo -Tunnus, joka yksilöi koodin koodiston sisälläKyllä
paivityspvm -Timestamp milloin koodiversiota on viimeksi päivitetty.Kyllä
tila-Koodin käsittelyn vaihe (HYVAKSYTTY, LUONNOS, PASSIIVINEN)Kyllä
versio-Koodiin kuuluvien koodiversioiden versio- eli järjestysnumeroKyllä
voimassaalkupvm-Koodistoversion voimassaolon alkupäivämäärä (YYYY-MM-DD). Ainoastaan informaatiivinen tieto. Ei vaikuta järjestelmän toimintaan.Kyllä
voimassaloppupvm-Koodistoversion voimassaolon loppupäivämäärä (YYYY-MM-DD). Ainoastaan informaatiivinen tieto. Ei vaikuta järjestelmän toimintaan.Kyllä
koodi_id-Sen koodin id, johon koodiversio kuuluu.Kyllä
Taulu: koodimetadata
SarakeTietotyyppiKuvausKäytössä
 id-Taulun avainKyllä
version -Sisäinen versionumero (hibernate versio)Kyllä
eisisallamerkitysta -Luokkaan kuulumattomien objektien ominaispiirteet tai nimet sekä linkki oikeaan luokkaan nimi (erityisesti luokittelevissa koodistoissa)Ei
huomioitavakoodi -

Linkki toiseen koodiin, jonka semanttinen merkitys on tämän koodin merkityksen kannalta huomionarvoinen, koodien suhdetta selittävä teksti

Ei
kasite-Koodistoa vastaavan käsitteen URI-tunnus (esim. viittaus jhsmeta.fi tai yso.fi palvelun käsiteartikkeliin)Ei
kayttoohje-Koodin käyttöä kuvaava ohjeEi
kieli-Metadatan kieliKyllä
kuvaus-Koodin sanallinen kuvailuKyllä
lyhytnimi-Koodia kuvaava lyhyt selväkielinen nimi tai kirjainyhdistelmäKyllä
nimi-Koodia kuvaava selväkielinen nimiKyllä
sisaltaakoodiston-Koodisto, joka sijaitsee hierarkkisessa koodistossa tämän koodin allaEi
sisaltaamerkityksen-Luokkaan kuuluvien objektien ominaispiirre tai nimi (erityisesti luokittelevissa koodistoissa)Ei
koodiversio_id-Sen koodiversion id, johon tämä koodimetadata kuuluuKyllä
Taulu: koodinsuhde
SarakeTietotyyppiKuvausKäytössä
 id-Taulun avainKyllä
version -Sisäinen versionumero (hibernate versio)Kyllä
alakoodinversio_id -

Child koodiversion id

Kyllä
suhteentyyppi -Koodiversioiden välisen suuhteen tyyppi (SISALTYY, RINNASTEINEN)Kyllä
ylakoodinversio_id-Parent koodiversion idKyllä
versio-koodinsuhteen versionumeroKyllä

 

Koodistoryhmät

 

Taulu: koodistoryhma
SarakeTietotyyppiKuvausKäytössä
id -Taulun avainKyllä
version -Sisäinen versionumero (hibernate versio)Kyllä
koodistoryhmauri -Koodistoryhmän URI-tunnus (yksilöivä)Kyllä
Taulu: koodistoryhmametadata
SarakeTietotyyppiKuvausKäytössä
 id-Taulun avainKyllä
version -Sisäinen versionumero (hibernate versio)Kyllä
kieli -Metadatan kieliKyllä
nimi -Koodistoryhmää kuvaava lyhyt, selväkielinen nimiKyllä
koodistoryhma_id-Sen koodistoryhmän id johon metadata kuuluuKyllä

 


 

  • No labels