distributed-text-services/specifications

Expressing metadata: the IIIF way

PonteIneptique opened this issue · 1 comments

So I am having a look at how Manifests are built in JSON:

{
  "@context": "http://iiif.io/api/presentation/3/context.json",
  "id": "https://example.org/iiif/book1/manifest",
  "type": "Manifest",
  "label": { "en": [ "Book 1" ] },
  "metadata": [
    {
      "label": { "en": [ "Author" ] },
      "value": { "none": [ "Anne Author" ] }
    },
...

I really like the [label/value] approach that could maybe apply to extensions (cc #215) but I also like a lot the { "en": Set(Values)} approach. Can either or both be chosen in our case ?

I feel like the Object -> Lang -> Values structure negates LOD to some extent (ie, you can't link IDs as values) but I'll honestly ask: who does that? And I'll then ask, if someone does it, can we apply this structure in a way that would be compliant with @id ?

We discussed this possibility in the 28-10-2022 meeting (@monotasker, @hcayless, @jonathanrobie, @PonteIneptique).

We prefer a standardized vocabulary, while allowing people to use alternative vocabularies through the extensions property. We also prefer to have localization based on the vocabulary (both for dublinCore and extensions).