Cette rubrique s'applique uniquement à la configuration IBM Business Automation Workflow Advanced.

Gestion des objets et des tableaux nuls et vides au format JSON

Décrit la gestion des objets et des tableaux nuls et vides utilisés dans les données JSON.

Les données JSON ont le concept d'objets et de tableaux nuls et vides. Cette section explique comment chacun de ces concepts est mappé sur les concepts d'objet de données de nul et non défini.

Valeurs nulles

Le format JSON possède une valeur spéciale appelée nulle qui peut être définie sur n'importe quel type de données y compris les types tableaux, objets, numéro et booléen.

34	{				        Schema types
35	    "id":null,				(integer)
36	    "firstName": null,			(string)
37	    "address": null,			(Address complex type with maxOccurs = 1)
38	    "homeAddresses":null		(Address complex type with maxOccurs > 1)
39	    "phoneNumbers": null		(string with maxOccurs > 1)
40	}

En tenant compte de l'exemple ci-dessus où les données au format JSON avec une valeur nulle sont analysées dans un objet de données, ce qui suit est vrai :

  • id – Si la propriété est définie comme une valeur pouvant être nulle dans le schéma, elle correspond à la valeur nulle. Si la propriété n'est pas définie comme pouvant être une valeur nulle, une exception sera générée.
  • firstName – La valeur nulle est définie sur la propriété.
  • address – Si la propriété est définie comme une valeur pouvant être nulle dans le schéma, elle a pour valeur null. Si la propriété n'est pas définie comme pouvant être une valeur nulle, une exception sera générée.
  • homeAddresses - Le schéma n'autorise pas l'utilisation d'une valeur pouvant être nulle pour cette propriété. Elle ne sera donc pas définie.
  • phoneNumbers – Cette propriété doit être définie comme une valeur pouvant prendre la valeur nulle dans le schéma. Sinon, une exception est générée.

Lors de la sérialisation vers JSON, si la valeur d'une propriété dans l'objet de données est nulle, elle sera alors sérialisée en tant que JSON nul.

Propriété non définie

La non existence d'une propriété à partir des données JSON est mappé sur un attribut non défini dans l'espace de l'objet de données. Si la propriété dans l'objet de données n'est pas définie, alors la propriété ne sera pas affichée dans les données JSON.

Propriété vide

Le concept vide JSON est applicable aux tableaux et objets comme illustré ci-dessous.

41	{
42	    "address":{}
43	     "homeAddresses":[]
44	      "phoneNumbers":[]
45	}

Dans le cas d'une adresse, un objet de données d'adresse vide est créé. L'objet de données n'a pas de concept de liste vide. Aucune action n'est donc prise pour l'objet de données en ce qui concerne ces deux propriétés.