Référence d'extension de validation DTMI
Ajoutez une extension de validation DTMI à votre modèle de jumeau numérique afin de pouvoir définir des règles de validation de données à l'aide des propriétés de validation de schéma JSON.
Dans les modèles jumeaux numériques, utilisez les spécifications de validation de schéma JSON pour ajouter des propriétés de validation aux données ingérées. Pour savoir comment utiliser l'extension DTMI dans votre modèle de jumeau numérique, voir Scénario : Ajouter une validation de schéma JSON à un modèle de jumeau numérique.
- Pour les propriétés primitives telles que les chaînes ou les entiers, les contraintes de validation sont ajoutées en tant que propriétés apparentées à côté du champ de schéma dans la propriété ou la définition de télémétrie.
- Pour les tableaux, les validations s'appliquent au tableau lui-même, par exemple
minItemsouuniqueItems, sont définies comme des éléments apparentés du schéma de tableau, tandis que les contraintes qui s'appliquent à chaque élément, telles que les intervalles de valeurs ou les modèles de chaîne, qui sont placés dans le schéma de tableau, en tant que propriétés apparentées àelementSchema.
La plate-forme IoT prend en charge les mots clés de validation de schéma JSON suivants :
- Instances numériques, notamment :
numberetinteger - Chaînes :
"schema": "string" - Tableaux
minItem,maxItemsetuniqueItems
Pour la validation
exclusiveMinimum et exclusiveMaximum, lorsque vous utilisez le type de schéma unsignedLong, les valeurs peuvent être converties en doubles si elles dépassent l'intervalle d'une longueur standard. Cette conversion peut entraîner une perte de précision, de sorte que les valeurs proches de exclusiveMinimum ou exclusiveMaximum risquent de ne pas réussir la validation même si elles semblent valides.| Validation | Type de données | Valide sur ces @types | S'applique aux types de schéma | Exemples |
|---|---|---|---|---|
| Nombre | Tableau CommandRequest CommandResponse Enum Champ MapValue Propriété Télémétrie |
| |
| Nombre | Tableau CommandRequest CommandResponse Enum Champ MapValue Propriété Télémétrie |
| |
| Entier | Tableau CommandRequest CommandResponse Enum Champ MapKey MapValue Propriété Télémétrie |
| |
multipleOf | Nombre | Tableau CommandRequest CommandResponse Enum Champ MapValue Propriété Télémétrie |
| |
pattern | Chaîne | Tableau CommandRequest CommandResponse Enum Champ MapKey MapValue Propriété Télémétrie |
| |
| Entier | Tableau CommandRequest CommandResponse Champ MapValue Propriété Télémétrie | Schéma de tableau (tous les types primitifs) | |
uniqueItems | Boolean | Tableau CommandRequest CommandResponse Champ MapValue Propriété Télémétrie | Schéma de tableau (tous les types primitifs) | |