IIIF / prezi-2-to-3

Libraries to upgrade Presentation API v2 to v3 automatically

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

CLI: requiredStatement label not string error in output Manifest

stephenmcconnachie opened this issue · comments

Our Manifests are not on an open-to-the-internet server so I can't share URLs.

I'm running the CLI on a v2 Manifest to generate a v3, but when I run the v3 Manifest output against the IIIF Manifest validator (running locally), it identifies an error: 'True is not of type 'string' - in the context of the requiredStatement label.

This is the section in the output v3 Manifest where the requiredStatement issue is found:

"requiredStatement": {
    "label": {
      "true": [
        true
      ]
    }, 
    "value": {
      "true": [
        "BFI National Archive"
      ]
    }
  }, 

And this is the section in the input v2Manifest where the 'BFI National Archive' sits, in the 'attribution':

{
	"@context": "http:/iiif.io/api/presentation/2/context.json",
	"@type": "sc:Manifest",
	"@id": "https://serverDNSname/collections_assets/40000852/manifest.json",
	"label": "Title of film",
	"attribution": "BFI National Archive",

So it seems that attribution is not being added as an 'Attribution' string in the requiredStatement label -instead an unquoted true is being added.

I can work around this with a post-conversion script, or I can dig into the prezi-2-to-3 Python, but wanted to document this.