

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Correspondance de clé
<a name="attribute-key-matching"></a>

Utilisez l'`exists`opérateur dans une politique de filtrage pour faire correspondre les messages entrants en fonction de la présence ou de l'absence d'une propriété spécifique.
+ `exists`fonctionne uniquement sur les nœuds foliaires (attributs finaux de la structure).
+ Elle ne s'applique pas aux nœuds intermédiaires au sein d'une structure JSON imbriquée.
+ Utilisez `"exists": true` pour faire correspondre les messages entrants qui incluent la propriété spécifiée. La clé doit avoir une valeur non nulle et non vide.

  Par exemple, la propriété de politique suivante utilise l'opérateur `exists` avec une valeur de `true` :

  ```
  "store": [{"exists": true}]
  ```

  Elle correspond à toute liste d'attributs de message contenant la clé d'attribut `store`, comme :

  ```
  "store": {"Type": "String", "Value": "fans"}
  "customer_interests": {"Type": "String.Array", "Value": "[\"baseball\", \"basketball\"]"}
  ```

  Elle correspond également à l'un des corps de message suivants :

  ```
  {
      "store": "fans"
      "customer_interests": ["baseball", "basketball"]
  }
  ```

  Cependant, elle ne correspond à aucune liste d'attributs de message *sans* l'attribut de clé `store`, tel que :

  ```
  "customer_interests": {"Type": "String.Array", "Value": "[\"baseball\", \"basketball\"]"}
  ```

  Elle ne correspond pas non plus au corps de message suivant :

  ```
  {
      "customer_interests": ["baseball", "basketball"]
  }
  ```
+ Utilisez `"exists": false` pour faire correspondre les messages entrants qui *n'incluent pas* la propriété spécifiée.
**Note**  
`"exists": false` ne correspond que si au moins un attribut est présent. Si un jeu d'attributs est vide, le filtre ne correspond pas.

  Par exemple, la propriété de politique suivante utilise l'opérateur `exists` avec une valeur de `false` :

  ```
  "store": [{"exists": false}]
  ```

  Elle *ne correspond à aucune* liste d'attributs de message contenant la clé d'attribut `store`, comme :

  ```
  "store": {"Type": "String", "Value": "fans"}
  "customer_interests": {"Type": "String.Array", "Value": "[\"baseball\", \"basketball\"]"}
  ```

  Elle ne correspond pas non plus au corps de message suivant :

  ```
  {
      "store": "fans"
      "customer_interests": ["baseball", "basketball"]
  }
  ```

  Cependant, elle correspond à toute liste d'attributs de message *sans* l'attribut de clé `store`, tel que :

  ```
  "customer_interests": {"Type": "String.Array", "Value": "[\"baseball\", \"basketball\"]"}
  ```

  Elle correspond également au corps de message suivant :

  ```
  {
      "customer_interests": ["baseball", "basketball"]
  }
  ```