Skip to content

Conversation

@avillar
Copy link

@avillar avillar commented Dec 1, 2025

Overview

This PR depends on GH-2171. It provides a series of UI components to enhance the HTML views of feature and stac items when a JSON-LD context is available, by mapping the object properties (and linked data values) to their corresponding semantic terms, resolving the terms, and retrieving a human-friendly label and description.

Additional information

Arrow functions are used, so ES6 is required. They could be replaced and the code made fully ES5 compatible, though.

<script src="..."> dependencies is to rdflib.js and to jsonld-ui-utils are included in the HTML.

Dependency policy (RFC2)

  • I have ensured that this PR meets RFC2 requirements

Updates to public demo

Contributions and licensing

(as per https://github.com/geopython/pygeoapi/blob/master/CONTRIBUTING.md#contributions-and-licensing)

  • I'd like to contribute feature "JSON-LD UI enhancements (HTML pages)" to pygeoapi. I confirm that my contributions to pygeoapi will be compatible with the pygeoapi license guidelines at the time of contribution
  • I have already previously agreed to the pygeoapi Contributions and Licensing Guidelines

@rob-metalinkage
Copy link

@rob-metalinkage
Copy link

also here: https://defs-dev.opengis.net/bblocks-pygeoapi/collections/ogc.osc.geodcat-stac-earthcode.experiments/items/polarwarp

in this case you will notice that much of the STAC and records element mapping is not fully realised as Linked Data - but that is why this capability is very important as part of a testing regime.

@tomkralidis tomkralidis self-requested a review December 1, 2025 23:41
Copy link
Member

@webb-ben webb-ben left a comment

Choose a reason for hiding this comment

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

How does this interact with #916 and #1954?

This is an implementation of #1678, right?

Comment on lines +691 to +694
Additionally, some semantically enabled resources may provide their own ``@id`` (i.e., URI) value,
which may be different from the one used by pygeoapi. The ``replace_id_field`` setting
inside ``linked-data`` can be used to instruct pygeoapi to override a given property
in the object with its own item URL:
Copy link
Member

Choose a reason for hiding this comment

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

How does this differ from the uri_field in

uri_field: uri # field corresponding to the Uniform Resource Identifier (see Linked Data section)
. Is one specific to STAC and the other specific to items?

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.

3 participants