# description
The kind of relation from one research object to another.

# $comment
This enumeration defines the constrained vocabulary for authored relations
between Stencila research objects. It is based on
[MIRA](https://github.com/MIRA-science/schema), a discourse graph vocabulary
for modular research objects with JSON-LD context published at
`https://purl.org/mira-science/mira.jsonld`.

Variant `@id`s mirror the published MIRA term identifiers verbatim, which is
why some are camelCase (`mira:supportedBy`) and others snake_case
(`mira:is_grounded_in`).

Most relations come in directional pairs declared as `owl:inverseOf` each
other in MIRA (e.g. `Supports`/`SupportedBy`). Both directions are
authorable so that a relation can be declared on whichever research object
is most convenient to edit; the direction is always semantically
significant. `Follows` has no inverse in MIRA. `RequestFor` and
`RequestTarget` are not inverses of each other: both have a request as
their source and a request may declare both.

Use this narrower vocabulary on `ResearchObjectRelation`. Values map
one-to-one by name to the corresponding discourse-oriented variants in
`GraphEdgeKind` when document graphs are built. Variant descriptions are
duplicated in `GraphEdgeKind` and must be kept in sync.

# properties.type.$comment
This is a special property analogous to JSON-LD's `@type` keyword.

# properties.id.$comment
This is a special property analogous to JSON-LD's `@id` keyword.

# properties.identifiers.description
Any kind of identifier for any kind of Thing.

# properties.identifiers.$comment
Some identifiers have specific properties e.g the `issn` property for
the `Periodical` type. These should be used in preference to this
property which is intended for identifiers that do not yet have a
specific property. Identifiers can be represented as strings, but
using a `PropertyValue` will usually be better because it allows
for `propertyID` (i.e. the type of identifier).

# anyOf[].description
The source research object, typically evidence or a claim, supports the target claim.

# anyOf[].description
The source claim is supported by the target research object, typically evidence or another claim. Inverse of `Supports`.

# anyOf[].description
The source research object, typically evidence or a claim, opposes the target claim.

# anyOf[].description
The source claim is opposed by the target research object, typically evidence or another claim. Inverse of `Opposes`.

# anyOf[].description
The source claim addresses the target research question.

# anyOf[].description
The source research question is addressed by the target claim. Inverse of `Addresses`.

# anyOf[].description
The source research object, typically a study or other research activity, was conducted following the target protocol.

# anyOf[].description
The source research object, typically a study or other research activity, produced and grounds the target evidence.

# anyOf[].description
The source evidence is grounded in the target study or other research activity that produced it. Inverse of `Grounds`.

# anyOf[].description
The source request asks for the target work, such as a study or protocol execution, to be carried out. Not the inverse of `RequestTarget`.

# anyOf[].description
The source request concerns the target claim that the requested work may elucidate. Not the inverse of `RequestFor`.