Edurep:Zoekopdracht/Query: verschil tussen versies

Uit Kennisnet Developers Documentatie
Naar navigatie springen Naar zoeken springen
(add examples)
(add jsonsearch example + see also)
Regel 12: Regel 12:
 
{{SmbQuery|query=smo.hReview.info exact "http://wikiwijs.samendelen.nl/get/smpid:5585/DS1"}}
 
{{SmbQuery|query=smo.hReview.info exact "http://wikiwijs.samendelen.nl/get/smpid:5585/DS1"}}
 
{{CatalogusServiceQuery|query=Title=techniek AND Price<500}}
 
{{CatalogusServiceQuery|query=Title=techniek AND Price<500}}
  +
{{EdurepJsonsearchQuery|query=fiets AND schema:name="werkblad"}}
   
 
'''Beperkingen:'''
 
'''Beperkingen:'''
Regel 67: Regel 68:
 
>>> print parseString("aap").prettyPrint()
 
>>> print parseString("aap").prettyPrint()
 
</syntaxhighlight>
 
</syntaxhighlight>
  +
== See Also ==
  +
{{:Edurep:SeeAlso|use=[[Edurep:LOM_SearchRetrieve]] - [[Edurep:SMO_SearchRetrieve]] - [[CS:Entry_SearchRetrieve]] - [[Edurep:Jsonsearch]]}}
 
</noinclude>
 
</noinclude>

Versie van 21 okt 2021 04:46

In Edurep kan er worden gezocht op AND/OR/NOT combinaties van trefwoorden, binnen de totale set of binnen specifieke velden.

  • fiets AND pomp
  • kasteel AND (ridder OR ridders)
  • vis AND walvis NOT potvis
  • breuken AND vak=wiskunde
  • breuken AND (titel=werkblad OR titel=taak)

Afhankelijk van de gebruikte zoekinterface zijn er verschillende zoekvelden beschikbaar, bekijk de veldenlijst voor een overzicht.

Voorbeelden:

/edurep/sruns: query=fiets AND pomp
/smo/sruns: query=smo.hReview.info exact "http://wikiwijs.samendelen.nl/get/smpid:5585/DS1"
Catalogus Service: query=Title=techniek AND Price<500
/jsonsearch: query=fiets AND schema:name="werkblad"

Beperkingen:

  • De waarde van het query argument mag maximaal 4096 tekens zijn, na urldecoding.
  • De zoekwoorden kunnen alleen letters en cijfers bevatten. Vanwege het indexatieproces zijn speciale karakters als # en $ zijn niet doorzoekbaar.
  • Wildcard zoeken is beperkt mogelijk. Zoeken op fiets* is wel mogelijk maar *fiets niet. De fiets* is mogelijk met minimaal 2 karakters. Het zoeken met het wildcard teken in een string (infix) is ook mogelijk, ook met minimaal 2 voorloopkarakters. Er mag maximaal 1 * voorkomen per trefwoord.

Encoding:

In Edurep is niet letterlijk te zoeken op speciale karakters als ü of ë. Deze karakters moeten eerst geëncodeerd worden naar UTF-8. Op het internet zijn diverse overzichtslijsten en conversietools te vinden.

De waarden van SRU argumenten moeten URL-encoded worden opgegeven omdat een verzoek anders verkeerd kan worden geïnterpreteerd.

te zoeken url http://www.test.urls.nl/~user/index.html&argument=alsotest
query argument smo.hReview.info="http://www.test.urls.nl/~user/index.html&argument=alsotest"
url-encoded representatie smo.hReview.info%3D%22http%3A%2F%2Fwww.test.urls.nl%2F%7Euser%2Findex.html%26argument%3Dalsotest%22

Compliance

De Edurep CQL is niet volledig compliant met de officiele CQL. In de Edurep CQL variant hebben de ondersteunde booleans niet allen dezelfde voorkeur. Hieronder staat een CQL query en de (vereenvoudigde) wijze waarop deze wordt geïnterpreteerd door de gebruikte cqlparser.

"vertelplaten NOT lom.rights.cost=yes NOT lom.technical.format=non-digital NOT about.repository.id exact FENC"
CQL_QUERY
(
  (
    (
      (
        (
          'vertelplaten'
        ),
        BOOLEAN('not'),
		
        'lom.rights.cost=yes'
      ),
      BOOLEAN('not'),

      'lom.technical.format=non-digital'
    ),
    BOOLEAN('not'),

    'about.repository exact FENC'
  )
)

Installeer en uitvoeren in Python:

 >>> from cqlparser import parseString
 >>> print parseString("aap").prettyPrint()

See Also

Gebruikt in Edurep:LOM_SearchRetrieve - Edurep:SMO_SearchRetrieve - CS:Entry_SearchRetrieve - Edurep:Jsonsearch
Vergelijkbaar met -
Gerelateerd aan -