-
Notifications
You must be signed in to change notification settings - Fork 1
FSS
The GeoDMS can read and write data from an own primary data format, called FSS, with the FSS StorageManager. This format has the following advantages:
- It is a binary, fast format.
- It can store vector data, grid data and non spatial data.
- It supports the hierarchical structures of GeoDMS configurations.
- It supports both storing and reading tiled/segmented data.
The disadvantage of the format is that it is only supported by the GeoDMS. We therefore advise to use the FSS as exchange format between GeoDMS projects.
unit<uint32> place := XML/woonplaats/ParsedXML/bag_LVC_Woonplaats
, StorageName = "= FSSDir + '/place.fss'"
{
attribute<rdc_mm> geom (polygon) := XML/woonplaats/geoBuilder/result;
attribute<string> id := bag_LVC_identificatie;
attribute<string> name := bag_LVC_woonplaatsNaam;
container meta
{
attribute<string> status (..) := bag_LVC_woonplaatsStatus;
}
}
unit<uint32> place
: StorageName = "= FSSDir + '/place.fss'"
, StorageReadOnly = "True"
{
attribute<geometries/rdc_mm> geom (polygon);
attribute<string> id;
attribute<string> name;
container meta
{
attribute<string> status (..);
}
}
An FSS Storage always needs to be configured for a unit, as in the storage the number of entries is stored. Configuring a FSS for a container results in an error while reading the data.
The three attributes geom, id and name are stored as files with their name and .dmsdata extension in the place.fss folder (or with their name and a consecutive number in case of tiled/segmented data).
The attribute status is stored in a subfolder place.fss/meta. If data is stored in such subfolders, reading the data from the fss files requires this same hierarchy in your configuration (as in the example).
The value types of the attribute read from the fss files need to match with the value type of the writing configuration script. Use this script to determine these value types and the hierarchy of the fss storage.
unit<uint32> place
: StorageName = "= FSSDir + '/place.fss'"
, StorageReadOnly = "True"
{
attribute<geometries/rdc_mm> geom (polygon);
attribute<string> id;
attribute<string> name;
container meta :=
for_each_ndv(
status_types/name
, place
, string
);
}
GeoDMS ©Object Vision BV. Source code distributed under GNU GPL-3. Documentation distributed under CC BY-SA 4.0.