SPARQL-grensesnittet

Her er en samling eksempler på spørringer mot SPARQL-endepunktet http://data.udir.no/kl06/sparql.

Vi har valgt å legge til følgende prefixer, selv om ikke alle nødvendigvis blir brukt i hver spørring:

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/>

Hent alle læreplaner

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT REDUCED ?uri ?tittel ?kode WHERE { ?uri rdf:type ontologi:laereplan ; ontologi:tittel ?tittel ; ontologi:kode ?kode ; ontologi:status data:status_publisert FILTER (lang(?tittel) = "") } ORDER BY (?kode)

Her er SELECT REDUCED brukt i stedet for SELECT DISTINCT. Denne kan brukes hvis man opplever at DISTINCT blir for "dyrt" i spørringen. Den er noe tyngre siden den innebærer at hele resultatsettet må lastes inn før duplikatene fjernes. Se f.eks. http://stackoverflow.com/questions/2990343/sparqldistinct-vs-reduced.

Vær også obs på språkfilteret nederst i spørringen. Her har vi valgt å skrive FILTER (lang(?tittel) = "") i stedet for f.eks. FILTER (lang(?tittel) = "nob"). Årsaken er at læreplanene stort sett foreligger på enten bokmål eller nynorsk i tillegg til eventuelle oversettelser til andre språk. I stedet for å spørre eksplisitt etter en av de to målformene (bokmål/nynorsk), er det bedre å bruke hovedspråket ("default-språket"). Hovedspråket er alltid med, og det er den språkvarianten som er uten språkangivelse, og kan dermed filtreres med tom streng i FILTER (lang(?tittel) = ""). Dette kan illusteres ved å kjøre neste spørring:

List alle læreplaner med egne kolonner for default-språk, bokmål og nynorsk

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT REDUCED ?uri ?default ?bokmaal ?nynorsk ?kode WHERE { ?uri rdf:type ontologi:laereplan ; ontologi:tittel ?default ; ontologi:kode ?kode ; ontologi:status data:status_publisert FILTER (lang(?default) = "") . OPTIONAL { ?uri ontologi:tittel ?nynorsk FILTER (lang(?nynorsk) = "nno") . } OPTIONAL { ?uri ontologi:tittel ?bokmaal FILTER (lang(?bokmaal) = "nob") . } } ORDER BY str(?kode)

Her vil du se at det i noen få tilfeller er snakk om både bokmål og nynorsk (gjelder altså noen få læreplaner som er oversatt fra nynorsk til bokmål), men hovedregelen er at de kun foreligger i den ene målformen. Derfor er det tryggest å spørre etter hovedspråket med FILTER (lang(?tittel) = "")

Vær også oppmerksom på at typen laereplan har egenskapen http://psi.udir.no/ontologi/kl06/har-fastsettelsesinformasjon-fastsatt-spraak som angir det aktuelle språket (f.eks. http://psi.udir.no/kl06/nno)

Videre vil egenskapen (fortsatt for laereplan) http://psi.udir.no/ontologi/kl06/har-tilgjengelige-spraak, liste de språkene som er tilgjengelig for den aktuelle læreplanen (etter samme form som over).

Finn læreplan fra fagområde

I dette eksempelet tar vi utgangspunkt i http://data.udir.no/kl06/FOMR404. Her må vi gå via kompetansemålsett (KMS):

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT ?uri ?tittel ?kode WHERE { { SELECT DISTINCT ?lp WHERE { ?psi ontologi:url-data data:FOMR404 ; ontologi-rev:har-fagomraade-referanser ?fomr . ?fomr ontologi:status data:status_publisert ; ontologi-rev:har-etter-fag ?kms . ?kms ontologi-rev:har-kompetansemaalsett ?lp } } ?lp ontologi:status data:status_publisert ; ontologi:url-data ?uri ; ontologi:tittel ?tittel ; ontologi:kode ?kode FILTER (lang(?tittel) = "") } ORDER BY str(?tittel)

Hvis du ønsker å få ut en liste over alle fagområder, kan du gjøre det ved å erstatte ontologi:laereplan med ontologi:fagomraade i spørringen "Hent alle læreplaner" øverst på denne siden.

Kompetansemålsett fra læreplan

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT ?UrlData ?uri ?navn WHERE { ?psi ontologi:url-data <http://data.udir.no/kl06/NOR1-05> ; ontologi:har-kompetansemaalsett ?kms . ?kms ontologi:url-data ?UrlData ; ontologi:uri ?uri ; ontologi:tittel ?navn FILTER (lang(?navn) = "") . } ORDER BY ?UrlData

Opplæringsfag fra kompetansemålsett

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT ?opplaeringsfag ?navn WHERE { ?node ontologi:url-data data:KMS943 ; ontologi:har-etter-fag ?psiOpplFag . ?psiOpplFag ontologi:status data:status_publisert ; ontologi:url-data ?opplaeringsfag ; ontologi:tittel ?navn FILTER (lang(?navn) = '') . } ORDER BY ?opplaeringsfag

Kompetansemålene i et kompetansemålsett

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT ?kompetansemaal ?name ?kode WHERE { ?psi ontologi:url-data data:KMS943 ; ontologi:har-kompetansemaal ?harKmaal . ?harKmaal ontologi:status data:status_publisert ; ontologi:url-data ?kompetansemaal ; ontologi:kode ?kode ; ontologi:tittel ?name FILTER (lang(?name) = '') . } ORDER BY STR(?name)

Hovedområder fra læreplan

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT ?hovedomraade ?navn WHERE { ?psi ontologi:url-data data:NOR1-05 ; ontologi:har-hovedomraade ?ho . ?ho ontologi:url-data ?hovedomraade ; ontologi:tittel ?navn FILTER (lang(?navn) = '') . }

Hente alle trinn

PREFIX ontologi: <http://psi.udir.no/ontologi/kl06/> PREFIX ontologi-rev: <http://psi.udir.no/ontologi/kl06/reversert/> PREFIX data: <http://data.udir.no/kl06/> SELECT ?trinn ?navn WHERE { ?trinn rdf:type ontologi:aarstrinn ; ontologi:kode ?kode ; ontologi:tittel ?navn FILTER (lang(?navn) = '') } ORDER BY str(?kode)

Flere eksempler kan du finne på http://grepwiki.udir.no/index.php?title=SPARQL-spørringer.

results matching ""

    No results matching ""