Skip to content

Commit 039d438

Browse files
Merge pull request #4571 from vespa-engine/sebastiannberg/combined-ecom
2 parents 0643148 + 709d846 commit 039d438

4 files changed

Lines changed: 401 additions & 21 deletions

File tree

_data/sidebar.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -471,6 +471,8 @@ docs:
471471
url: /en/modules/e-commerce/multi-currency-filtering.html
472472
- page: Saved Search Notifications
473473
url: /en/modules/e-commerce/saved-search.html
474+
- page: Using Features Together
475+
url: /en/modules/e-commerce/using-features-together.html
474476

475477
- title: Reference
476478
documents:

en/modules/e-commerce/multi-currency-filtering.html

Lines changed: 66 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ <h3 id="configure-services">Configure Services</h3>
133133
<chain id="forex-cache" inherits="vespa" />
134134
</search>
135135

136-
<component id="ai.vespa.ecommerce.multicurrency.ForexRateService"
136+
<component id="ai.vespa.ecommerce.common.ForexRateService"
137137
class="ai.vespa.ecommerce.multicurrency.CachedForexRateService"
138138
bundle="ecommerce-multi-currency" />
139139

@@ -172,7 +172,7 @@ <h3 id="configure-services">Configure Services</h3>
172172
</chain>
173173
<chain id="forex-cache" inherits="vespa" />
174174
</search>
175-
<component id="ai.vespa.ecommerce.multicurrency.ForexRateService"
175+
<component id="ai.vespa.ecommerce.common.ForexRateService"
176176
class="ai.vespa.ecommerce.multicurrency.CachedForexRateService"
177177
bundle="ecommerce-multi-currency" />
178178
<component id="ai.vespa.ecommerce.multicurrency.ForexRateRetriever"
@@ -475,7 +475,8 @@ <h2 id="advanced-usage">Advanced Usage</h2>
475475
<h3 id="custom-field-configuration">Custom Field Configuration</h3>
476476
<p>
477477
By default, the multi-currency components expect specific field names in your product schema.
478-
You can customize these field names using the <code>product-schema-wiring</code> configuration.
478+
You can customize these field names using the <code>ecommerce-schema-wiring</code> configuration.
479+
See <a href="#configuration">Configuration Reference</a> for all available parameters and their defaults.
479480
</p>
480481

481482
<pre>{% highlight xml %}
@@ -484,7 +485,7 @@ <h3 id="custom-field-configuration">Custom Field Configuration</h3>
484485
<chain id="multi-currency-filter" inherits="vespa">
485486
<searcher id="ai.vespa.ecommerce.multicurrency.MultiCurrencyFilterSearcher"
486487
bundle="ecommerce-multi-currency">
487-
<config name="ai.vespa.ecommerce.multicurrency.product-schema-wiring">
488+
<config name="ai.vespa.ecommerce.common.ecommerce-schema-wiring">
488489
<productFields>
489490
<sellerCurrency>seller_currency</sellerCurrency>
490491
<perMarketPriceArrayStruct>per_market_price</perMarketPriceArrayStruct>
@@ -504,18 +505,6 @@ <h3 id="custom-field-configuration">Custom Field Configuration</h3>
504505
</container>
505506
{% endhighlight %}</pre>
506507

507-
<p>
508-
Configuration parameters:
509-
</p>
510-
<ul>
511-
<li><code>productFields.sellerCurrency</code> - Field name for the product's seller currency (default: <code>seller_currency</code>)</li>
512-
<li><code>productFields.perMarketPriceArrayStruct</code> - Array field name containing per-market prices (default: <code>per_market_price</code>)</li>
513-
<li><code>productFields.marketStructField</code> - Struct field name for market code (default: <code>market</code>)</li>
514-
<li><code>productFields.priceStructField</code> - Struct field name for price value (default: <code>price</code>)</li>
515-
<li><code>defaults.market</code> - Default market identifier used as fallback (default: <code>DEFAULT</code>)</li>
516-
<li><code>rankProfileInputs.forexRates</code> - Query tensor name for forex rates in ranking (default: <code>forexRates</code>)</li>
517-
</ul>
518-
519508

520509
<h3 id="using-forex-in-ranking">Using Forex Rates in Ranking</h3>
521510
<p>
@@ -642,6 +631,65 @@ <h4 id="complete-ranking-query">Complete Query with Filtering and Ranking</h4>
642631
</ul>
643632

644633

634+
<h2 id="configuration">Configuration Reference</h2>
635+
636+
<p>
637+
This section describes the <a href="../../applications/configuring-components.html">configuration parameters</a>
638+
used by the multi-currency components.
639+
All parameters are part of the <code>ecommerce-schema-wiring</code> config
640+
(<code>ai.vespa.ecommerce.common.ecommerce-schema-wiring</code>).
641+
</p>
642+
643+
<table class="table">
644+
<thead>
645+
<tr>
646+
<th>Parameter</th>
647+
<th>Description</th>
648+
<th>Type</th>
649+
<th>Default</th>
650+
</tr>
651+
</thead>
652+
<tbody>
653+
<tr>
654+
<td><code>productFields.sellerCurrency</code></td>
655+
<td>Field name for the product's seller currency.</td>
656+
<td><code>string</code></td>
657+
<td><code>seller_currency</code></td>
658+
</tr>
659+
<tr>
660+
<td><code>productFields.perMarketPriceArrayStruct</code></td>
661+
<td>Array field name containing per-market prices.</td>
662+
<td><code>string</code></td>
663+
<td><code>per_market_price</code></td>
664+
</tr>
665+
<tr>
666+
<td><code>productFields.marketStructField</code></td>
667+
<td>Struct field name for market code.</td>
668+
<td><code>string</code></td>
669+
<td><code>market</code></td>
670+
</tr>
671+
<tr>
672+
<td><code>productFields.priceStructField</code></td>
673+
<td>Struct field name for price value.</td>
674+
<td><code>string</code></td>
675+
<td><code>price</code></td>
676+
</tr>
677+
<tr>
678+
<td><code>defaults.market</code></td>
679+
<td>Default market identifier used as fallback when no market-specific price exists.</td>
680+
<td><code>string</code></td>
681+
<td><code>DEFAULT</code></td>
682+
</tr>
683+
<tr>
684+
<td><code>rankProfileInputs.forexRates</code></td>
685+
<td>Query tensor name for forex rates in ranking. Used when <code>enrich=true</code> to inject the forex tensor into the query.</td>
686+
<td><code>string</code></td>
687+
<td><code>forexRates</code></td>
688+
</tr>
689+
</tbody>
690+
</table>
691+
692+
645693
<h2 id="requirements">Requirements</h2>
646694
<ul>
647695
<li>
@@ -687,6 +735,8 @@ <h2 id="recommended-practices">Recommended Practices</h2>
687735

688736
<h2 id="see-also">See Also</h2>
689737
<ul>
738+
<li><a href="saved-search.html">Saved Search Notifications</a></li>
739+
<li><a href="using-features-together.html">Using Features Together</a></li>
690740
<li><a href="../../learn/tutorials/e-commerce">E-commerce tutorial</a></li>
691741
<li><a href="../../applications/searchers.html">Searcher Development</a></li>
692742
<li><a href="../../ranking/tensor-user-guide.html">Tensor Guide</a></li>

en/modules/e-commerce/saved-search.html

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
<h2 id="overview">Overview</h2>
1515

1616
<p>
17-
The ecommerce-saved-search module supports:
17+
The saved search notifications feature supports:
1818
</p>
1919
<ul>
2020
<li><strong>Storing predicate queries</strong> - Saved searches contain arbitrary boolean expressions over a set of string attributes and numerical ranges. See <a href="../../schemas/predicate-fields.html">Predicate Fields</a>.</li>
@@ -107,7 +107,7 @@ <h3 id="configure-services">Configure Services</h3>
107107
<chain id="notification">
108108
<documentprocessor id="ai.vespa.ecommerce.savedsearch.SavedSearchDocumentProcessor"
109109
bundle="ecommerce-saved-search" />
110-
<config name="ai.vespa.ecommerce.savedsearch.schema-wiring">
110+
<config name="ai.vespa.ecommerce.common.ecommerce-schema-wiring">
111111
<notification>
112112
<kind>WEBHOOK</kind>
113113
<webhook>
@@ -118,7 +118,7 @@ <h3 id="configure-services">Configure Services</h3>
118118
<itemDocumentType>product</itemDocumentType>
119119
<savedSearchDocumentType>saved_search</savedSearchDocumentType>
120120
<predicateFieldName>filters</predicateFieldName>
121-
<savedSearchNumHits>10</savedSearchNumHits>
121+
<savedSearchNumHits>100</savedSearchNumHits>
122122

123123
<regularAttributes>
124124
<item>
@@ -279,7 +279,7 @@ <h4 id="notification-security">Security</h4>
279279
...
280280
<documentprocessor id="ai.vespa.ecommerce.savedsearch.SavedSearchDocumentProcessor"
281281
bundle="ecommerce-saved-search" />
282-
<config name="ai.vespa.ecommerce.savedsearch.schema-wiring">
282+
<config name="ai.vespa.ecommerce.common.ecommerce-schema-wiring">
283283
<notification>
284284
<kind>WEBHOOK</kind>
285285
<webhook>
@@ -356,7 +356,7 @@ <h4 id="notification-vespa-example">Notification example</h4>
356356
<container>
357357
<documentprocessor id="ai.vespa.ecommerce.savedsearch.SavedSearchDocumentProcessor"
358358
bundle="ecommerce-saved-search" />
359-
<config name="ai.vespa.ecommerce.savedsearch.schema-wiring">
359+
<config name="ai.vespa.ecommerce.common.ecommerce-schema-wiring">
360360
<notification>
361361
<kind>VESPA_SCHEMA</kind>
362362
<vespaSchema>
@@ -517,3 +517,14 @@ <h2 id="configuration">Configuration reference</h2>
517517
</tr>
518518
</tbody>
519519
</table>
520+
521+
522+
<h2 id="see-also">See Also</h2>
523+
<ul>
524+
<li><a href="../../schemas/predicate-fields.html">Predicate Fields</a></li>
525+
<li><a href="../../applications/document-processors.html">Document Processors</a></li>
526+
<li><a href="../../applications/configuring-components.html">Configuring Components</a></li>
527+
<li><a href="../../security/secret-store.html">Secret Store</a></li>
528+
<li><a href="multi-currency-filtering.html">Multi-Currency Pricing</a></li>
529+
<li><a href="using-features-together.html">Using Features Together</a></li>
530+
</ul>

0 commit comments

Comments
 (0)