This tool is designed to support a variety of metadata-related tasks, including:
- Making CSW (Catalogue Service for the Web) requests
- Generating service metadata
- Handling specific INSPIRE and HVD requirements
While it is primarily developed for use within PDOK, it may also be useful for other organizations working with geospatial metadata.
The logic for generating metadata is located in pkg/generator
.
See the metadata generator documentation for details on how it works and how to use it.
You can build the project using the generate.go
script, i.e. from the project root:
go run ./cmd/generate/generate.go
or from a specific directory:
cd cmd/generate
go run generate.go
This will:
- Generate CLI documentation in
docs/README.md
- Build the
pmt
executable in the current directory
For detailed information about the CLI commands and options, please refer to the CLI documentation.
The PDOK metadata tool supports shell completion for bash, zsh, fish, and pwsh shells. This feature helps you quickly navigate through commands and options by pressing the Tab key.
To enable bash completion, run:
# Add to your .bashrc or run in your terminal
source <(./pmt completion bash)
For a permanent setup, you can add the completion script to your bash completion directory:
./pmt completion bash > /etc/bash_completion.d/pmt
# or
./pmt completion bash > ~/.bash_completion.d/pmt
To enable zsh completion, run:
# Add to your .zshrc or run in your terminal
source <(./pmt completion zsh)
For a permanent setup, you can add the completion script to your zsh completion directory:
mkdir ~/.pmt/completion
./pmt completion zsh > "~/.pmt/completion/_pmt"
Add this to your .zshrc
and resource or reload terminal.
FPATH=$FPATH:~/.pmt/completion
autoload -Uz compinit
compinit
After setting up completion, you can use the Tab key to autocomplete commands, subcommands, and options when using the PDOK metadata tool.
MIT License
Copyright (c) 2024 Publieke Dienstverlening op de Kaart
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.