diff --git a/source/presentation/4.0/example/02_timeline.json b/source/presentation/4.0/example/02_timeline.json index a5490fbc9..7c2354c7e 100644 --- a/source/presentation/4.0/example/02_timeline.json +++ b/source/presentation/4.0/example/02_timeline.json @@ -20,14 +20,18 @@ { "id": "https://iiif.io/api/presentation/4.0/example/02/page/anno", "type": "Annotation", - "motivation": "painting", - "body": { - "id": "https://fixtures.iiif.io/audio/indiana/mahler-symphony-3/CD1/medium/128Kbps.mp4", - "type": "Sound", - "format": "audio/mp4", - "duration": 1985.024 - }, - "target": "https://iiif.io/api/presentation/4.0/example/02" + "motivation": ["painting"], + "body": [ + { + "id": "https://fixtures.iiif.io/audio/indiana/mahler-symphony-3/CD1/medium/128Kbps.mp4", + "type": "Sound", + "format": "audio/mp4", + "duration": 1985.024 + } + ], + "target": [ + "https://iiif.io/api/presentation/4.0/example/02" + ] } ] } diff --git a/source/presentation/4.0/example/03_scene.json b/source/presentation/4.0/example/03_scene.json new file mode 100644 index 000000000..9728c8553 --- /dev/null +++ b/source/presentation/4.0/example/03_scene.json @@ -0,0 +1,51 @@ +{ + "@context": "http://iiif.io/api/presentation/4/context.json", + "id": "https://iiif.io/api/presentation/4.0/example/03_scene.json", + "type": "Manifest", + "label": { + "en": [ + "Simplest Model Example (IIIF Presentation v4)" + ] + }, + "summary": { + "en": [ + "Viewer should render the model at the scene origin and then add default lighting and camera" + ] + }, + "items": [ + { + "id": "https://iiif.io/api/presentation/4.0/example/scene/1", + "type": "Scene", + "label": { + "en": [ + "A Scene" + ] + }, + "items": [ + { + "id": "https://iiif.io/api/presentation/4.0/example/scene/1/annotationPage/1", + "type": "AnnotationPage", + "items": [ + { + "id": "https://iiif.io/api/presentation/4.0/example/scene/1/annotationPage/1/anno/1", + "type": "Annotation", + "motivation": [ + "painting" + ], + "body": [ + { + "id": "https://raw.githubusercontent.com/IIIF/3d/main/assets/astronaut/astronaut.glb", + "type": "Model", + "format": "model/gltf-binary" + } + ], + "target": [ + "https://iiif.io/api/presentation/4.0/example/scene/1/annotationPage/1" + ] + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/source/presentation/4.0/index.md b/source/presentation/4.0/index.md index b4e3a57c7..2650a4543 100644 --- a/source/presentation/4.0/index.md +++ b/source/presentation/4.0/index.md @@ -253,33 +253,7 @@ A Container that represents a boundless three-dimensional space, optionally with Scenes may also have the [`duration`][prezi-40-model-duration] property in the same manner as Timelines. -```json -{ - "id": "https://example.org/iiif/presentation/examples/manifest-with-containers/scene", - "type": "Scene", - "items": [ - { - "id": "https://example.org/iiif/presentation/examples/manifest-with-containers/page/p3", - "type": "AnnotationPage", - "items": [ - { - "id": "https://example.org/iiif/presentation/examples/manifest-with-containers/annotation/s1", - "type": "Annotation", - "motivation": ["painting"], - "body": [ - { - "id": "https://iiif.io/api/presentation/example-content-resources/models/astronaut.glb", - "type": "Model", - "format": "model/gltf-binary" - } - ], - "target": ["https://example.org/iiif/presentation/examples/manifest-with-containers/scene"] - } - ] - } - ] -} -``` +{% include code_example.html src="03_scene.json" from=16 to=49 %} Scenes can have time-based and image content in them as well as 3D content. See model for how to do this.