QGIS Land Survey Codification (QLSC) - Specification#

The plugin uses its own exchange format named QLSC (.qlsc) which is in fact a YAML file under the hood.

Implementation#

The codification files are read and write using the Python YAML implementation (PyYAML), storing the tags into the files, as described in the package documentation.

Structure#

Here is the typical structure of a codification file:

AllPoints: {Layer: <GEOPACKAGE_PATH>|layername=<LAYERNAME>, isChecked: <true|false>}
CodeSeparator: <A CHARACTER>
Codification:
'<CODE>':
    Attributes:
    - !!python/tuple [<COLUMN_NAME>, <EXPRESSION or special value>]
    Description: '<A DESCRIPTION>'
    GeometryType: '<GEOMTERYTYPE FROM THE VALID TYPE>'
    Layer:<GEOPACKAGE_PATH>|layername=<LAYERNAME>
ErrorPoints: {Layer: <GEOPACKAGE_PATH>|layername=<LAYERNAME>, isChecked: <true|false>}
BoundingGeometry:
    BoundingGeometryType: <CODE_GEOMETRY>
    Layer:<GEOPACKAGE_PATH>|layername=<LAYERNAME>
    isChecked: true
ParameterSeparator: '<A CHARACTER>'
  • AllPoints: the layer that can receive all the points of the survey

  • CodeSeparator: the character for separating codes

  • Codification: contains all the codes used by the codification according to this convention.

    • Attributes: a tuple list (column: expression) for adding attributes into the table

    • Description: the code description

    • GeometryType: the type of geometry (see available list)

    • Layer: the layer that will receive the geometry from the codified survey

  • ErrorPoints: the layer that can receive all the error points of the survey

  • BoundingGeometry: information on the layer receiving the calculation and the type of the bounding box

  • ParameterSeparator: the character for separating the parameters

Example#

Examples are available in the folder tests/fixtures of the repository. For instance, here is the file used in the demo dataset: