Skip to content

Feature Class

A dataset in GIS service is a Feature Class, which consists of many Features. Each feature has a Geometry and a set of properties (also called attributes). All Features within the same Feature Class have the same set of properties and the geometries are in the same coordinate system.i

Typical geometry types are points, lines, and polygons, as illustrated in the image below. image.png image.png image.png

GeoJson and deviations from it

We use GeoJson to represent geometries in JSON. GeoJson is a specification which describes also "Features", "FeatureCollections", however our GIS service has several notable deviations:

  • Feature Class is serialized as an object of {"type": "FeatureCollection"}i but our feature classes include also an array of attribute definitions in the attributes property.
  • Our feature classes can contain only features of the same geometry type and the same set of attributes (feature properties).
  • In GeoJson, coordinate systems are often serialized as { "crs": {"properties": {"name": "EPSG:4326" } } } but this definition is not mandatory and varies across different systems. We added a simple { "srid": <int> } property on feature class which is the ID of the coordinate system used.

Note on Feature serialization

In our Swagger documentation, we represent Feature as a plain json object ({}). The internal structure of our json Feature object matches GeoJson:

{
  "type": "Feature",
  "id": <int>,
  "geometry": <GeoJsonGeometry>,
  "properties": {
     "<string>": <object>,
  }
}

Feature Attribute data types

Features can have attributes of the following data types

  • Text : text
  • Date : date and time
  • Int32 : 32 bit integer number
  • Int64 : 64 bit integer number
  • Single : 32 bit floating point number
  • Double : 64 bit floating point number