Skip to content

WFS keywords#43

Open
esgn wants to merge 2 commits intomainfrom
41-keywords
Open

WFS keywords#43
esgn wants to merge 2 commits intomainfrom
41-keywords

Conversation

@esgn
Copy link
Copy Markdown
Member

@esgn esgn commented Apr 16, 2026

closes #41

Summary

  • Add WFS collection keyword extraction from GetCapabilities
  • Filter generic/noisy WFS keywords from application collections
  • Add wfs-keywords CLI command to inspect public GPF WFS keyword occurrences
  • Index collection keywords in MiniSearch
  • Preserve WFS-provided keywords through merge while keeping overwrites from overriding them
  • Normalize README line endings to LF and document the new CLI command

Details

  • WfsClient now reads keywords through getFeatureTypeSummary() while keeping getFeatureTypes() as the collection listing source.
  • Generic keywords such as feature, features, WFS, demo, test, and similar noisy values are filtered from stored collections.
  • The CLI command wfs-keywords queries the public GPF WFS directly and prints keyword occurrence counts, with an optional --filtered mode.
  • MiniSearch now indexes the optional keywords field and supports fields: ['keywords'].
  • CollectionOverwrite no longer accepts keywords, making the merge contract explicit: keywords come from the WFS source, not overwrite files.

Validation

  • npm run typecheck
  • npm test
  • git diff --check

@esgn esgn requested a review from mborne April 16, 2026 16:16
Comment thread src/helpers/keywords.ts
return GENERIC_COLLECTION_KEYWORDS.has(normalizeKeyword(keyword));
}

function cleanCollectionKeywords(
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

comment function to explain that it normalize keywords (lowercase without diacritics), filter duplicates and remove generic ones.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Retrieve keywords from DescribeFeatureType

2 participants