Class: RelationalDiff

A relational diff expresses the difference between an edge in one ontology, and an edge (or lack of edge) in

another ontology (or a different version of the same ontology). The diff is from the perspective of one

ontology (the one on the “left” side).

__

For every edge in the left ontology, the subject and object are mapped to the right ontology.

If mappings cannot be found then the diff is categorized as missing mappings.

The predicate is also mapped, with the reflexivity assumption.

__

for every mapped subject and object pair (the “right” subject and object), the entailed relationship

is examined to determine if it consistent with the left predicate.

__

```

left_object <— mapped to —> right_object

_ ^ ^_

_ | |_

_ | |_

_ | left | right_

_ | predicate | predicate_

_ | |_

_ | |_

left_subject <— mapped to —> right_subject

```

__

The above figure gives hows the basic structure. Classification of the edge is done from the perspective

of the left edge.

URI: xodiff:RelationalDiff

classDiagram class RelationalDiff click RelationalDiff href "../RelationalDiff" RelationalDiff : category RelationalDiff --> "0..1" DiffCategory : category click DiffCategory href "../DiffCategory" RelationalDiff : left_object_id RelationalDiff : left_object_is_functional RelationalDiff : left_object_label RelationalDiff : left_predicate_id RelationalDiff : left_predicate_label RelationalDiff : left_subject_id RelationalDiff : left_subject_is_functional RelationalDiff : left_subject_label RelationalDiff : object_mapping_cardinality RelationalDiff --> "0..1" MappingCardinalityEnum : object_mapping_cardinality click MappingCardinalityEnum href "../MappingCardinalityEnum" RelationalDiff : object_mapping_predicate RelationalDiff : right_intermediate_ids RelationalDiff : right_object_id RelationalDiff : right_object_label RelationalDiff : right_predicate_ids RelationalDiff : right_predicate_labels RelationalDiff : right_subject_id RelationalDiff : right_subject_label RelationalDiff : subject_mapping_cardinality RelationalDiff --> "0..1" MappingCardinalityEnum : subject_mapping_cardinality click MappingCardinalityEnum href "../MappingCardinalityEnum" RelationalDiff : subject_mapping_predicate

Slots

Name

Cardinality and Range

Description

Inheritance

category

0..1
DiffCategory

Each match (or lack of match) is placed into exactly one category

direct

left_subject_id

1
EntityReference

The subject (child) of the source/left edge

direct

left_object_id

1
EntityReference

The object (parent) of the source/left edge

direct

left_predicate_id

1
EntityReference

The predicate (relation) of the source/left edge

direct

left_subject_label

0..1
Label

The name of the subject (child) of the source/left edge

direct

left_object_label

0..1
Label

The name of the object (parent) of the source/left edge

direct

left_predicate_label

0..1
Label

The name of the predicate of the source/left edge

direct

right_subject_id

0..1
EntityReference

The subject (child) of the matched/right edge, if matchable

direct

right_object_id

0..1
EntityReference

The object (parent) of the matched/right edge, if matchable

direct

right_predicate_ids

*
EntityReference

* If the match type is consistent, then all consistent predicates

direct

right_subject_label

0..1
Label

The name of the subject (child) of the matched/right edge, if matchable

direct

right_object_label

0..1
Label

The name of the object (parent) of the matched/right edge, if matchable

direct

right_predicate_labels

*
Label

The names corresponding to the right_predicate_ids

direct

left_subject_is_functional

0..1
String

True if a subject mapping is present, and maps uniquely within the same ontol…

direct

left_object_is_functional

0..1
String

True if an object mapping is present, and maps uniquely within the same ontol…

direct

subject_mapping_predicate

0..1
EntityReference

The mapping predicate that holds between left_subject_id and right_subject_id

direct

object_mapping_predicate

0..1
EntityReference

The mapping predicate that holds between left_object_id and right_object_id

direct

right_intermediate_ids

*
EntityReference

direct

subject_mapping_cardinality

0..1
MappingCardinalityEnum

The mapping cardinality of the subject pair

direct

object_mapping_cardinality

0..1
MappingCardinalityEnum

The mapping cardinality of the object pair

direct

Usages

used by

used in

type

used

StructureDiffResultSet

results

range

RelationalDiff

Identifier and Mapping Information

Schema Source

  • from schema: https://w3id.org/oak/cross-ontology-diff

Mappings

Mapping Type

Mapped Value

self

xodiff:RelationalDiff

native

xodiff:RelationalDiff

LinkML Source

Direct

```yaml name: RelationalDiff description: "A relational diff expresses the difference between an edge in one ontology,\ \ and an edge (or lack of edge) in\nanother ontology (or a different version of\ \ the same ontology). The diff is from the perspective of one\nontology (the one\ \ on the \"left\" side).\n\nFor every edge in the left ontology, the subject and\ \ object are mapped to the right ontology.\nIf mappings cannot be found then the\ \ diff is categorized as missing mappings.\nThe predicate is also mapped, with the\ \ reflexivity assumption.\n\nfor every mapped subject and object pair (the \"right\"\ \ subject and object), the entailed relationship\nis examined to determine if it\ \ consistent with the left predicate.\n\n```\nleft_object <--- mapped to --->\ \ right_object\n ^ ^\n | \ \ |\n | |\n | left \ \ | right\n | predicate | predicate\n\ \ | |\n | \ \ |\nleft_subject <--- mapped to ---> right_subject\n```\n\nThe above figure gives\ \ hows the basic structure. Classification of the edge is done from the perspective\n\ of the left edge." from_schema: https://w3id.org/oak/cross-ontology-diff attributes: category: name: category description: Each match (or lack of match) is placed into exactly one category from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 domain_of: - RelationalDiff range: DiffCategory left_subject_id: name: left_subject_id description: The subject (child) of the source/left edge from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - subject domain_of: - RelationalDiff range: EntityReference required: true left_object_id: name: left_object_id description: The object (parent) of the source/left edge from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - object domain_of: - RelationalDiff range: EntityReference required: true left_predicate_id: name: left_predicate_id description: The predicate (relation) of the source/left edge from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - predicate domain_of: - RelationalDiff range: EntityReference required: true left_subject_label: name: left_subject_label description: The name of the subject (child) of the source/left edge from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - subject - label domain_of: - RelationalDiff range: Label left_object_label: name: left_object_label description: The name of the object (parent) of the source/left edge from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - object - label domain_of: - RelationalDiff range: Label left_predicate_label: name: left_predicate_label description: The name of the predicate of the source/left edge from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - predicate - label domain_of: - RelationalDiff range: Label right_subject_id: name: right_subject_id description: The subject (child) of the matched/right edge, if matchable from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - right_side - subject domain_of: - RelationalDiff range: EntityReference right_object_id: name: right_object_id description: The object (parent) of the matched/right edge, if matchable from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - right_side - object domain_of: - RelationalDiff range: EntityReference right_predicate_ids: name: right_predicate_ids description: '* If the match type is consistent, then all consistent predicates.
  * If the match type is identical, then the identical predicate.

  * If the match type is OtherRelationship, then all predicates that form a path
  between right subject and object'
from_schema: https://w3id.org/oak/cross-ontology-diff
rank: 1000
mixins:
- right_side
- predicate
domain_of:
- RelationalDiff
range: EntityReference
multivalued: true

right_subject_label: name: right_subject_label description: The name of the subject (child) of the matched/right edge, if matchable from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - right_side - subject - label domain_of: - RelationalDiff range: Label right_object_label: name: right_object_label description: The name of the object (parent) of the matched/right edge, if matchable from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - right_side - object - label domain_of: - RelationalDiff range: Label right_predicate_labels: name: right_predicate_labels description: The names corresponding to the right_predicate_ids from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - right_side - predicate - label domain_of: - RelationalDiff range: Label multivalued: true left_subject_is_functional: name: left_subject_is_functional description: True if a subject mapping is present, and maps uniquely within the same ontology from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - is_functional domain_of: - RelationalDiff left_object_is_functional: name: left_object_is_functional description: True if an object mapping is present, and maps uniquely within the same ontology from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - left_side - is_functional domain_of: - RelationalDiff subject_mapping_predicate: name: subject_mapping_predicate description: The mapping predicate that holds between left_subject_id and right_subject_id from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - subject - predicate domain_of: - RelationalDiff range: EntityReference object_mapping_predicate: name: object_mapping_predicate description: The mapping predicate that holds between left_object_id and right_object_id from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 mixins: - subject - predicate domain_of: - RelationalDiff range: EntityReference right_intermediate_ids: name: right_intermediate_ids from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 domain_of: - RelationalDiff range: EntityReference multivalued: true subject_mapping_cardinality: name: subject_mapping_cardinality description: The mapping cardinality of the subject pair from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 domain_of: - RelationalDiff range: MappingCardinalityEnum object_mapping_cardinality: name: object_mapping_cardinality description: The mapping cardinality of the object pair from_schema: https://w3id.org/oak/cross-ontology-diff rank: 1000 domain_of: - RelationalDiff range: MappingCardinalityEnum

</details>

### Induced

<details>
```yaml
name: RelationalDiff
description: "A relational diff expresses the difference between an edge in one ontology,\
  \ and an edge (or lack of edge) in\nanother ontology (or a different version of\
  \ the same ontology). The diff is from the perspective of one\nontology (the one\
  \ on the \"left\" side).\n\nFor every edge in the left ontology, the subject and\
  \ object are mapped to the right ontology.\nIf mappings cannot be found then the\
  \ diff is categorized as missing mappings.\nThe predicate is also mapped, with the\
  \ reflexivity assumption.\n\nfor every mapped subject and object pair (the \"right\"\
  \ subject and object), the entailed relationship\nis examined to determine if it\
  \ consistent with the left predicate.\n\n```\nleft_object    <--- mapped to --->\
  \ right_object\n   ^                                  ^\n   |                  \
  \                |\n   |                                  |\n   | left         \
  \                    | right\n   | predicate                        | predicate\n\
  \   |                                  |\n   |                                 \
  \ |\nleft_subject   <--- mapped to ---> right_subject\n```\n\nThe above figure gives\
  \ hows the basic structure. Classification of the edge is done from the perspective\n\
  of the left edge."
from_schema: https://w3id.org/oak/cross-ontology-diff
attributes:
  category:
    name: category
    description: Each match (or lack of match) is placed into exactly one category
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    alias: category
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: DiffCategory
  left_subject_id:
    name: left_subject_id
    description: The subject (child) of the source/left edge
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - subject
    alias: left_subject_id
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
    required: true
  left_object_id:
    name: left_object_id
    description: The object (parent) of the source/left edge
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - object
    alias: left_object_id
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
    required: true
  left_predicate_id:
    name: left_predicate_id
    description: The predicate (relation) of the source/left edge
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - predicate
    alias: left_predicate_id
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
    required: true
  left_subject_label:
    name: left_subject_label
    description: The name of the subject (child) of the source/left edge
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - subject
    - label
    alias: left_subject_label
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: Label
  left_object_label:
    name: left_object_label
    description: The name of the object (parent) of the source/left edge
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - object
    - label
    alias: left_object_label
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: Label
  left_predicate_label:
    name: left_predicate_label
    description: The name of the predicate of the source/left edge
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - predicate
    - label
    alias: left_predicate_label
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: Label
  right_subject_id:
    name: right_subject_id
    description: The subject (child) of the matched/right edge, if matchable
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - right_side
    - subject
    alias: right_subject_id
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
  right_object_id:
    name: right_object_id
    description: The object (parent) of the matched/right edge, if matchable
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - right_side
    - object
    alias: right_object_id
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
  right_predicate_ids:
    name: right_predicate_ids
    description: '* If the match type is consistent, then all consistent predicates.

      * If the match type is identical, then the identical predicate.

      * If the match type is OtherRelationship, then all predicates that form a path
      between right subject and object'
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - right_side
    - predicate
    alias: right_predicate_ids
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
    multivalued: true
  right_subject_label:
    name: right_subject_label
    description: The name of the subject (child) of the matched/right edge, if matchable
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - right_side
    - subject
    - label
    alias: right_subject_label
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: Label
  right_object_label:
    name: right_object_label
    description: The name of the object (parent) of the matched/right edge, if matchable
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - right_side
    - object
    - label
    alias: right_object_label
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: Label
  right_predicate_labels:
    name: right_predicate_labels
    description: The names corresponding to the right_predicate_ids
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - right_side
    - predicate
    - label
    alias: right_predicate_labels
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: Label
    multivalued: true
  left_subject_is_functional:
    name: left_subject_is_functional
    description: True if a subject mapping is present, and maps uniquely within the
      same ontology
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - is_functional
    alias: left_subject_is_functional
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: string
  left_object_is_functional:
    name: left_object_is_functional
    description: True if an object mapping is present, and maps uniquely within the
      same ontology
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - left_side
    - is_functional
    alias: left_object_is_functional
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: string
  subject_mapping_predicate:
    name: subject_mapping_predicate
    description: The mapping predicate that holds between left_subject_id and right_subject_id
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - subject
    - predicate
    alias: subject_mapping_predicate
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
  object_mapping_predicate:
    name: object_mapping_predicate
    description: The mapping predicate that holds between left_object_id and right_object_id
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    mixins:
    - subject
    - predicate
    alias: object_mapping_predicate
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
  right_intermediate_ids:
    name: right_intermediate_ids
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    alias: right_intermediate_ids
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: EntityReference
    multivalued: true
  subject_mapping_cardinality:
    name: subject_mapping_cardinality
    description: The mapping cardinality of the subject pair
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    alias: subject_mapping_cardinality
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: MappingCardinalityEnum
  object_mapping_cardinality:
    name: object_mapping_cardinality
    description: The mapping cardinality of the object pair
    from_schema: https://w3id.org/oak/cross-ontology-diff
    rank: 1000
    alias: object_mapping_cardinality
    owner: RelationalDiff
    domain_of:
    - RelationalDiff
    range: MappingCardinalityEnum