IIIF / trc

Technical Review Committee issue review
Apache License 2.0
1 stars 1 forks source link

Allow multiple values for homepage #4

Open tomcrane opened 5 years ago

tomcrane commented 5 years ago

API issue: https://github.com/IIIF/api/issues/1759

In the current beta draft of Presentation 3, the homepage property can have at most one value:

https://preview.iiif.io/api/image-prezi-rc2/api/presentation/3.0/#homepage

If a publisher uses different URLs to deliver web pages in different languages, it would not be possible to link a manifest to all of these pages. For example:

https://example.org/objects/3456/en https://example.org/objects/3456/cy

The proposal is to define homepage as an array, similar to other linking properties such as rendering, to permit the following:

  "homepage": [
    {
      "id": "https://example.org/objects/3456/en",
      "type": "Text",
      "format": "text/html"
      "language": ["en"]
    },
    {
      "id": "https://example.org/objects/3456/cy",
      "type": "Text",
      "format": "text/html"
      "language": ["cy"]
    }
  ]

In JSON-LD terms, homepage becomes a @set.

azaroth42 commented 5 years ago

In 3 there's a new property called homepage that replaces related, to tidy up the linking properties. Homepage is foaf:homepage, a web page where you'll find out about this thing. In 2 you would follow related, in 3 you would follow homepage. In the current draft the cardinality is 0-1, you can have one or none, and internationalization came up. There could be multiple different URLs for different languages of a homepage for the thing, and hence you couldn't record english and welsh home pages separately. Proposal is just to allow multiple values for homepage. The underlying definition it becomes a set, or json array, and you can attach properties to each such as language.

scossu commented 5 years ago

AS per meeting discussion, we should allow multiple home pages but the spec should recommend using one as a good practice.

ahankinson commented 5 years ago

Is language: [en, cy] not acceptable to achieve the same result?

tomcrane commented 5 years ago

In this example there are two separate resources, with different ids.

Would language: [en, cy] be the right value of language on a single resource that could do conneg or presented appropriate text in response to the user's browser locale setting? That's different from the case where if I send you https://example.org/objects/3456/cy you're going to be looking at a page of Welsh no matter what additional information you send with your request; the English page is somewhere else.

azaroth42 commented 5 years ago

Issue 4 (Allow multiple values for homepage)

+1: 29 [Siani81 ahankinson andrewgunther awead azaroth42 beaudet dismorfo emulatingkat gigamorph glenrobson hadro irv jbhoward-dublin jonhartzler jronallo jtweed julsraemy jwd markpatton mattmcgrattan mcwhitaker mikeapp regisrob rentonsa rsinghal scossu tomcrane tpendragon zimeon] 0: 7 [aisaac cubap joshuago78 kzhr mejackreed mixterj sredick] -1: 0 []

Result

Super majority is in favor, issue is approved