ST_ISVALIDDETAILED (NoSQL クエリ)

適用対象: NoSQL

指定された GeoJSON PointPolygon、または LineString 式が有効であるか無効であるかの理由を示すブール値を含んだ JSON 値を返します。

構文

ST_ISVALIDDETAILED(<spatial_expr>)  

引数

説明
spatial_expr 有効な任意の GeoJSON PointPolygon、または LineString 式です。

戻り値の型

指定された GeoJSON ポイントまたはポリゴン式が有効かどうかを示すブール値を含む JSON オブジェクトを返します。 無効な場合、オブジェクトには理由が文字列値として追加で含まれます。

複数のオブジェクトの有効性を確認する方法の例を次に示します。

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."
    }
  }
]

注釈

  • GeoJSON 仕様では、Polygon 内のポイントを反時計回りの順序で指定する必要があります。 時計回りに指定された Polygon は、その中の領域を逆にしたものを表します。