xml_export_documentation:xml_format
Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
xml_export_documentation:xml_format [2020/08/18 12:00] florian [Example XML] |
xml_export_documentation:xml_format [2023/01/25 14:14] rihad [Using properties for product variants in search results] |
||
---|---|---|---|
Line 13: | Line 13: | ||
* You can find a detailed description of all available tags in our XML-patterns below. | * You can find a detailed description of all available tags in our XML-patterns below. | ||
- | * The latest XML scheme for validation can be found on Github: [[https://github.com/FINDOLOGIC/xml-export/blob/master/src/main/resources/findologic.xsd|Findologic XML-Schema]]. Check your XML against the scheme and see if your export XML is valid: [[https://www.corefiling.com/opensource/schemaValidate.html]] | + | * The latest XML scheme for validation can be found on Github: [[https://github.com/findologic/xml-export/blob/main/src/main/resources/findologic_20.xsd|Findologic XML-Schema]]. Check your XML against the scheme and see if your export XML is valid: [[https://www.corefiling.com/opensource/schemaValidate.html]] |
<note>Link to the script-file that triggers XML-export has to be provided in the customer login - if needed with login and password (HTML basic access authentication).</note> | <note>Link to the script-file that triggers XML-export has to be provided in the customer login - if needed with login and password (HTML basic access authentication).</note> | ||
Line 26: | Line 26: | ||
[...] | [...] | ||
<html></pre></html></note> | <html></pre></html></note> | ||
+ | |||
+ | <note important>Control characters (**[#x01-#x08]** | **[#x0B-#x0C]** | **[#x0E-#x1F]**) are not allowed in any value of the feed.</note> | ||
+ | |||
+ | <note important>The summary, description and the attribute values should not contain any HTML-Tags. | ||
+ | A warning will be shown during import and the tags get stripped automatically.</note> | ||
---- | ---- | ||
Line 33: | Line 38: | ||
^**''<?xml version=“...” encoding=“...”?>''**| Specifies the encoding | Yes | Yes | No | | ^**''<?xml version=“...” encoding=“...”?>''**| Specifies the encoding | Yes | Yes | No | | ||
^**''<[[#item]] id="">''**| Unique identifier | Yes | Yes | No | | ^**''<[[#item]] id="">''**| Unique identifier | Yes | Yes | No | | ||
- | ^**''<[[#ordernumbers]]>''**| Article number or order number | Yes | No | Yes | | + | ^**''<[[#ordernumbers]]>''**| Article number, EAN or SKU | Yes | No | Yes | |
^**''<[[#names]]>''**| Article name, as usually shown on the result page | Yes | Yes | Yes | | ^**''<[[#names]]>''**| Article name, as usually shown on the result page | Yes | Yes | Yes | | ||
^**''<[[#summaries]]>''**| Summarized article description | Yes | No | Yes | | ^**''<[[#summaries]]>''**| Summarized article description | Yes | No | Yes | | ||
^**''<[[#descriptions]]>''**| Detailed article description | Yes | No | Yes | | ^**''<[[#descriptions]]>''**| Detailed article description | Yes | No | Yes | | ||
^**''<[[#prices]]>''**| Current article price including taxes | Yes | Yes | **filterable only** | | ^**''<[[#prices]]>''**| Current article price including taxes | Yes | Yes | **filterable only** | | ||
+ | ^**''<[[#overriddenPrices]]>''**| Current article price including taxes | No | No | No | | ||
^**''<[[#urls]]>''**| URL to the article page, must be absolute | Yes | Yes | No | | ^**''<[[#urls]]>''**| URL to the article page, must be absolute | Yes | Yes | No | | ||
^**''<[[#images]]>''**| URL to the article image, must be absolute. | Yes | No | No | | ^**''<[[#images]]>''**| URL to the article image, must be absolute. | Yes | No | No | | ||
^**''<[[#keywords]]>''**| Keywords linked to current article | Yes | No | Yes | | ^**''<[[#keywords]]>''**| Keywords linked to current article | Yes | No | Yes | | ||
- | ^**''<[[#usergroups]]>''**| Visibility of article, i.e. only visible to the exported usergroups | Yes | No | No | | + | ^**''<[[#groups]]>''**| Visibility of article, i.e. only visible to the exported groups | Yes | No | No | |
^**''<[[#bonuses]]>''**| Bonus value to rank certain articles higher than others | No | No | No | | ^**''<[[#bonuses]]>''**| Bonus value to rank certain articles higher than others | No | No | No | | ||
^**''<[[#salesfrequencies]]>''**| Amount of sold items of this article | Yes | No | No | | ^**''<[[#salesfrequencies]]>''**| Amount of sold items of this article | Yes | No | No | | ||
^**''<[[#dateAddeds]]>''**| Date current article was added | Yes | No | No | | ^**''<[[#dateAddeds]]>''**| Date current article was added | Yes | No | No | | ||
^**''<[[#sorts]]>''**| Value for custom sorting of search results | No | No | No | | ^**''<[[#sorts]]>''**| Value for custom sorting of search results | No | No | No | | ||
+ | ^**''<[[#visibilities]]>''**| Indicates the visibility of all/some products | No | No | No | | ||
^**''<[[#attributes]]>''**| Article categories and attributes. Will be filters | Yes | Yes| Yes, **also filterable** | | ^**''<[[#attributes]]>''**| Article categories and attributes. Will be filters | Yes | Yes| Yes, **also filterable** | | ||
^**''<[[#properties]]>''**| Additional information of article to be shown on search result listing | Yes | Yes | No | | ^**''<[[#properties]]>''**| Additional information of article to be shown on search result listing | Yes | Yes | No | | ||
Line 76: | Line 83: | ||
<note important>Due to runtime limitations the XML-export has to be [[https://docs.findologic.com/doku.php?id=xml_export_documentation:xml_request_and_response|paginated]].</note> | <note important>Due to runtime limitations the XML-export has to be [[https://docs.findologic.com/doku.php?id=xml_export_documentation:xml_request_and_response|paginated]].</note> | ||
+ | |||
+ | <note important>You have to use double quotes to seperate XML attributes like "count" or "total". Single quotes are not supported at the moment.</note> | ||
<note tip>**Using our export toolkit?** | <note tip>**Using our export toolkit?** | ||
Line 120: | Line 129: | ||
* ''<ordernumbers>'' contains 1+ ''<ordernumber>''-tags. | * ''<ordernumbers>'' contains 1+ ''<ordernumber>''-tags. | ||
* ''<ordernumber>'' contains an article-number like internal arcticle number, EAN, ISBN, ... | * ''<ordernumber>'' contains an article-number like internal arcticle number, EAN, ISBN, ... | ||
+ | |||
+ | <note>This field should be used only for article numbers/EANs/SKUs and NOT for the number that a user gets when an order is being submitted in your shop.</note> | ||
<note tip>**Using our export toolkit?** | <note tip>**Using our export toolkit?** | ||
Line 353: | Line 364: | ||
* ''<bonuses>'' contains 1+ ''<bonus>''-tags, distinguished via the usergroup-attribute. | * ''<bonuses>'' contains 1+ ''<bonus>''-tags, distinguished via the usergroup-attribute. | ||
- | * ''<bonus>'' contains a bonus value (between -0.9 and 3) to lower or raise the ranking of a product in general. | + | * ''<bonus>'' contains a bonus value (between -0.9 and 3) to lower or raise the ranking of a product in general. |
- | * If you have product pushing enabled in your customer login, be aware that these values will override the current values at the concerned products in the bonus field. | + | |
<note>Please note, that the value -1 will be overridden with the value -0.9 in the import.</note> | <note>Please note, that the value -1 will be overridden with the value -0.9 in the import.</note> | ||
Line 379: | Line 389: | ||
* ''<salesFrequency>'' contains a non-negative integer value for the salesfrequency which can be used for sorting. | * ''<salesFrequency>'' contains a non-negative integer value for the salesfrequency which can be used for sorting. | ||
* If you want your default order to be dynamically calculated including the exported ''<salesFrequency>''-values, please contact our support team. | * If you want your default order to be dynamically calculated including the exported ''<salesFrequency>''-values, please contact our support team. | ||
- | |||
- | <note>Please note, that negative values will be overridden with the value 0 in the import.</note> | ||
<note tip>**Using our export toolkit?** | <note tip>**Using our export toolkit?** | ||
Line 426: | Line 434: | ||
* ''<sorts>'' contains 1+ ''<sort>''-tags, distinguished via the usergroup-attribute. | * ''<sorts>'' contains 1+ ''<sort>''-tags, distinguished via the usergroup-attribute. | ||
* ''<sort>'' contains a custom integer value which can be used for sorting. | * ''<sort>'' contains a custom integer value which can be used for sorting. | ||
- | * If you want your default order to be dynamically calculated including the exported ''<salesFrequency>''-values, please contact our support team. | + | * If you want your default order to be dynamically calculated including the exported ''<sort>''-values, please contact our support team. |
* You should not use negative values as ''<sort>''-values. | * You should not use negative values as ''<sort>''-values. | ||
+ | |||
+ | <note tip>**Using our export toolkit?** | ||
+ | |||
+ | Creating a sort element with [[https://github.com/findologic/libflexport/wiki#sort|libflexport]].</note> | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== visibilities ==== | ||
+ | |||
+ | <code xml> | ||
+ | [...] | ||
+ | <visibilities> | ||
+ | <visibile><![CDATA[]]></visibile> | ||
+ | <visibile usergroup=""><![CDATA[]]></visibile> | ||
+ | [...] | ||
+ | </visibilities> | ||
+ | [...] | ||
+ | </code> | ||
+ | |||
+ | * ''<visibilities>'' contains 1+ <visible>-tags, distinguished via the usergroup-attribute. | ||
+ | * ''<visible>'' must contain lowercase **true** (or **1** as a replacement) for visible initial state or lowercase **false** (or **0** as a replacement) for invisible initial state. | ||
+ | * The default value of the default visible element (non-usergroup) is true if it did not exist. | ||
+ | * The default value of a visible element with the usergroup tag is the same value of the default visible element if it did not exist. | ||
+ | * If the visible element value is blank or one of the values (True, faLse, yes, no, -1 ….) , this will cause validation errors. | ||
<note tip>**Using our export toolkit?** | <note tip>**Using our export toolkit?** | ||
Line 659: | Line 691: | ||
---- | ---- | ||
+ | ==== Using variants in search results ==== | ||
+ | |||
+ | <code xml> | ||
+ | [...] | ||
+ | <variants> | ||
+ | <variant id="variant_3"> | ||
+ | ... | ||
+ | </variant> | ||
+ | <variant id="variant_4"> | ||
+ | ... | ||
+ | </variant> | ||
+ | </variants> | ||
+ | [...] | ||
+ | </code> | ||
+ | |||
+ | A **<variant>** can contain the following data. This data is structured the same as for its parent. | ||
+ | |||
+ | * ordernumber, required | ||
+ | * attributes, required | ||
+ | * name, optional | ||
+ | * price, optional. In case it is not set, the parent price will be used as default. | ||
+ | * groups, optional. | ||
+ | * overriddenPrice, optional | ||
+ | * properties, optional | ||
+ | |||
+ | <note important>No other fields are allowed.</note> | ||
+ | <note tip>Currently it is not possible to use variants and usergroups together. | ||
+ | Variants only work without usergroups. But using groups is still possible. So filtering by group is working fine.</note> | ||
==== Example XML ==== | ==== Example XML ==== | ||
Line 767: | Line 827: | ||
<usergroup>LNrLF7BRVJ0toQ==</usergroup> | <usergroup>LNrLF7BRVJ0toQ==</usergroup> | ||
<usergroup>PN3enVBRVH0To(/</usergroup> | <usergroup>PN3enVBRVH0To(/</usergroup> | ||
- | <usergroup>cHBw</usergroup> | ||
</usergroups> | </usergroups> | ||
<bonuses> | <bonuses> |