Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CswCatalogGroup: add support for nested Terria catalogues (like TerriaReference) #6883

Open
pvgenuchten opened this issue Sep 8, 2023 · 2 comments
Labels
Community Issue An issue raised by the community

Comments

@pvgenuchten
Copy link

I have a scenario where users want to describe terria maps in a catalogue. Current challenges

  • the csw-catalogue-group filters all records which do not link to a wms, it should include records which link to a terria map
  • the data link is some form of a map definition, for example http://foo.com/?start={share-map-definition}, or foo.com/#mymap (suggestions?). Would be interesting to load those layers on top of the existing map? Or better to load in a new window?

is this a useful usage scenario for people?

@nf-s
Copy link
Contributor

nf-s commented Sep 11, 2023

This is a interesting use-case of CSW - I don't believe I have come across it before. I think there would be challenges with applying startData when a user clicks on a record like this. But, I think it would be relatively easy to have a CSW record with a data link to a Terria Catalog JSON file that gets loaded as a "sub-catalog" - we already have a function called TerriaReference.

For example

{
  "catalog": [
    {
      "name": "agriculture",
      "url": "https://terria-catalogs-public.storage.googleapis.com/nationalmap/catalog/agriculture/prod.json",
      "id": "agriculture",
      "type": "terria-reference",
      "isGroup": true
    }
  ]
}
  • Open this link
  • Open catalog and click on "Some external catalog"
  • This will load an external catalog (here)

This can also be used to load single items - for example

{
  "catalog": [
    {
      "name": "Forests of Australia",
      "path": [
        "cEynH3ca",
        "SjtbqJgr"
      ],
      "type": "terria-reference",
      "url": "https://terria-catalogs-public.storage.googleapis.com/nationalmap/catalog/agriculture/prod.json"
    }
  ]
}
  • Open this link
  • here the path property is an array of nested groups inside the external catalog
    • "cEynH3ca", "SjtbqJgr" maps to
    • "Agriculture" -> "Forests of Australia (2018)"

We would need to add some way of matching a CSW Record URI protocol or scheme as a TerriaReference - and maybe somehow add some support for the path property

@pvgenuchten
Copy link
Author

A potential service type/protocol would be ‘terria-map-config’,interesting to register it then at
https://github.com/OSGeo/Cat-Interop

ogc also has a standard called ows-context which is a subset of a terria map config, but still interesting for interoperability. Ows context already has a assigned service type in cat interop

@nf-s nf-s changed the title Catalogue record describing a Terria map CswCatalogGroup: add support for nested Terria catalogues (like TerriaReference) Sep 12, 2023
@nf-s nf-s added the Community Issue An issue raised by the community label Sep 12, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Community Issue An issue raised by the community
Projects
None yet
Development

No branches or pull requests

2 participants