integration_documentation:response_xml

integration_documentation:response_xml

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
integration_documentation:response_xml [2019/09/11 09:38]
rihad [Basic structure of the XML tree]
integration_documentation:response_xml [2020/05/13 17:03] (current)
florian [Response: XML]
Line 3: Line 3:
 The response format can be set by FINDOLOGIC only. If the XML response format is used, please refer to the following documentation. ​ The response format can be set by FINDOLOGIC only. If the XML response format is used, please refer to the following documentation. ​
  
 +<note tip>Our library helps requesting the FINDOLOGIC API and also getting the data from the response and mapping it to corresponding objects. Read more at https://​github.com/​findologic/​findologic-api </​note>​
  
 +<note tip>You can also find a detailed API specification of the XML 2.1 response on our [[https://​service.findologic.com/​ps/​centralized-frontend/​spec/​|FINDOLOGIC API Spec page]].</​note>​
  
 ==== Basic structure of the XML tree ==== ==== Basic structure of the XML tree ====
Line 20: Line 22:
       * ''​[[#​filter]]''​       * ''​[[#​filter]]''​
         * ...         * ...
-    * ''​[[#​landingpage]]''​+    * ''​[[#​landingPage]]''​
     * ''​[[#​promotion]]''​     * ''​[[#​promotion]]''​
  
Line 26: Line 28:
  
 See our [[https://​github.com/​findologic/​xml-response-schema/​blob/​v2.1.0/​schema.xsd|xsd scheme]] for further information. See our [[https://​github.com/​findologic/​xml-response-schema/​blob/​v2.1.0/​schema.xsd|xsd scheme]] for further information.
 +
 +\\
  
 ==== The XML elements in detail ==== ==== The XML elements in detail ====
  
-\\  
  
-=== <​servers/>​ ===+==== <​servers/> ​====
  
 The servers with which the query was answered. The element need not always be included. ​ The servers with which the query was answered. The element need not always be included. ​
 +
 <code xml> <code xml>
     <​servers>​     <​servers>​
Line 55: Line 59:
 ---- ----
  
-=== <​query/>​ ===+==== <​query/>​ ===
 + 
 +Describes the query that is currently being carried out.
  
-Describes the query that is currently being carried out.  
 <code xml> <code xml>
     <​query>​     <​query>​
Line 67: Line 72:
 \\  \\ 
  
-==== Additional information ​for users of Smart Did-You-Mean ​====+=== Information ​for Smart Did-You-Mean ===
  
 Smart Did-You-Mean users receive additional information for better error-tolerant search. A number of constellations listed below are possible, and each variety requires a certain kind of output in the search result visualization. Smart Did-You-Mean users receive additional information for better error-tolerant search. A number of constellations listed below are possible, and each variety requires a certain kind of output in the search result visualization.
Line 98: Line 103:
 === Improved query === === Improved query ===
  
-The original query has good results, but there is an alternative query that may be more relevant to the user.+The original query has results, but there is an alternative query that is more relevant to the user.
  
 **Response format:** **Response format:**
Line 158: Line 163:
 Indicates which area of the results has been requested. ​ Indicates which area of the results has been requested. ​
  
-**Attribute:**+**Attributes:**
  
   * ''​first''​   * ''​first''​
-    * indicates ​the first element to be displayed ((0-based, i.e. if the first argument is displayed, the value is 0.))+    * Indicates ​the first element to be displayed ((0-based, i.e. if the first argument is displayed, the value is 0.)).
   * ''​count''​   * ''​count''​
-    * indicates ​the total number of elements to be displayed +    * Indicates ​the total number of elements to be displayed.
- +
----- +
- +
-=== <​searchedWordCount/>​ === +
- +
-Indicates the number of searched words from the query. +
- +
----- +
- +
-=== <​foundWordCount/>​ === +
- +
-Indicates the number of found words from the query. If no results could be found for the complete query, **''<​foundWordCount/>''​** is correspondingly reduced to the number of words for which result could be found ​((''​foundWordCount''​ has currently no function))+
  
 ---- ----
  
-=== <​results/>​ ===+==== <​results/> ​====
  
 Provides information on the query output. Provides information on the query output.
  
-  ​<​results>​+<code xml><​results>​
     <​count>​2</​count>​     <​count>​2</​count>​
-  </​results>​+  </​results></​code>
  
 ---- ----
Line 195: Line 188:
 ---- ----
  
-=== <​products/>​ ===+==== <​products/> ​====
  
 Indicates the query output of the products found. Depending on the values of ''<​first/>''​- and ''<​count/>''​-this may include only a partial range of the entire query output. Indicates the query output of the products found. Depending on the values of ''<​first/>''​- and ''<​count/>''​-this may include only a partial range of the entire query output.
  
-  ​<​products>​ +<code xml><​products>​ 
-    <product id="​666" ​direct="1"/+    <product id="​666" ​relevance="15.265">​ 
-    <product id="​123" ​direct="2"/+    <product id="​123" ​relevance="14.361">​ 
-  </​products>​+  </​products></​code>
  
 ---- ----
Line 208: Line 201:
 === <​product/>​ === === <​product/>​ ===
  
-    ​<product id="​123" ​direct="2">+<code xml><product id="​123" ​relevance="14.361">
       <​properties>​       <​properties>​
         ...         ...
       </​properties>​       </​properties>​
-    </​product>​+    </​product></​code>
  
-**Attribute:**+**Attributes:**
   * ''​id''​   * ''​id''​
-    * indicates ​the ID of the respective product transmitted in the export. +    * Indicates ​the ID of the respective product transmitted in the export. 
-  * ''​direct''​ +  * ''​relevance''​ 
-    * This parameter will continue to be delivered for legacy reasons, but it is always "​0"​.+    * Indicates the relevance of the respective product.
  
 ---- ----
Line 224: Line 217:
 === <​properties/>​ === === <​properties/>​ ===
  
-      ​<​properties>​+<code xml><​properties>​
         <​property name="​propertyName">​propertyValue2</​property>​         <​property name="​propertyName">​propertyValue2</​property>​
-      </​properties>​+      </​properties></​code>
       ​       ​
 \\  \\ 
  
-== <​property/>​ ==+=== <​property/> ​===
  
-Shows the contents of an [[csv_export_documentation:​csv_format#​optional_additional_columns|optional export column.]]+Shows the contents of the properties that have been imported.
  
-**Attribute:**+**Attributes:**
   * ''​name''​   * ''​name''​
     * Shows the name of the exported column.     * Shows the name of the exported column.
Line 240: Line 233:
 ---- ----
  
-=== <​filters/>​ ===+==== <​filters/> ​====
  
 Shows further filter options from the search service that are sensible due to the results found. The filters in the ''<​filter/>''​-elements are grouped according to categories. Shows further filter options from the search service that are sensible due to the results found. The filters in the ''<​filter/>''​-elements are grouped according to categories.
  
-  ​<​filters>​+<code xml>  ​<​filters>​
     <​main>​     <​main>​
         <​filter>​         <​filter>​
Line 255: Line 248:
         </​filter>​         </​filter>​
     </​other>​     </​other>​
-  </​filters>​+  </​filters></​code>
   ​   ​
 === <​main/>​ === === <​main/>​ ===
  
-Indicates that the respective filter is configurated as main filter in the [[https://​secure.findologic.com/​login.symfony/​web/​app.php/​shop/​filter|customer account]]+Indicates that the respective filter is configurated as main filter in the [[https://​secure.findologic.com/​login.symfony/​web/​app.php/​shop/​filter|customer account]].
  
 {{:​integration_documentation:​main-filter.png?​|}} {{:​integration_documentation:​main-filter.png?​|}}
 +
 +----
  
 === <​other/>​ === === <​other/>​ ===
  
-Indicates that the respective filter is configuratedas other filter in the [[https://​secure.findologic.com/​login.symfony/​web/​app.php/​shop/​filter|customer account]]+Indicates that the respective filter is configuratedas other filter in the [[https://​secure.findologic.com/​login.symfony/​web/​app.php/​shop/​filter|customer account]].
  
 {{:​integration_documentation:​other-filter.png?​|}} {{:​integration_documentation:​other-filter.png?​|}}
 +
 +----
  
 === <​filter/>​ === === <​filter/>​ ===
Line 273: Line 270:
 Indicates a filter category and contains the various values for this filter category in the ''<​items/>''​ elements. ​ Indicates a filter category and contains the various values for this filter category in the ''<​items/>''​ elements. ​
  
-    ​<​filter>​+<code xml><​filter>​
       <​name>​cat</​name>​       <​name>​cat</​name>​
       <​display>​Kategorie</​display>​       <​display>​Kategorie</​display>​
Line 282: Line 279:
         ...         ...
       </​items>​       </​items>​
-    </​filter>​+    </filter></​code>
  
 ---- ----
Line 332: Line 329:
     * The filter values are to be displayed in text form.     * The filter values are to be displayed in text form.
   * ''​color''​   * ''​color''​
-    * The filter is to be displayed as a "​Color-Picker"​.+    * The filter is displayed as a "​Color-Picker". 
 +  * ''​select''​ 
 +    * The filter is displayed as a "​Dropdown".
   * ''​image''​   * ''​image''​
-    * The filter values are to be displayed in image form.+    * The filter values are to be displayed in image form. Only available for vendor filter.
   * ''​range-slider''​   * ''​range-slider''​
     * The filter values are to be displayed with a range slider.     * The filter values are to be displayed with a range slider.
Line 345: Line 344:
 Is only output if ''​type''​ = ''​range-slider''​. Is only output if ''​type''​ = ''​range-slider''​.
  
-  ​<​attributes>​+<code xml><​attributes>​
     <​selectedRange>​     <​selectedRange>​
       <​min>​24</​min>​       <​min>​24</​min>​
Line 356: Line 355:
     <​stepSize>​1</​stepSize>​     <​stepSize>​1</​stepSize>​
     <​unit>​Zoll</​unit>​     <​unit>​Zoll</​unit>​
-  </​attributes>​+  </​attributes></​code>
   ​   ​
 ---- ----
Line 393: Line 392:
 ---- ----
  
-=== <​items/>​ ===+==== <​items/> ​====
  
-      ​<​items>​+<code xml><​items>​
         <​item>​         <​item>​
            ...            ...
Line 402: Line 401:
            ...            ...
         </​item>​         </​item>​
-      </​items>​+      </items></​code>
  
 Contains the individual values for this filter category. Contains the individual values for this filter category.
Line 412: Line 411:
 Contains further information on this specific filter. ​ Contains further information on this specific filter. ​
  
-    ​<item selected="​1">​+<code xml><item selected="​1">​
       <​name>​Subgroup</​name>​       <​name>​Subgroup</​name>​
       <​display>​Subgroup</​display>​       <​display>​Subgroup</​display>​
Line 428: Line 427:
             </​items>​             </​items>​
        </​items>​        </​items>​
-    </​item>​+    </item></​code>
  
  
   * ''​selected''​   * ''​selected''​
-    * indicates ​that this filter is selected.+    * Indicates ​that this filter is selected.
  
 ''<​item/>''​-elements can contain further ''<​items/>''​ in turn. ''<​item/>''​-elements can contain further ''<​items/>''​ in turn.
Line 461: Line 460:
 The number of results for this filter((If according to ''<​count/>''​ at least 32767 results have been found, this value is only approximated)) The number of results for this filter((If according to ''<​count/>''​ at least 32767 results have been found, this value is only approximated))
 the element is optional and is not output in certain cases. the element is optional and is not output in certain cases.
 +
 +  * <​type>​ ''​absolute''​
 +    * Indicates that the frequency shown is the total number of results available after clicking the filter value.
 +  * <​type>​ ''​relative''​
 +    * Indicates that the frequency shown is the number of results that will be added after clicking the filter value. (f.e. //+3//)
  
 ---- ----
Line 488: Line 492:
 ---- ----
  
-=== <landingpage/> ===+==== <landingPage/> ====
  
 Indicates that a landing page has been found for the search term (e.g. for General Terms and Conditions or the imprint page). Indicates that a landing page has been found for the search term (e.g. for General Terms and Conditions or the imprint page).
Line 502: Line 506:
 ---- ----
  
-=== <​promotion/>​ ===+==== <​promotion/> ​====
  
 Indicates that a promotion has been found for the search term (e.g. for special seasonal campaigns or special sales). Indicates that a promotion has been found for the search term (e.g. for special seasonal campaigns or special sales).
Line 521: Line 525:
 ==== Example ==== ==== Example ====
  
-The following example is fictitious ​and contains all possible elements at the same time.+The following example is fictional ​and contains all possible elements at the same time.
  
-  ​<​searchResult>​+<code xml><​searchResult>​
     <​servers>​     <​servers>​
-      <​frontend>​frontend.findologic.com</​frontend>​ +      <​frontend>​frontend9.findologic.com</​frontend>​ 
-      <​backend>​frontend.findologic.com</​backend>​+      <​backend>​backend12.findologic.com</​backend>​
     </​servers>​     </​servers>​
     <​query>​     <​query>​
       <limit first="​0"​ count="​10"/>​       <limit first="​0"​ count="​10"/>​
       <​queryString>​Test</​queryString>​       <​queryString>​Test</​queryString>​
-      <​searchedWordCount>​1</​searchedWordCount>​ 
-      <​foundWordCount>​1</​foundWordCount>​ 
     </​query>​     </​query>​
     <​landingPage link="​http://​www.example.com/​imprint"​ />     <​landingPage link="​http://​www.example.com/​imprint"​ />
Line 540: Line 542:
     </​results>​     </​results>​
     <​products>​     <​products>​
-      <product id="​666" ​direct="1"/>+      <product id="​666" ​relevance="15.311"/>
         <​properties>​         <​properties>​
           <​property name="​propertyName">​propertyValue1</​property>​           <​property name="​propertyName">​propertyValue1</​property>​
         </​properties>​         </​properties>​
-      <product id="​123" ​direct="2"/>+      <product id="​123" ​relevance="14.363"/>
         <​properties>​         <​properties>​
           <​property name="​propertyName">​propertyValue2</​property>​           <​property name="​propertyName">​propertyValue2</​property>​
Line 566: Line 568:
                 <​name>​Unteruntergruppe</​name>​                 <​name>​Unteruntergruppe</​name>​
                 <​weight>​0.985228</​weight>​                 <​weight>​0.985228</​weight>​
-                <​frequency>​4</​frequency>​+                <​frequency ​type="​relative"​>​4</​frequency>​
                   <​items>​                   <​items>​
                      ...                      ...
Line 611: Line 613:
      </​other>​      </​other>​
     </​filters>​     </​filters>​
-  </​searchResult>​+  </​searchResult></​code>