About the SYS Field Name Prefix

While reviewing the fields associated with an item in the Content Browser, you might have noticed some field names with the prefix sys (see Inspect Items With the Content Browser). These fields may appear redundant, since their value is identical to the value of fields with the same name, minus the sys prefix.

Examples
  • date and sysdate

  • filetype and sysfiletype

  • size and syssize

These field pairs coexist for compatibility reasons. In Coveo Enterprise Search (CES), the names of the system fields are prefixed with sys (Coveo Enterprise Search 7.0). This prefix was abandoned in the cloud version of Coveo. However, for backward compatibility reasons the Coveo REST Search API still includes the older field names.

Since February 2016, the Coveo JavaScript Search Framework leverages a Coveo REST Search API version that ensures that both field names can be used, i.e., with and without the sys prefix. This accommodates all customers, regardless of their index version. Therefore, you may build search page templates and make queries leveraging either field name without any noticeable difference (see Configure JavaScript Search Result Templates and Coveo Query Syntax).

Important

In a future version of the Coveo REST Search API, fields prefixed with sys won’t be available anymore, regardless of the index used. Therefore, future Coveo REST Search API releases will alter the functioning of search pages built using sys field names. Such a major breaking change will be announced in the Coveo Relevance Cloud New Features page.

To prepare for these future upgrades and keep your Coveo-powered search page running smoothly, you should make sure that your search page doesn’t encompass field names with the sys prefix anymore.

Older Coveo JavaScript Search Framework versions leverage different versions of the Coveo REST Search API. These versions handle field names with the sys prefix regardless of whether you use a Coveo or CES index. If you use such a JavaScript Search Framework version, you must use field names with the sys prefix.

What's next for me?