Annotation (v3)

Warning

This is not the latest version. The latest version is v6.

Description

Any kind of information added to a document. If an annotation is specific to a region over the primary data or a relation over such regions, specific sub-types should be used instead of this high-level type.

Properties

Synopsis

Properties marked with * are required.

Property

Type

Origin

classifications

object

native

document

string

native

label

string

native

labelset

array of string

native

labelsetUri

string

native

id *

string

Thing (v1)

Native

classifications

  • type: object

  • required: no

A map from label values to their “score” numbers provided by a classifier. The score can be probability, similarity, confidence, or any other real number that was used to determine the label value.

Optional on top of the label property. However when this property is used, the label property must be one of the keys and the keys must match to the values defined in the labelset or labelsetUri annotation metadata.


document

  • type: string

  • required: no

The identifier of the document that the annotation is over.


label

  • type: string

  • required: no

A label given to this object by a classifier. The value must be a simple string value of the label and must be one of the values defined in the labelset or labelsetUri annotation metadata.

Note

Annotations from a classifier app must have this property.


labelset

  • type: array of string

  • required: no

When an annotation object contains results of a classification task, this metadata is used to specify the label values used in classification. Individual annotations then must have label property that is one of the values in this list.

Note

Annotations from a classifier app must have this metadata or labelsetUri metadata.

Note

Not all of labels specified in the labelset must occur in the output annotations. For example, a labelset can contain a catch-all negative label, but if the negative label can be not interesting enough to keep in the output annotation.


labelsetUri

  • type: string

  • required: no

A URI to an externally defined labelset. Since the labelset metadata is a list of simple strings, this URI can be used to point to a more detailed definition of the labelset. This can be a JSON-LD document or a SKOS concept scheme, for example.

Note

Annotations from a classifier app must have this metadata or labelset metadata.


Inherited from Thing (v1)

id

  • type: string

  • required: yes

A unique identifier for the annotation or document. Uniqueness is relative to the view the annotation is in or the list of documents at the top level of a MMIF file.


JSON Schema

{
  "additionalProperties": true,
  "properties": {
    "id": {
      "description": "A unique identifier for the annotation or document. Uniqueness is relative to the view the annotation is in or the list of documents at the top level of a MMIF file.",
      "type": "string"
    },
    "document": {
      "type": "string",
      "description": "The identifier of the document that the annotation is over."
    },
    "labelset": {
      "items": {
        "type": "string"
      },
      "type": "array",
      "description": "When an annotation object contains results of a classification task, this metadata is used to specify the label values used in classification. Individual annotations then must have <code>label</code> property that is one of the values in this list. <br><br> [note] Annotations from a classifier app must have this metadata or <code> labelsetUri </code> metadata. [/note]<br><br> [note] Not all of labels specified in the <code>labelset</code> must occur in the output annotations. For example, a <code>labelset</code> can contain a <i>catch-all</i> negative label, but if the negative label can be not interesting enough to keep in the output annotation. [/note]"
    },
    "labelsetUri": {
      "type": "string",
      "description": "A URI to an externally defined labelset. Since the <code>labelset</code> metadata is a list of simple strings, this URI can be used to point to a more detailed definition of the labelset. This can be a JSON-LD document or a SKOS concept scheme, for example. <br><br> [note] Annotations from a classifier app must have this metadata or <code> labelset </code> metadata. [/note]"
    },
    "label": {
      "type": "string",
      "description": "A label given to this object by a classifier. The value must be a simple string value of the label and must be one of the values defined in the <code>labelset</code> or <code>labelsetUri</code> annotation metadata. <br><br> [note] Annotations from a classifier app must have this property. [/note]"
    },
    "classifications": {
      "additionalProperties": {
        "type": "number"
      },
      "type": "object",
      "description": "A map from label values to their \"score\" numbers provided by a classifier. The score can be probability, similarity, confidence, or any other real number that was used to determine the label value. <br><br> <i>Optional</i> on top of the <code>label</code> property. However when this property is used, the <code>label</code> property must be one of the keys and the keys must match to the values defined in the <code>labelset</code> or <code>labelsetUri</code> annotation metadata."
    }
  },
  "required": [
    "id"
  ],
  "type": "object"
}