sec_interp.core.validation.layer_validator module

Spatial validation for layers (QGIS-agnostic).

sec_interp.core.validation.layer_validator.validate_crs_compatibility(metadata_list: list[LayerMetadata]) → tuple[bool, str]

Validate that a list of layers have compatible Coordinate Reference Systems.

If layers have different CRSs, it returns a warning message instead of an error.

sec_interp.core.validation.layer_validator.validate_geology_requirements(metadata: LayerMetadata, field_name: str | None, context: ValidationContext | None = None) → tuple[bool, str]

Validate geology layer requirements (polygons and attribute field).

sec_interp.core.validation.layer_validator.validate_layer_geometry(metadata: LayerMetadata, expected_type: str) → tuple[bool, str]

Validate that a vector layer matches the expected geometry type.

sec_interp.core.validation.layer_validator.validate_layer_has_features(metadata: LayerMetadata) → tuple[bool, str]

Validate that a vector layer contains at least one feature.

sec_interp.core.validation.layer_validator.validate_raster_band(metadata: LayerMetadata, band_number: int) → tuple[bool, str]

Validate that a specified band number exists in the raster layer.

sec_interp.core.validation.layer_validator.validate_structural_requirements(metadata: LayerMetadata, dip_field: str | None, strike_field: str | None, context: ValidationContext | None = None) → tuple[bool, str]

Validate structural layer requirements (geometry and attribute fields).