Filtering

You can filter results by using the property parameter, which is used to apply a specific operator against a given JSON property within the retrieved resources. Supported operators include:

OperatorDescriptionExample
==Filters by whether the property equals the provided value.property=title==test
!=Filters by whether the property does not equal the provided value.property=title!=test
<Filters by whether the property is less than the provided value.property=version<5
>Filters by whether the property is greater than the provided value.property=version>5
<=Filters by whether the property is less than or equal to the provided value.property=version<=5
>=Filters by whether the property is greater than or equal to the provided value.property=version>=5
(None)Stating only the property name returns only entries where the property exists.property=title
TIP
You can use the property parameter to filter schema field groups by their compatible class. For example, property=meta:intendedToExtend==https://ns.adobe.com/xdm/context/profile returns only field groups that are compatible with the XDM Individual Profile class.

Compatibility Mode

Experience Data Model (XDM) is a publicly documented specification, driven by Adobe to improve the interoperability, expressiveness, and power of digital experiences. Adobe maintains the source code and formal XDM definitions in an open source project on GitHub. These definitions are written in XDM Standard Notation, using JSON-LD (JavaScript Object Notation for Linked Data) and JSON Schema as the grammar for defining XDM schemas.

When looking at formal XDM definitions in the public repository, you can see that standard XDM differs from what you see in Adobe Experience Platform. What you are seeing in Experience Platform is called Compatibility Mode, and it provides a simple mapping between standard XDM and the way it is used within Experience Platform.

How Compatibility Mode works

Compatibility Mode allows the XDM JSON-LD model to work with existing data infrastructure by altering values within standard XDM while keeping the semantics the same. It uses a nested JSON structure, displaying schemas in a tree-like format.

The main difference you will notice between standard XDM and Compatibility Mode is the removal of the “xdm:” prefix for field names.

The following is a side-by-side comparison showing birthday-related fields (with “description” attributes removed) in both standard XDM and Compatibility Mode. Notice that the Compatibility Mode fields include a reference to the XDM field and its data type in the “meta:xdmField” and “meta:xdmType” attributes.

Standard XDMCompatibility Mode
{
  "xdm:birthDate": {
    "title": "Birth Date",
    "type": "string",
    "format": "date"
  },
  "xdm:birthDayAndMonth": {
    "title": "Birth Date",
    "type": "string",
    "pattern": "[0-1][0-9]-[0-9][0-9]"
  },
  "xdm:birthYear": {
    "title": "Birth year",
    "type": "integer",
    "minimum": 1,
    "maximum": 32767
  }
}

{
  "birthDate": {
    "title": "Birth Date",
    "type": "string",
    "format": "date",
    "meta:xdmField": "xdm:birthDate",
    "meta:xdmType": "date"
  },
  "birthDayAndMonth": {
    "title": "Birth Date",
    "type": "string",
    "pattern": "[0-1][0-9]-[0-9][0-9]",
    "meta:xdmField": "xdm:birthDayAndMonth",
    "meta:xdmType": "string"
  },
  "birthYear": {
    "title": "Birth year",
    "type": "integer",
    "minimum": 1,
    "maximum": 32767,
    "meta:xdmField": "xdm:birthYear",
    "meta:xdmType": "short"
  }
}