Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IIIF Presentation V3 manifests are returning errors on validation #6605

Open
8 tasks
eliotjordan opened this issue Jan 17, 2025 · 1 comment
Open
8 tasks
Assignees

Comments

@eliotjordan
Copy link
Member

eliotjordan commented Jan 17, 2025

Using the presentation api validator with a staging manifest returns 8 different errors:

  • Error 1 of 8. Message: Additional properties are not allowed ('logo', 'posterCanvas' were unexpected)
Detail:
Path: /[Additional properties are not allowed ('logo', 'posterCanvas' were unexpected)]
Description:
{"@context":"[ ... ]","type":"Manifest","id":"https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest","label":"{ ... }","metadata":"[ ... ]","rendering":"[ ... ]","items":"[ ... ]","behavior":"[ ... ]","posterCanvas":"{ ... }","structures":"[ ... ]","seeAlso":"[ ... ]","rights":"http://rightsstatements.org/vocab/CNE/1.0/","logo":"[ ... ]","thumbnail":"[ ... ]"}
  • Error 2 of 8. Message: 'Download as PDF' is not of type 'object'
Detail: Language string, must have a language and value must be an array.
Path: /rendering[0]/label/['Download as PDF' is not of type 'object']
Description:
"Download as PDF"
  • Error 3 of 8. Message: 'type' is a required property
Detail: Classes MUST have an id and type property and MAY have a label.
Path: /rendering[0]/['type' is a required property]
Description:
{"label":"Download as PDF","format":"application/pdf","id":"https://figgy-staging.princeton.edu/catalog/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/pdf"}
  • Error 4 of 8. Message: 'id' is a required property
Detail: Classes MUST have an id and type property and MAY have a label.
Path: /items[0]/items[0]/items[0]/['id' is a required property]
Description:
{"type":"Annotation","motivation":"painting","body":"{ ... }","target":"https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/42791640-9681-41f0-961a-b391d3781f0f"}
  • Error 5 of 8. Message: 'items' is a required property
Detail: AnnotationPage id, type and items required
Path: /items[1]/items[0]/['items' is a required property]
Description:
{"type":"AnnotationPage","id":"https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/8f3594bd-2d6d-4c38-8a9e-453de6f77660/annotation_page/a54ecdec-5dce-413a-8e46-f7fcdb1eb090"}
  • Error 6 of 8.
Message: {'type': 'Canvas', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/8f3594bd-2d6d-4c38-8a9e-453de6f77660', 'label': {'eng': ['32101047382484_1.wav']}, 'items': [{'type': 'AnnotationPage', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/8f3594bd-2d6d-4c38-8a9e-453de6f77660/annotation_page/a54ecdec-5dce-413a-8e46-f7fcdb1eb090'}], 'rendering': [{'id': 'https://figgy-staging.princeton.edu/downloads/8f3594bd-2d6d-4c38-8a9e-453de6f77660/file/25233bdc-7885-4240-99be-a45f4bbf107d', 'format': 'audio/x-wav', 'type': 'Dataset', 'label': {'en': ['Download the original file']}}]} is not valid under any of the given schemas
Detail:
Path: /items[1]/[{'type': 'Canvas', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/8f3594bd-2d6d-4c38-8a9e-453de6f77660', 'label': {'eng': ['32101047382484_1.wav']}, 'items': [{'type': 'AnnotationPage', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/8f3594bd-2d6d-4c38-8a9e-453de6f77660/annotation_page/a54ecdec-5dce-413a-8e46-f7fcdb1eb090'}], 'rendering': [{'id': 'https://figgy-staging.princeton.edu/downloads/8f3594bd-2d6d-4c38-8a9e-453de6f77660/file/25233bdc-7885-4240-99be-a45f4bbf107d', 'format': 'audio/x-wav', 'type': 'Dataset', 'label': {'en': ['Download the original file']}}]} is not valid under any of the given schemas]
Description:
{"type":"Canvas","id":"https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/8f3594bd-2d6d-4c38-8a9e-453de6f77660","label":"{ ... }","items":"[ ... ]","rendering":"[ ... ]"}
  • Error 7 of 8. Message: 'items' is a required property
Detail: AnnotationPage id, type and items required
Path: /items[2]/items[0]/['items' is a required property]
Description:
{"type":"AnnotationPage","id":"https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/1ac9e2dd-3088-45d8-a2f7-bf7766692b86/annotation_page/53c72802-2bef-4e4d-8e9c-ca934bdf13ee"}
  • Error 8 of 8.
Message: {'type': 'Canvas', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/1ac9e2dd-3088-45d8-a2f7-bf7766692b86', 'label': {'eng': ['32101047382484_2.wav']}, 'items': [{'type': 'AnnotationPage', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/1ac9e2dd-3088-45d8-a2f7-bf7766692b86/annotation_page/53c72802-2bef-4e4d-8e9c-ca934bdf13ee'}], 'rendering': [{'id': 'https://figgy-staging.princeton.edu/downloads/1ac9e2dd-3088-45d8-a2f7-bf7766692b86/file/88e0160d-b447-477c-ac98-70ef3071ebf1', 'format': 'audio/x-wav', 'type': 'Dataset', 'label': {'en': ['Download the original file']}}]} is not valid under any of the given schemas
Detail:
Path: /items[2]/[{'type': 'Canvas', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/1ac9e2dd-3088-45d8-a2f7-bf7766692b86', 'label': {'eng': ['32101047382484_2.wav']}, 'items': [{'type': 'AnnotationPage', 'id': 'https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/1ac9e2dd-3088-45d8-a2f7-bf7766692b86/annotation_page/53c72802-2bef-4e4d-8e9c-ca934bdf13ee'}], 'rendering': [{'id': 'https://figgy-staging.princeton.edu/downloads/1ac9e2dd-3088-45d8-a2f7-bf7766692b86/file/88e0160d-b447-477c-ac98-70ef3071ebf1', 'format': 'audio/x-wav', 'type': 'Dataset', 'label': {'en': ['Download the original file']}}]} is not valid under any of the given schemas]
Description:
{"type":"Canvas","id":"https://figgy-staging.princeton.edu/concern/scanned_resources/2325ed52-bb0b-42a9-9fa5-42c7beb106a4/manifest/canvas/1ac9e2dd-3088-45d8-a2f7-bf7766692b86","label":"{ ... }","items":"[ ... ]","rendering":"[ ... ]"}
@eliotjordan eliotjordan self-assigned this Jan 21, 2025
@sdellis
Copy link
Member

sdellis commented Jan 23, 2025

@eliotjordan I think it's important that we also validate v3 manifests that contain Range data. I have not been able to find a public example of this, but here is one that is private:

https://figgy.princeton.edu/concern/scanned_resources/ab32bcd8-8586-4c38-8da2-0aaf33d17f57/manifest

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants