private static Map<String, String> parseQuery(URI uri) {
    String query = uri.getRawQuery();
    Map<String, String> result = new HashMap<>();
    if (query != null) {
      for (var part : query.split("&")) {
        var split = part.split("=", 2);
        result.put(
          URLDecoder.decode(split[0], StandardCharsets.UTF_8),
          split.length == 1 ? "true" : URLDecoder.decode(split[1], StandardCharsets.UTF_8)
        );
      }
    }
    return result;
  }
Definition for a tileset, parsed from a URI-like string.
<p>
{@link #from(String)} can accept:
<ul>
<li>A platform-specific absolute or relative path like {@code "./archive.mbtiles"} or
{@code "C:\root\archive.mbtiles"}</li>
<li>A URI pointing at a file, like {@code "file:///root/archive.pmtiles"} or
{@code "file:///C:/root/archive.pmtiles"}</li>
</ul>
<p>
Both of these can also have archive-specific options added to the end, for example
{@code "output.mbtiles?compact=false&page_size=16384"}.

@param format  The {@link Format format} of the archive, either inferred from the filename extension or the
               {@code ?format=} query parameter
@param scheme  Scheme for accessing the archive
@param uri     Full URI including scheme, location, and options
@param options Parsed query parameters from the definition string
planetiler-core/src/main/java/com/onthegomap/planetiler/archive/TileArchiveConfig.java