Cookie Melding
Wij gebruiken cookies om ons websiteverkeer te analyseren en uw ervaring te verbeteren. U kunt analytische cookies accepteren of weigeren.
Een installateur die “prescomanometer 1/2” intikt, wil één ding: het juiste artikel, meteen. In de B2B-webshop van Omni-Term zoeken installateurs op artikelnummer, leverancierscode, merk, omschrijving of een technisch kenmerk, en dat over een catalogus van vele fabrikanten. Zo heb ik die zoekfunctie opgebouwd.
De zoekopdracht wordt eerst geanalyseerd. Herkent de code een artikelnummer of een leverancierscode, dan gaat ze rechtstreeks naar exacte en wildcard-matching op die velden, met de hoogste boost. Herkent ze een merknaam, dan krijgen producten van dat merk voorrang. De rest zijn gewone termen, die over meerdere velden tegelijk gezocht worden: de omschrijving als exact keyword, als geanalyseerde tekst en als edge-ngram voor prefixen, de productbeschrijving, en de hiërarchie van categorie tot productfamilie. Zoeken op een oud artikelnummer levert via een geneste lijst van voorgangers ook de opvolger op.
Bij meerdere termen eist de query dat alle termen in hetzelfde product voorkomen. Levert dat te weinig resultaten op, dan valt de zoekopdracht terug op een OR-variant. Zo krijgt de gebruiker precisie waar het kan en volledigheid waar het moet.
“Installatie” mag niet zomaar “installatiemateriaal” matchen. Daarom bouwt de query woordgrenspatronen: de term aan het begin, het einde of midden in een veld, of na een streepje of punt. Een schakelaar bepaalt of matches midden in een woord toegelaten zijn; precisie en recall zijn zo per situatie afweegbaar, net als de toegelaten fuzziness voor tikfouten.
De gewichten per veld, van exact artikelnummer tot hiërarchieniveau, staan als instellingen in de databank. Een kleine beheertool toont ze gegroepeerd, valideert wijzigingen en leegt de API-cache. Zoekgedrag bijstellen gebeurt zo in minuten, niet in releases.
ETIM is de Europese classificatiestandaard voor technische producten: elke klasse, zoals “circulatiepomp”, heeft vaste kenmerken met eenheden en waarden. De ETIM-gegevens van fabrikanten staan in een eigen Elasticsearch-index met n-gram-analyzers en worden gekoppeld via het GLN van de fabrikant en de leverancierscode of GTIN van het artikel. Twee dingen maakt dat mogelijk: de installateur ziet de technische kenmerken van een artikel, en de zoekresultaten worden gegroepeerd per ETIM-klasse als facet om verder te verfijnen. De koppeling gebeurt pas bij het verrijken van de resultaten, zodat de basiszoekopdracht snel blijft.
Zoekt u een betere zoekfunctie voor uw webshop of catalogus? Neem contact op.