wiki:Documentatie/Beheerder/HowTos/Stopwoorden

Stopwoorden

OpenAC ondersteunt op veel plaatsen een zoekfunctionaliteit. Bij het zoeken, wordt gezocht naar een woord (of begin van een woord) ergens in een record in OpenAC. OpenAC bouwt zoekindexes op om deze zoekfunctionaliteit te ondersteunen. Bij tabel X_data (zeg, patient_data) hoort een zoekindex X_index (zeg, patient_index).

Een zoekindex turft hoe vaak een bepaald woord voorkomt, bij een bepaalde record in de tabel. Om te zien welke zoektermen allemaal bij een gegeven patiënt horen, kan je deze query uitvoeren:

SELECT woord, patient_key, teller
FROM patient_index
WHERE patient_key = '{{key}}'

Hetzelfde geldt voor andere tabellen met een zoekindex (maar niet elke tabel heeft een zoekindex).

Lijsten

OpenAC kent verschillende stopwoordenlijsten. Een daarvan is vast geprogrammeerd op basis van tekst-frequentie analyse; de lijst staat in de broncode en is te vinden in include/encoding.py.

Een andere stopwoordenlijst is die van de tussenvoegsels. OpenAC kent een vaste lijst tussenvoegsels voor (achter)namen, en indexeert die ook niet. Er is soms overlap tussen namen en tussenvoegsels: Onder is zowel tussenvoegsel, als een achternaam op zich.

Als er patiënten zijn met een achternaam die in een stopwoordenlijst voorkomt, dan zijn die patiënten niet gemakkelijk op te zoeken op naam. In dergelijke gevallen kan het nuttig zijn om de lijsten aan te passen.

Stopwoorden Verwijderen

Stopwoordenlijsten worden voorgesteld in OpenAC als een Python dictionary. Er zijn twee stopwoordenlijsten:

  • include.encoding.basislijst_stopwoorden
  • kern.d020_naw.stopwoordenlijst_voorvoegsels

Om een stopwoord te verwijderen uit de lijsten, verwijder de het woord als key (kleine letters) uit de bijbehorende lijst. Dat kan programmamatisch gedaan worden in de finish() van de adaptatie.

Last modified 7 years ago Last modified on May 9, 2017 3:24:03 PM