Edurep:Jsonsearch

Uit Kennisnet Developers Documentatie
Versie door Muskee01 (overleg | bijdragen) op 4 okt 2021 om 07:09 (→‎Foutmeldingen: include errors)
Naar navigatie springen Naar zoeken springen

Edurep-symbol.png Edurep: Jsonsearch

Info.gif Vanwege de aankomende release zijn we bezig het voorbereiden van de wiki. Met name de informatie rondom schema.org en de jsonsearch is nog niet bruikbaar op productie.


Met het jsonsearch endpoint worden Edurep responses in JSON format geleverd.

Endpoints

  • productie: https://wszoeken.edurep.kennisnet.nl/jsonsearch
  • staging: https://staging.edurep.kennisnet.nl/jsonsearch

Request

argument # omschrijving
query 1 CQL zoekopdracht
page-size 0-1 aantal resultaten per pagina, max 100
page 0-1 ?
facet 0-* veld om drilldown op uit te voeren

voorbeeld

  • https://wszoeken.edurep.kennisnet.nl/jsonsearch?query=fiets&facet=schema:license

Response

veld # beschrijving
/response 1 response containter
/response/total 1 aantal records van totale respons
/response/items 0-1 lijst met response records
/response/facets 1 facets container
/response/facets/<facetid> 0-* voor elke opgevraagde valide facet een container met de facet waarden
/response/facets/<facetid>/count 1 aantal keer dat facet waarde voorkomt in resultatenset
/response/facets/<facetid>/link 1 directe link naar query op facet waarde
/response/facets/<facetid>/link 1 de individuele facet waarde
/response/next 0-1 container met informatie over volgende pagina
/response/next/link 1 directe link naar volgende pagina
/response/next/page 1 nummer van volgende pagina
/response/previous 0-1 container met informatie over vorige pagina
/response/previous/link 1 directe link naar vorige pagina
/response/previous/page 1 nummer van vorige pagina
/response/querytimes 1 querytimes container
/request 1 request container
/request/query 1 gestelde query
/request/page-size 0-1 gevraagd aantal resultaten per pagina
/request/page 0-1 gevraagde paginanummer
/request/facet 0-1 container met opgevraagde facets
/request/facet/index 1 individuele gevraagde facet waarde
/request/facet/max-terms 1 opgevraagde maximum aantal waarden voor facet waarde
/version 1 api versie

voorbeeld

{
  "response": {
    "total": 763,
    "items": [
      {}, {}
    ],
    "facets": {
      "example:facet1": [
        {
          "count": 212,
          "link": "/jsonsearch?facet=schema%3Alicense&facet=dcterms%3Apublisher%3A40&facet-filter=example%facet1%3Dvalue1&page-size=1&query=fiets",
          "value": "value1"
        }
      ],
      "example:facet2": [
        {
          "count": 213,
          "link": "/jsonsearch?facet=schema%3Alicense&facet=dcterms%3Apublisher%3A40&facet-filter=example%3Afacet2%3DvalueX&page-size=1&query=fiets",
          "value": "valueX"
        }
      ]
    },
    "querytimes": {
      "handlingTime": 0.328,
      "indexTime": 0.015,
      "queryTime": 0.021
    },
    "next": {
        "link": "/jsonsearch?facet=example%3Afacet1&facet=example%3Afacet2%3A40&page=4&page-size=1&query=fiets",
        "page": 4
    },
    "previous": {
        "link": "/jsonsearch?facet=example%3Afacet1&facet=example%3Afacet2%3A40&page=2&page-size=1&query=fiets",
        "page": 2
    }
  },
  "request": {
    "facet": [
        {
            "index": "example:facet1",
            "max-terms": 1
        },
        {
            "index": "example:facet2",
            "max-terms": 1
        }
    ],
    "page-size": 1,
    "page": 3,
    "query": "fiets"
  },
  "version": "0.1.beta"
}

Foutmeldingen

Een foutmelding uit de jsonsearch is te herkennen aan de "error" key in de response.

Voorbeeld

{
    "error": {
        "message": "Missing required argument: 'query'",
        "type": "MissingArgument"
    },
    "version": "0.1.beta"
}

Foutcodes

type omschrijving
MissingArgument een vereist argument ontbreekt in het verzoek


Veldenlijst

zoekveld x-term-drilldown sortKeys <, <=, >=, > exact
schema:name
schema:identifier V
zoekveld x-term-drilldown sortKeys <, <=, >=, > exact
schema:inLanguage V V
schema:description
schema:keywords
dcterms:coverage
lom:structure
lom:aggregationLevel V V
schema:version
schema:creativeWorkStatus
dcterms:creator V V
schema:dateCreated V V
dcterms:publisher V V
schema:datePublished V V
dcterms:contributor V V
schema:encodingFormat V V
schema:url V
schema:interactivityType
schema:learningResourceType.schema:termCode V V
schema:audience.schema:audienceType V V
schema:typicalAgeRange
lom:difficulty
schema:timeRequired.inSeconds V
schema:isAccessibleForFree V V
schema:license V V
schema:copyrightNotice
schema:isBasedOn
schema:isPartOf
schema:hasPart
dcterms:isReferencedBy
dcterms:isVersionOf
schema:encoding.schema:encodingFormat
dcterms:accessRights V V
schema:educationalAlignment.schema:name
schema:educationalAlignment.schema:targetName V V
schema:educationalLevel.schema:name
schema:educationalLevel.schema:termCode V V
schema:teaches.schema:termCode V V
schema:aggregateRating.schema:reviewCount V V
schema:aggregateRating.schema:ratingCount V V
schema:aggregateRating.edurep:tagCount V V
schema:aggregateRating.schema:ratingValue V V
schema:aggregateRating.edurep:bayesianRanking V V

See Also