Gå til hovedinnhold

Grep

Grep er den nasjonale databasen for fag, læreplaner og opplæringstilbud i grunnopplæringen. Alle fastsatte læreplaner i Kunnskapsløftet legges inn i Grep. I tillegg finnes kodeverk og informasjon om fag i grunnskole og videregående opplæring (vgo), inkludert vurderingsordninger, samt fag- og vitnemålsmerknader til bruk i dokumentasjon av opplæringen. Grep er ikke et eget nettsted, men en database som nettjenester og andre kan hente data fra og presentere videre for sluttbrukere.

Grep-koder

Grep er sentral for å kunne koble læremidler ol. til læreplanverket vha metadata. Grep-databasen tilbyr unike koder for det meste som er relevant for å si noe om et læremiddel i læreplankontekst, og ved å bruke disse kodene kan vi være sikre på at læremidler fra ulike leverandører er koplet til samme læreplan, kompetansemål ol.

Grep er en kompleks struktur med lenket data. Læreplaner er lenket til komptansemålsett, som igjen er lenket til trinn osv. Det gjør at man i mange sammenhenger kan utlede ulike koder basert på én enkelt kode.

Det er en av grunnene til at vi vektlegger fagkoder, som er en slik sentralt lenket kode vi kan bruke. Et alternativ til fagkoder er kompetansemålsett, som er settet med kompetansemål gruppert etter nivå eller trinn. Fra denne verdien kan vi hente fag, trinn og den spesifikke versjonen av læreplanen ressursen er skapt for.

Grep og NS4180

I NS4180 kan vi bruke Grep-koder i metadataene. Det gjør vi på to måter: EducationalAlignment og EducationalLevel:

EducationalAlignment

EducationalAlignment bruker objekter av typen AlignmentObject (se Støtteskjema).

Merk at educationalFramework skal være 'Kunnskapsløftet', uavhengig om det er LK-20 eller ikke. I tillegg at targetUrl er en såkalt URI, og ikke en URL som lenker til dataene knyttet til koden.

Eksempel med merking mot kompetansemål med grep-kode K15186:

{...
"educationalAlignment": [
{
"@type": "AlignmentObject",
"alignmentType": "teaches",
"educationalFramework": "https://data.udir.no/kl06",
"targetDescription": "utvikle, bruke og diskutere metodar for hovudrekning, overslagsrekning og skriftleg rekning og bruke digitale verktøy i berekningar",
"targetName": "K15186",
"targetUrl": "http://psi.udir.no/kl06/K15186"
}
],
}

EducationalLevel

EducationalLevel brukes for å angi trinn for målgruppen og bruker objekter av typen DefinedTerm. Også her brukes URI-er for identifisere Grep-kode og begrepssett.

{...
"educationalLevel": [
{
"@type": "DefinedTerm",
"identifier": "http://psi.udir.no/kl06/vg2",
"name": "Videregående trinn 2",
"termCode": "vg2",
"inDefinedTermSet": "http://psi.udir.no/ontologi/kl06/aarstrinn"
}
],
}

Hvordan finne rett URI til AlignmentObject

Å finne rett Grep-kode for å bruke i AlignmentObject er ikke alltid lett. Derfor ønsker vi å hjelpe litt på vei for å finne de riktige Grep-kodene å bruke.

Først og fremst: Når vi snakker om at vi ønsker en Grep-kode, så mener vi URI. Grep innebærer mange typer koder, men vår det skal refereres til Grep ønsker vi at det er URI-typen av kodene som brukes.

Vi ønsker hovedsakelig å få URI-er for fagkoder eller kompetansemålsett. Uten denne URI-en vil ikke læremiddelet være synlig i Læremiddelkatalogen. Det er også mulig å referere til andre deler av Grep, med for eksempel URI til læreplan, kompetansemål, tverrfaglig tema, osv.

For å finne riktige URI-er som skal brukes, så kan dere ta utgangspunkt i det scenarioet som best passer deres situasjon.

OBS! Vi har ikke laget et scenario for å finne kodene til kompetansemålsett.
Scenarioene baserer seg kun på fagkoder.
Koder for kompetansemålsett kan finnes ved å gjøre spørringer til Grep databasen basert på spesifikke kompetansemål.

Scenario 1: Jeg vet hvilken læreplan læremiddelet vårt dekker, men vet ikke fagkoder

Dersom du vet hvilken læreplan læremiddelet deres dekker, så kan dere enkelt finne alle fagkoder som tilhører den læreplanen på Udir sine nettsider om Læreplanverket.

  1. Søk etter den læreplanen du er ute etter inne på Læreplanverket.
  2. Finn den rette læreplanen og følg lenken til info-siden for læreplanen.
  3. På den info-siden vil dere finne en lenke til fagkoder. Trykk på den lenken.
  4. Finn fagkoden(e) som er relevant for ditt læremiddel.
    • OBS! Fagkodene som vises i listen når man kommer inn på den siden er bare fagkoder for fagkode med karaktersetting. Huk av "Vis også fagkoder uten karaktersetting" sjekkboksen øverst på siden for å få opp alle fagkoder som tilhører Læreplanen.
  5. Legg hver relevant fagkode som et eget objekt EducationalAlignment i API-et.
    • Fagkoden settes bak http://psi.udir.no/kl06/... i targetUrlfeltet

Eksempel hvor det er lagt inn fagkoden for norsk 1. årstrinn:

    {...
"educationalAlignment": [
{
"@type": "AlignmentObject",
"educationalFramework": "https://data.udir.no/kl06",
"targetDescription": "Norsk 1. årstrinn",
"targetName": "NOR0201",
"targetUrl": "http://psi.udir.no/kl06/NOR0201"
}
],
}

Dersom det blir en veldig lang liste med fagkoder (rundt mer enn 20 fagkoder), så kan dere heller følge scenario 3.

Scenario 2: Jeg vet generelt fag og årstrinn læremiddelet vårt dekker, men vet ikke læreplan eller fagkoder

Dersom du vet det generelle faget og hvilket trinn læremiddelet deres dekker, så kan du finne den relevante læreplanen og fagkoder ved å gjøre som i scenario 1.

  1. Søk etter faget du er ute etter inne på Læreplanverket.
    • For eksempel søk etter "norsk" for å finne fagkoder tilknyttet norsk-faget.
  2. Finn den læreplanen som best passer faget og følg lenken til info-siden for læreplanen.
    • OBS! Det kan komme ulike versjoner av læreplaner opp i søket. Den nyeste versjonen av læreplanene vil ha en tag som står "Gjeldende" på.
  3. På den info-siden vil dere finne en lenke til "Fagkoder". Trykk på den lenken.
  4. Finn fagkoden(e) basert på trinn som er relevant for ditt læremiddel.
    • OBS! Fagkodene som vises i listen når man kommer inn på den siden er bare fagkoder for fagkode med karaktersetting. Huk av "Vis også fagkoder uten karaktersetting"-sjekkboksen øverst på siden for å få opp alle fagkoder som tilhører Læreplanen.
  5. Legg hver relevant fagkode som et eget object i EducationalAlignment i API-et.
    • Fagkoden settes bak http://psi.udir.no/kl06/... i targetUrlfeltet

Eksempel hvor det er lagt inn fagkoden for norsk 2. årstrinn:

    {...
"educationalAlignment": [
{
"@type": "AlignmentObject",
"educationalFramework": "https://data.udir.no/kl06",
"targetDescription": "Norsk 2. årstrinn",
"targetName": "NOR0202",
"targetUrl": "http://psi.udir.no/kl06/NOR0202"
}
],
}

Dersom det blir en veldig lang liste med fagkoder (rundt mer enn 20 fagkoder), så kan dere heller følge scenario 3.

Scenario 3: Læremiddelet vårt dekker alle fag og alle trinn - Skal vi skrive inn alle fagkoder?

Dersom læremiddelet deres dekker veldig mange fag og over flere trinn, så anbefaler vi ikke å bruke EducationalAlignment.
Da anbefaler vi heller å bruke EducationalLevel for å definere hvilke årstrinn læremiddelet er egnet for.

For å finne rett identifier, navn og termCode som skal brukes i EducationalLevel så kan du følge denne lenken til et JSON endepunkt i Grep. Der ligger alle trinn definert i Grep tilgjengelig i JSON format.

Her er et eksempel på hvordan du kan bruke JSON dataen fra Grep og overføre det til educationalLevel:
Grep-data

[
{
"id": "http://psi.udir.no/laereplan/aarstrinn/aarstrinn1",
"kode": "aarstrinn1",
"uri": "http://psi.udir.no/kl06/aarstrinn1",
"url-data": "https://data.udir.no/kl06/v201906/aarstrinn/aarstrinn1",
"tittel": [
{
"spraak": "default",
"verdi": "Første årstrinn"
},
{
"spraak": "nno",
"verdi": "Første årstrinn"
},
{
"spraak": "nob",
"verdi": "Første årstrinn"
}
],
"grep-type": "http://psi.udir.no/ontologi/kl06/aarstrinn",
"sist-endret": "2024-06-24T08:27:16.6069592",
"rekkefoelge": 1
},
...
]

NS4180 data

{...
"educationalLevel": [
{
"@type": "DefinedTerm",
"identifier": "http://psi.udir.no/kl06/aarstrinn1", // uri-feltet i Grep-dataen
"name": "Første årstrinn", // tittel-verdi på språk nob i Grep-dataen (kan velge språk selv)
"termCode": "aarstrinn1", // kode-feltet i Grep-dataen
"inDefinedTermSet": "http://psi.udir.no/ontologi/kl06/aarstrinn"
}
],
}

Legge inn årstrinn kort oppsummert:

  1. Finn uri, tittel og kode fra Grep-dataene
  2. Sett inn uri som identifier, tittel som name og kode som termCode
  3. Gjør dette for hvert trinn dere ønsker å tagge mot
    • Hvert trinn blir et eget objekt i educationalLevel

Fant du det du lette etter?

Vi jobber med å forbedre dokumentasjonen vår. Gi oss gjerne en tilbakemelding dersom det er noe som er uklart eller mangler.