Collections

RESO RCP-019 extended the RETS 1.9 standard to add support for multi-select fields (flag enums). Collection added the following function keywords, SET, LIST, INTERSECTION, DIFFERENCE, and UNION.

This added a set operation capability to the RETS 1.9 syntax. To further collections to make the capability operational within our rules, CRMLS added the following extensions:

  • ARRAY – Turns the string of the flag enum (“A, B, C”) into an array of three strings, “A”, “B”, and “C”.
  • COUNT – Returns the number of items within a result set, COUNT(ARRAY(.ENTRY.), where .ENTRY. is a flag enum containing the value “A, B, C”, would return an integer value of 3.

Examples

COUNT(INTERSECTION(ARRAY(SpecialListingConditions), SET('PBL'))) = 1   // 'Special Listing Conditions' field value must be of type 'Probate Listing'.
COUNT(INTERSECTION(ARRAY(BodyType), SET('TRIPLE'))) = 1   // body type is 'triple'