jupyterlab / jupyterlab-metadata-service

Linked data exploration in JupyterLab.
BSD 3-Clause "New" or "Revised" License
29 stars 16 forks source link

Improve reliability of JSON LD Outputs #41

Closed saulshanabrook closed 1 year ago

saulshanabrook commented 4 years ago

We have recently added a system for exporting JSON LD in notebook outputs and having it be registered in the linked data system: https://github.com/jupyterlab/jupyterlab-metadata-service/pull/38

It does this by using the data registry to find all the JSON LD datasets, including those in cell outputs, and scanning them for @ids which are looked up in the metadata registry.

There are two main problems with the current approach:

  1. If you explore a dataset and then add metadata about it, that metadata won't be registered. That is because currently the data registry has an assumption that the "views" of a dataset are static and no new views will be added after you first look at the dataset. This assumption is invalidated when you add new JSON LD outputs add the "Linked Data" view to datasets.
  2. Metadata will only be discovered on datasets which have been registered. This means, for the system to discover metadata from a cell in a notebook, you have to click on that cell while the metadata browser is open, so that the output is registered.

These are both really problems with the data registry, but I wanted to open an issue here so we can track this use case.