Skip to content

Synopsis feature

On API side, we need a mechanism (or a convention) to describe that two or more sections of texts in two or more separate items are the same. This data is then used in TIDO for the synopsis feature.

Paul's current draft looks like the following:

{
  "@context": "http://www.w3.org/ns/anno.jsonld",
  "id": "example/annotationPage",
  "type": "AnnotationPage",
  "partOf": {
    "id": "example/annotationCollection",
    "label": "Synopsis connections"
  },
  "next": null,
  "prev": null,
  "items": \[
    {
      "body": {
        "x-content-type": "Edit",
        "type": "TextualBody",
        "format": "text/plain",
        "value": "Vivamus ut purus quis arcu faucibus fermentum."
      },
      "target": \[
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-1-item-1-scroll-1"
          },
          "source": "this-is-manifest-id/manifest-1\_this-is-item-id/manifest-1/item-1",
          "format": "text/xml"
        },
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-2-item-1-scroll-1"
          },
          "source": "this-is-manifest-id/manifest-2\_this-is-item-id/manifest-2/item-1",
          "format": "text/xml"
        },
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-3-item-1-scroll-1"
          },
          "source": "this-is-manifest-id/manifest-3\_this-is-item-id/manifest-3/item-1",
          "format": "text/xml"
        },
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-4-item-1-scroll-1"
          },
          "source": "this-is-manifest-id/manifest-4\_this-is-item-id/manifest-4/item-1",
          "format": "text/xml"
        }
      \],
      "type": "Annotation",
      "id": "example/manifest-1/item-1/annotation-1"
    },
    {
      "body": {
        "x-content-type": "Edit",
        "type": "TextualBody",
        "format": "text/plain",
        "value": "Vivamus ut purus quis arcu faucibus fermentum."
      },
      "target": \[
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-1-item-1-scroll-2"
          },
          "source": "this-is-manifest-id/manifest-1\_this-is-item-id/manifest-1/item-1",
          "format": "text/xml"
        },
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-2-item-1-scroll-2"
          },
          "source": "this-is-manifest-id/manifest-2\_this-is-item-id/manifest-2/item-1",
          "format": "text/xml"
        },
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-3-item-1-scroll-2"
          },
          "source": "this-is-manifest-id/manifest-3\_this-is-item-id/manifest-3/item-1",
          "format": "text/xml"
        },
        {
          "selector": {
            "type": "CssSelector",
            "value": "#manifest-4-item-1-scroll-2"
          },
          "source": "this-is-manifest-id/manifest-4\_this-is-item-id/manifest-4/item-1",
          "format": "text/xml"
        }
      \],
      "type": "Annotation",
      "id": "example/manifest-1/item-1/annotation-2"
    }
  \]
}

We need to check if this is possible within the W3C Web Annotation Data Model or, if not, create a new API for this.

Edited by Michelle Weidling
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information