07 — Katalóg, varianty a parametrizácia

Stav: návrh na diskusiu, 31. 10. 2026. Najdôležitejšia časť systému: od kvality parametrov závisí vyhľadávanie, filtre, porovnanie, SEO, feedy pre porovnávače aj AI poradca. AI vrstva a MCP server sú v 08-ai-a-mcp.md.

1. Cieľ v jednej vete

Zákazník napíše „hľadám práčku so sušičkou, ktorá prejde cez dvere do kúpeľne“ a dostane len tie modely, ktoré naozaj prejdú, skladom v Novej Bani, s vysvetlením prečo. To sa dá iba vtedy, keď každý spotrebič má presné, typované a overené parametre — AI otázku pochopí, ale odpoveď musí vždy vyrátať databáza.

2. Štyri úrovne triedenia

Zadanie triedi tovar podľa kategórie, druhu a prevedenia. Navrhujem každú úroveň s inou úlohou:

ÚroveňPríkladNa čo slúžiAko je uložená
KategóriaBiela technika → Pranie a sušenienavigácia v menu, SEO stránky, drobčekystrom; produkt má 1 hlavnú + ľubovoľne vedľajších
DruhPráčka, Práčka so sušičkou, Chladničkaurčuje sadu parametrov (šablónu), porovnanie, feedyčíselník druhov s dedičnosťou
Prevedeniepredné / vrchné plnenie, pultová / stojatápodtyp v rámci druhu, hlavný filterparameter typu výber v šablóne druhu
Variantfarba, objem, uhlopriečkarôzne EAN toho istého modelusamostatné SKU pod jedným produktom

Prevedenie zámerne nie je ďalšia úroveň stromu: „vstavaná“ alebo „predné plnenie“ je vlastnosť, podľa ktorej sa filtruje, nie priečinok. Pre dôležité kombinácie (napr. Práčky s predným plnením, Úzke práčky) vzniknú SEO vstupné stránky, ktoré sú len uloženým filtrom s vlastným textom.

2.1 Dedičnosť šablón parametrov

flowchart TB
  ALL["Všetky produkty<br/>značka, model, EAN, záruka, farba/povrch"] --> VS["Veľký spotrebič<br/>rozmery, hmotnosť, energetická trieda,<br/>inštalácia (voľne stojaci / vstavaný),<br/>rozmery pre zabudovanie"]
  ALL --> MS["Malý spotrebič<br/>príkon, napájanie"]
  ALL --> AV["Audio / video<br/>uhlopriečka, rozlíšenie, pripojenie"]
  VS --> PR["Práčka<br/>plnenie, náplň, otáčky, motor"]
  PR --> PS["Práčka so sušičkou<br/>+ náplň sušenia"]
  VS --> SU["Sušička<br/>typ (tepelné čerpadlo, kondenzačná)"]
  VS --> UM["Umývačka<br/>súpravy, kôš na príbor, šírka"]
  VS --> CH["Chladnička<br/>typ, NoFrost, objemy"]
  VS --> MR["Mraznička<br/>typ, objem"]
  VS --> SP["Sporák<br/>typ, rúra, výbava"]

Spoločné parametre sa zadefinujú raz. Práčka so sušičkou je samostatný druh, ale zobrazí sa aj v kategórii Práčky s filtrom „so sušičkou“.

3. Systém parametrizácie

3.1 Definícia parametra

Každý parameter má pevnú definíciu, ktorú spravuje back-office (nie programátor):

VlastnosťPríklad
kódnapln_prania_kg
názov a krátky názovNáplň prania / Náplň
typčíslo · celé číslo · áno/nie · výber jednej hodnoty · výber viacerých · rozmer · text
jednotka (kanonická)kg, mm, l, ot./min, dB, kWh, W — vždy uložené v jednej jednotke, zobrazenie sa dá prepočítať (mm → cm)
rozsah a validácia3–15 kg; otáčky 400–1 800
hodnoty výberu + synonymáNoFrost: nie · len mraznička · celá chladnička; synonymá „Total No Frost“, „beznámrazová“
skupina a poradiePranie, Rozmery, Energia
filterposuvník · zaškrtávanie · prepínač · nefiltruje sa
porovnanieáno / nie; „čím viac, tým lepšie“ alebo naopak (zvýraznenie rozdielov)
povinnosťpovinný pre zverejnenie / odporúčaný
použitiedo názvu, SEO titulku, feedu Heureka (PARAM), AI popisu
zdrojEPREL, Icecat, dodávateľ, PDF výrobcu, ručne

3.2 Hodnoty parametrov a pôvod

Každá hodnota si pamätá odkiaľ je a kto ju schválil: zdroj, dátum, istota (ak ju navrhla AI) a stav návrh / overené. Na webe sa zobrazujú len overené hodnoty; filter s neistou hodnotou produkt radšej nezaradí, než by zákazníkovi sľúbil, že spotrebič prejde dverami.

3.3 Odvodené parametre

Systém niektoré hodnoty vyráta sám, aby sa dali filtrovať:

Odvodený parameterVýpočetNa čo
najmenší prierezdva najmenšie rozmery telesa (bez dvierok a prečnievajúcich častí)„prejde cez dvere“
šírková trieda45 / 60 cm (umývačky), 60 / 70 cm (chladničky)rýchly filter
úzka práčkahĺbka telesa ≤ 47 cmSEO stránka, filter
pasuje do nikyrozmery pre zabudovanie vs. zadané rozmery nikyvstavané spotrebiče
celkový objemchladiaca + mraziaca časťporovnanie

Rozmery preto ukladáme podrobnejšie, než býva zvykom: teleso (V × Š × H), hĺbka s dvierkami, hĺbka s otvorenými dverami, balenie (pre dopravu) a pri vstavaných nika (min–max V × Š × H).

3.4 Uloženie v databáze

  • Definície druhov a parametrov v tabuľkách (verzované — zmena šablóny je migrácia s náhľadom dopadu).
  • Databáza MongoDB Atlas: produkt je jeden dokument, varianty v ňom alebo vo vlastnej kolekcii; parametre ako pole {kód, hodnota, jednotka, zdroj, stav} (vzor attribute pattern), takže jeden index pokryje všetky parametre všetkých druhov.
  • Každý zápis validuje schéma vygenerovaná z definícií parametrov (Zod v aplikácii + JSON Schema validácia v MongoDB).
  • Počty pri filtroch (fazety) vracia Atlas Search ($searchMeta s fazetami) v jednom dotaze s výsledkami; netreba ďalšiu vyhľadávaciu službu.

4. Parametre zo zadania v novej štruktúre

4.1 Spoločné pre veľké spotrebiče

Parameter zo zadaniaTypPoznámka
kategória, druh, prevedeniestrom · druh · výberpozri kap. 2
rozmeryrozmer (mm)teleso, s dvierkami, s otvorenými dverami, balenie
rozmery pre zabudovanierozmer (mm, min–max)nika V × Š × H; filter „pasuje do niky“
hmotnosťčíslo (kg)aj hmotnosť s balením (doprava, vynáška)
energetická triedavýber A–Gz EPREL (EÚ databáza energetických štítkov) + odkaz na štítok
farba / povrchvýberfarba (biela, čierna, nerez…) + povrch (matný, lesklý, anti-fingerprint)
skladom—nie je parameter, počíta modul Sklad (skladom v Novej Bani / do 2 dní / na objednávku)
zárukavýber + čísloštandardná (mesiace) + možnosť predĺženej ako platená služba k produktu

4.2 Podľa druhu

DruhParametre zo zadaniaTyp
Práčkaplnenie (predné, vrchné) = prevedenie · náplň (kg) · otáčky (ot./min) · typ motora (invertorový, klasický)výber · číslo · celé číslo · výber
Práčka so sušičkouvšetko z práčky + náplň sušenia (kg)číslo
Umývačkapočet súprav · kôš / zásuvka na príbor (áno/nie)celé číslo · áno/nie
Chladničkatyp (kombinovaná, americká, francúzska, monoklíma) · NoFrost · objem chladiacej časti (l) · objem mraziacej časti (l)výber · výber · číslo · číslo
Mrazničkatyp (stojatá, pultová) · objem (l)výber · číslo
Sporáktyp (indukčný, sklokeramický, celoplynový, kombinovaný) · typ rúry · počet funkcií rúry · objem rúry (l)výber · výber · celé číslo · číslo
Sporák — výbava rúryplechy (počet, typ: plytký, hlboký, rošt) · teleskopické výsuvy (áno/nie, počet úrovní) · gril (áno/nie) · čistenie (pyrolytické, katalytické, parné, klasické)celé číslo · výber viacerých · áno/nie · áno/nie · výber viacerých

Návrh navyše (bežne sa podľa nich vyberá): hlučnosť (dB), spotreba energie a vody, otváranie dverí (ľavé / pravé / zameniteľné), Wi-Fi a aplikácia, parná funkcia, invertorový kompresor, uhlopriečka a rozlíšenie pri TV.

5. Produkt a varianty

čo to jespoločný obsah: názov radu, popis, obrázky, SEO URLkonkrétny kus s EAN, cenou a zásobou
príkladBosch Serie 6 práčka 9 kgbiela · EAN 4242… / čierna · EAN 4242…
parametrespoločné hodnotyvariantné osi (farba, objem, uhlopriečka) + čo sa líši
HeurekaITEMGROUP_IDITEM_ID
  • Variantné osi určuje druh (práčka: farba; TV: uhlopriečka; chladnička: farba, otváranie dverí).
  • Pri bielej technike má väčšina modelov len jeden variant — systém to nekomplikuje.
  • Vlastnú URL dostane variant len vtedy, keď ho ľudia hľadajú zvlášť (TV 55" vs 65"); farby zdieľajú stránku a variant sa vyberá na nej.
  • K produktu sa viažu príslušenstvo (spojovacia sada na vežu práčka + sušička, hadice), služby (vynáška, zapojenie, odvoz starého, predĺžená záruka) a náhrady (čo ponúknuť, keď nie je skladom).

6. Vyhľadávanie a filtre

6.1 Tri vrstvy, jeden výsledok

VrstvaČo riešiTechnológia
Filtre (fazety)presné podmienky: hĺbka ≤ 550 mm, NoFrost, skladomAtlas Search fazety + rozsahové podmienky nad parametrami
Fulltextnázvy, kódy, preklepy („bosh wgg“)Atlas Search (Lucene) s vlastným analyzátorom bez diakritiky, tolerancia preklepov
Význam (vektory)„tichá do bytu“, „pre veľkú rodinu“Atlas Vector Search, embeddingy Voyage AI (tá istá databáza, s predfiltrom na druh a sklad)
AI pochopenie otázkyprevedie vetu na filtre a doplňujúcu otázkurýchly model Claude Haiku 5.5 cez Claude API (08)

Pre slovenčinu nemá Atlas Search hotové skloňovanie (stemming) (overiť), preto fulltext doplní vektorové vyhľadávanie, ktoré tvary slov zvláda samo. Výsledky oboch sa spoja do jedného poradia (hybridné vyhľadávanie, napr. $rankFusion (overiť verziu Atlasu)) a voliteľne preradia Voyage reranker.

6.2 Príklad: „práčka so sušičkou, ktorá prejde cez dvere do kúpeľne“

sequenceDiagram
  autonumber
  actor Z as Zákazník
  participant E as E-shop
  participant AI as AI (pochopenie otázky)
  participant DB as Katalóg + sklad
  Z->>E: „práčku so sušičkou, ktorá prejde cez dvere do kúpeľne“
  E->>AI: otázka + schéma parametrov
  AI-->>E: druh = práčka so sušičkou, podmienka „prejde dverami“, chýba šírka dverí
  E-->>Z: „Aké široké sú dvere? (bežné interiérové 60 = priechod cca 56 cm)“
  Z->>E: 60
  E->>DB: najmenší prierez ≤ 560 mm, druh, skladom najprv
  DB-->>E: 4 modely, rozmery, sklad, cena
  E->>AI: výsledky na vysvetlenie (bez možnosti meniť čísla)
  AI-->>Z: „Tieto 4 majú hĺbku do 55 cm, dvierka sa dajú vyvesiť…“ + ponuka vynášky
  • AI nikdy nevyberá produkty sama — len preloží otázku na filter a výsledok vysvetlí; čísla počíta databáza.
  • Keď chýba podstatný údaj (šírka dverí), opýta sa, namiesto hádania.
  • Priechod dverí (overiť): interiérové dvere „60“ majú svetlý priechod približne 56–57 cm; presnú hodnotu doplníme z praxe predajne.
  • Otázky bez výsledku sa ukladajú — sú to najlepšie podklady, aké parametre či synonymá doplniť.

6.3 Filtre na stránke kategórie

  • Filtre sa menia podľa druhu (pri práčkach otáčky, pri chladničkách NoFrost).
  • Hore rýchle filtre ako čipy: Skladom dnes, Úzke do 47 cm, Trieda A, Do 400 €.
  • Rozsahy ako posuvník s jednotkou, áno/nie ako prepínač, výbery so zaškrtnutím a počtom kusov.
  • Panel „Zmerajte si miesto“: šírka × hĺbka × výška miesta alebo niky, plus šírka dverí → zobrazí len spotrebiče, ktoré sa zmestia.
  • Výber zostáva v URL (dá sa poslať), ale kombinácie filtrov sa neindexujú (SEO, kap. 8).

6.4 Porovnanie a podobný tovar

  • Porovnanie do 4 produktov toho istého druhu; riadky sú parametre šablóny, prepínač „len rozdiely“, lepšia hodnota zvýraznená.
  • Podobný tovar = rovnaký druh a prevedenie, najbližšie hodnoty hlavných parametrov a podobná cena; prednosť má tovar skladom. Počíta sa z parametrov (nie z „pocitu“ AI), AI len dopíše jednu vetu, v čom sa líši.

7. Plnenie a správa katalógu

7.1 Odkiaľ prídu dáta

ZdrojČo dávaPoznámka
EPREL (EÚ)energetická trieda, spotreba, kapacita, hlučnosť, štítok a informačný listverejné API, treba kľúč (overiť rozsah pre rúry a TV)
Icecattechnické listy podľa EAN, obrázkyOpen Icecat zadarmo pre časť značiek, plná verzia platená (overiť)
Dodávateliacenníky, dostupnosť, často XML/CSV s parametramimapovanie stĺpcov raz na dodávateľa
PDF výrobcumontážne rozmery, nika, výbavaAI vyčíta hodnoty zo strán dokumentu
MOPWINexistujúce karty, EAN, zásobyjednorazová migrácia
Personálčo inde nie je, fotky z predajneback-office alebo cez MCP (08)

7.2 Tok spracovania nového produktu

flowchart LR
  IN["Vstup<br/>EAN, cenník, PDF, fotka štítku"] --> FETCH["Stiahnutie údajov<br/>EPREL, Icecat, dodávateľ"]
  FETCH --> EXT["AI extrakcia<br/>do schémy druhu"]
  EXT --> NORM["Normalizácia<br/>jednotky, synonymá, rozsahy"]
  NORM --> CHK["Kontroly<br/>povinné, rozpory zdrojov"]
  CHK --> REV["Schválenie človekom<br/>rozdiely + zdroje"]
  REV --> PUB["Zverejnenie<br/>web, feedy, index"]
  PUB --> TXT["AI popis, SEO, vektory<br/>na pozadí"]

Všetko beží na pozadí (Vercel Workflow / Queues); predavač vidí len frontu „Na kontrolu“ s návrhom, zdrojom každej hodnoty a tlačidlami Prijať / Upraviť / Zamietnuť.

7.3 Back-office katalógu

  • Editor druhov a parametrov s náhľadom dopadu zmeny (koľko produktov prestane mať povinné hodnoty).
  • Karta produktu: parametre po skupinách, odznak zdroja pri hodnote, návrhy AI na jedno kliknutie.
  • Tabuľkový režim pre hromadné úpravy jedného druhu (všetky práčky naraz).
  • Skóre úplnosti produktu a prehľad „čo chýba“ — produkt bez povinných parametrov sa nedostane do filtrov ani feedov.
  • Stavy: koncept → na kontrolu → zverejnené; história zmien s možnosťou vrátiť.

8. Popisy a SEO

8.1 URL a indexovanie

StránkaURLIndexovať
kategória/pracky/áno
SEO vstupná (uložený filter)/pracky/uzke/, /pracky/predne-plnenie/áno, ak má dopyt a aspoň niekoľko produktov
ľubovoľná kombinácia filtrov/pracky/?hlbka_max=550&…nie (noindex, canonical na kategóriu)
produkt/p/bosch-wgg2440-pracka-9-kg/áno
variantspoločná URL, vlastná len pri samostatnom dopytepodľa kap. 5

8.2 Obsah stránky produktu

  • Titulok a meta popis zo šablóny druhu: {Značka} {Model} — práčka {náplň} kg, {otáčky} ot./min, trieda {EE} | dnesdoma.sk.
  • Popis generuje AI len z overených parametrov (nevymýšľa funkcie), vlastnými slovami — nie kópia od výrobcu, ktorú majú všetky e-shopy. Pridá lokálnu výhodu: skladom v Novej Bani, dovoz ešte dnes, vynáška.
  • Časté otázky pri produkte („zmestí sa pod linku?“, „dá sa postaviť sušička navrch?“) z parametrov a manuálov.
  • Štruktúrované dáta schema.org: Product, Offer (cena, dostupnosť), BreadcrumbList, predajňa ako LocalBusiness s osobným odberom; hodnotenia len vlastné a overené.
  • Nákupné poradcovia (napr. Ako vybrať práčku do malej kúpeľne) — dobré pre SEO dlhého chvosta aj ako podklad pre AI poradcu.

9. Etapy katalógu

  1. Schéma a migrácia — druhy a parametre zo zadania, prevod kariet z MOPWIN, ručné dopĺňanie; filtre a porovnanie v MongoDB.
  2. Automatické plnenie — EPREL, Icecat, cenníky dodávateľov, AI extrakcia z PDF, fronta na schválenie, AI popisy.
  3. AI vyhľadávanie — otázky vetou, „zmerajte si miesto“, vektory, poradca; zber otázok bez výsledku.
  4. Ladenie — SEO vstupné stránky podľa dopytu, ladenie analyzátorov a váh vyhľadávania, testovacia sada otázok (08).