Partager via


ST_ISVALIDDETAILED (requête NoSQL)

S’APPLIQUE À : NoSQL

Retourne une valeur JSON contenant une valeur booléenne si l’expression Point, Polygone ou LineString GeoJSON spécifiée est valide et, dans l’affirmative, la raison.

Syntaxe

ST_ISVALIDDETAILED(<spatial_expr>)  

Arguments

Description
spatial_expr Toute expression GeoJSON Point, Polygone ou LineString valide.

Types de retour

Renvoie un objet JSON contenant une valeur booléenne si l’expression de points ou de polygones GeoJSON spécifiée est valide. Si elle n’est pas valide, l’objet contient également la raison sous forme de valeur de chaîne.

Exemples

L’exemple suivant montre comment vérifier la validité de plusieurs objets.

SELECT VALUE {
    valid: ST_ISVALIDDETAILED({ 
        "type": "Point",
        "coordinates": [-84.38876194345323, 33.75682784306348] 
    }),
    invalid: ST_ISVALIDDETAILED({ 
        "type": "Point",
        "coordinates": [133.75682784306348, -184.38876194345323] 
    })
}
[
  {
    "valid": {
      "valid": true
    },
    "invalid": {
      "valid": false,
      "reason": "Latitude values must be between -90 and 90 degrees."
    }
  }
]

Remarques

  • La spécification GeoJSON exige que les points d’un polygone soient spécifiés dans le sens inverse des aiguilles d’une montre. Un polygone spécifié dans le sens horaire représente l’inverse de la région qu’il contient.