Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions geospatial-utils/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ class ConverterConfiguration(ImplicitDict):
name: str
ed318_additions: ED318Additions
adjusters: list[str]
excluded_features_ed318_identifiers: list[str] = []


class ED318Additions(ImplicitDict):
Expand Down
4 changes: 4 additions & 0 deletions geospatial-utils/configs/FOCA.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,10 @@
"adjusters": [
"foca"
],
"excluded_features_ed318_identifiers": [
"CTR0004",
"CTR0015"
],
"ed318_additions": {
"default_lang": "en-GB",
"provider": [
Expand Down
21 changes: 21 additions & 0 deletions geospatial-utils/main.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
from fileutils import ed269
from implicitdict import ImplicitDict
from loguru import logger
from uas_standards.eurocae_ed318 import Feature

version = os.environ.get("GEOSPATIAL_UTILS_VERSION", "unknown")

Expand Down Expand Up @@ -74,6 +75,26 @@ def main():

ed318_data = getattr(adjusters, adjuster).adjust(ed318_data)

# Filter out intentionally excluded features
if (
"excluded_features_ed318_identifiers" in config
and config.excluded_features_ed318_identifiers
):

def _should_keep(feat: Feature) -> bool:
if "properties" not in feat or feat.properties is None:
return True
return (
feat.properties.identifier
not in config.excluded_features_ed318_identifiers
)

filtered_features = list(filter(_should_keep, ed318_data.features))
logger.info(
f"Excluded {len(ed318_data.features) - len(filtered_features)} feature(s)"
)
ed318_data.features = filtered_features

# Save to file
output = pathlib.Path(args.output_file)
json_output = json.dumps(ed318_data)
Expand Down