ST_ISVALIDDETAILED (consulta NoSQL)
APLICA-SE A: NoSQL
Retorna um valor JSON contendo um valor booleano se a expressão GeoJSON Point, Polygon ou LineString especificada for válida e, se inválida, o motivo.
Sintaxe
ST_ISVALIDDETAILED(<spatial_expr>)
Argumentos
Description | |
---|---|
spatial_expr |
Qualquer expressão válida GeoJSON Point, Polygon ou LineString . |
Tipos de devolução
Retorna um objeto JSON contendo um valor booleano que indica se o ponto GeoJSON especificado ou a expressão de polígono é válida. Se inválido, o objeto contém adicionalmente o motivo como um valor de cadeia de caracteres.
Exemplos
O exemplo a seguir como verificar a validade de vários objetos.
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."
}
}
]
Observações
- A especificação GeoJSON requer que os pontos dentro de um Polígono sejam especificados em ordem anti-horário. Um Polígono especificado em ordem horária representa o inverso da região dentro dele.