Open alhyss opened 2 years ago
Pour le vocabulaire à utiliser pour les types de géométries, la collection Geometries ISO 19107:2003 serait une option [^2].
[^2]: Voir aussi le vocabulaire Basic Datatypes from ISO 1900 series. Il est plus large, et définit des URI alternatives en minuscules pour la collection précitée.
Mais PostGIS connaît davantage de types, comme prévu par [le standard](https://www.ogc.org/standards/sfs (page 30 et suivantes)...
Anciennes formes (ne porte pas l'information sur la dimension, qui est de toute façon stockée par ailleurs[^1]) :
['GEOMETRY', 'GEOMETRYM', 'GEOMETRYCOLLECTION', 'GEOMETRYCOLLECTIONM', 'POINT', 'POINTM',
'MULTIPOINT', 'MULTIPOINTM', 'POLYGON', 'POLYGONM', 'MULTIPOLYGON', 'MULTIPOLYGONM', 'MULTILINESTRING',
'MULTILINESTRINGM', 'LINESTRING', 'LINESTRINGM', 'CIRCULARSTRING', 'CIRCULARSTRINGM', 'COMPOUNDCURVE',
'COMPOUNDCURVEM', 'CURVEPOLYGON', 'CURVEPOLYGONM', 'MULTICURVE', 'MULTICURVEM', 'MULTISURFACE',
'MULTISURFACEM', 'POLYHEDRALSURFACE', 'POLYHEDRALSURFACEM', 'TRIANGLE', 'TRIANGLEM', 'TIN', 'TINM']
[^1]: Du 'POINT'
de dimension 3 est du 'PointZ'
en nouvelle écriture, du 'POINT'
de dimension 4 est du 'PointZM'
. Idem pour les autres types.
Nouvelles formes (porte l'information sur la dimension) :
['Geometry', 'GeometryZ', 'GeometryM', 'GeometryZM', 'GeometryCollection', 'GeometryCollectionZ',
'GeometryCollectionM', 'GeometryCollectionZM', 'Point', 'PointZ', 'PointM', 'PointZM', 'MultiPoint',
'MultiPointZ', 'MultiPointM', 'MultiPointZM', 'Polygon', 'PolygonZ', 'PolygonM', 'PolygonZM',
'MultiPolygon', 'MultiPolygonZ', 'MultiPolygonM', 'MultiPolygonZM', 'MultiLineString', 'MultiLineStringZ',
'MultiLineStringM', 'MultiLineStringZM', 'LineString', 'LineStringZ', 'LineStringM', 'LineStringZM',
'CircularString', 'CircularStringZ', 'CircularStringM', 'CircularStringZM', 'CompoundCurve', 'CompoundCurveZ',
'CompoundCurveM', 'CompoundCurveZM', 'CurvePolygon', 'CurvePolygonZ', 'CurvePolygonM',
'CurvePolygonZM', 'MultiCurve', 'MultiCurveZ', 'MultiCurveM', 'MultiCurveZM', 'MultiSurface', 'MultiSurfaceZ',
'MultiSurfaceM', 'MultiSurfaceZM', 'PolyhedralSurface', 'PolyhedralSurfaceZ', 'PolyhedralSurfaceM',
'PolyhedralSurfaceZM', 'Triangle', 'TriangleZ', 'TriangleM', 'TriangleZM', 'Tin', 'TinZ', 'TinM', 'TinZM']
Mise en œuvre de décisions prises lors de la réunion n°4 du sous-groupe Métadonnées - cf. issue #21.
Méthodes de calcul à définir sur des catégories existantes :
dct:spatial / dcat:bbox
: emprise globale de la table.dct:spatial / dcat:centroid
: centroïde de la table.Ces propriétés sont calculées à partir de l'ensemble des champs de géométries de la table, au contraire de ce que proposent les fonctionnalités du bouton d'aide à la saisie des géométries, qui considèrent une couche, soit une table et un champ de géométrie particulier.
Gros point d'attention sur le calcul automatique pour des catégories de second niveau. Le mécanisme actuel le gère sans problème, mais le résultat risque de paraître très douteux. Il ne serait vraisemblablement pas opportun de mettre à jour tous les groupes de propriétés
dct:spatial
quand il y en a plusieurs... On pourrait considérer que le calcul ne porte que sur le premier groupe, ou n'autoriser que le calcul manuel dans ce cas (mais n'en serait que plus redondant avec les fonctionnalités d'aide à la saisie).Nouvelles catégories communes (noms à confirmer) + définition de leurs méthodes de calcul :
plume:rowCount
: nombre de lignes/enregistrements de la table.plume:columnCount
: nombre de colonnes/champs de la table.plume:geomType
: types de géométrie utilisés par la table.