OOMF

// step 01 — tell us

Tell me what you’re eating tonight.

I’ll recommend a wine and explain why — the way a sommelier would. The way a fuzzy ontology does underneath.

// why this exists

In 2014, our Scientific Lead Robin Wikström defended his PhD at Åbo Akademi on “Fuzzy Ontology for Knowledge Mobilisation” — the academic ancestor of today’s Retrieval-Augmented Generation. He chose wine recommendation as the demo domain. A decade later, Alko’s open catalog and Claude make the original idea shippable as a tiny app. This is that app — one evening of work, and a working demonstration of how OOMF builds.

Read the full story

// how it works

Three layers, working together.

The playful sommelier surface hides a working example of fuzzy ontology — the academic ancestor of Retrieval-Augmented Generation, published eleven years before anyone said “RAG” out loud.

01 /

Fuzzy Wine Ontology

Every wine in Alko's public catalog — roughly 3,000 entries — tagged with crisp attributes (price, region, grape) and fuzzy ones: degrees of body, sweetness, acidity, tannin, oak. Not yes/no. Degree.

02 /

Matching engine

A weighted aggregation operator, descended from Robin's 2014 thesis, ranks every wine against your meal with a transparent per-dimension score. Roughly 150 lines of TypeScript. Math hasn't changed.

03 /

Conversational layer

Claude reads your free-text question, parses it into structured intent, and after the engine ranks the candidates, writes the explanation the way an experienced sommelier would. Warm, specific, no jargon.