Standaarden:SRU/Edurep CQL: verschil tussen versies
Naar navigatie springen
Naar zoeken springen
k (add cat) |
(do redirect) Label: Nieuwe doorverwijzing |
||
(3 tussenliggende versies door dezelfde gebruiker niet weergegeven) | |||
Regel 1: | Regel 1: | ||
+ | #DOORVERWIJZING [[Edurep:Zoekopdracht/Query]] |
||
− | Op Edurep draait niet de [[Standaarden:SRU|standaard CQL]] versie, maar een [https://github.com/seecr/cqlparser aangepaste]. Hiermee kan Edurep zoekvragen afhandelen met de volgende eigenschappen: |
||
− | * De waarde van het query argument mag maximaal 4096 tekens zijn, na urldecoding. |
||
− | * Er kan binnen specifieke metadata [[Edurep:Veldenlijst|velden]] gezocht worden, met "=" of met "exact" matching. |
||
− | * Er kunnen meerdere termen voorkomen, waarin booleaanse operatoren als AND, OR en NOT gebruikt kunnen worden. |
||
− | * 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. |
||
− | * Alle records kunnen opgevraagd worden met de ''edurep'' zoekterm. |
||
− | |||
− | {{EdurepQuery|query=fiets AND pomp}} |
||
− | {{SmbQuery|query=saai}} |
||
− | {{EdurepQuery|query=lom.general.title=fiets AND lom.general.description=zadel}} |
||
− | {{EdurepQuery|query=lom.technical.format exact "application/pdf"}} |
||
− | {{SmbQuery|query=smo.hReview.info exact "http://wikiwijs.samendelen.nl/get/smpid:5585/DS1"}} |
||
− | |||
− | === encoding === |
||
− | In Edurep is niet letterlijk te zoeken op speciale karakters als ü of ë. Deze karakters moeten eerst geëncodeerd worden naar UTF-8. Zoeken op "poëzie" resulteert dan in de volgende query: "poëzie". Op het internet zijn diverse overzichtslijsten en conversietools te vinden. |
||
− | |||
− | De waarden van SRU argumenten moeten [http://en.wikipedia.org/wiki/Percent-encoding URL-encoded] worden opgegeven omdat een verzoek anders verkeerd kan worden geïnterpreteerd. |
||
− | |||
− | {| class="wikitable" |
||
− | |- |
||
− | | '''te zoeken url''' |
||
− | | <nowiki>http://www.test.urls.nl/~user/index.html&argument=alsotest</nowiki> |
||
− | |- |
||
− | | '''query argument''' |
||
− | | <nowiki>smo.hReview.info="http://www.test.urls.nl/~user/index.html&argument=alsotest"</nowiki> |
||
− | |- |
||
− | | '''url-encoded representatie''' |
||
− | | smo.hReview.info%3D%22http%3A%2F%2Fwww.test.urls.nl%2F%7Euser%2Findex.html%26argument%3Dalsotest%22 |
||
− | |- |
||
− | |} |
||
− | |||
− | === boolean voorkeur === |
||
− | 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 [https://github.com/seecr/cqlparser 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: |
||
− | <syntaxhighlight lang="python"> |
||
− | >>> from cqlparser import parseString |
||
− | >>> print parseString("aap").prettyPrint() |
||
− | </syntaxhighlight> |
||
− | <noinclude> |
||
− | [[Categorie:Edurep]] |
||
− | [[Categorie:Achtergrond]] |
||
− | [[Categorie:Standaarden]] |
||
− | </noinclude> |
Huidige versie van 21 okt 2021 om 04:11
Doorverwijzing naar: