Class: SlotDerivation

A specification of how to derive the value of a target slot from a source slot

URI: linkmltr:SlotDerivation

classDiagram class SlotDerivation ElementDerivation <|-- SlotDerivation SlotDerivation : cast_collection_as SlotDerivation --> CollectionType : cast_collection_as SlotDerivation : comments SlotDerivation : copy_directives SlotDerivation --> CopyDirective : copy_directives SlotDerivation : derived_from SlotDerivation : description SlotDerivation --> None : description SlotDerivation : dictionary_key SlotDerivation : expr SlotDerivation : expression_to_expression_mappings SlotDerivation --> KeyVal : expression_to_expression_mappings SlotDerivation : expression_to_value_mappings SlotDerivation --> KeyVal : expression_to_value_mappings SlotDerivation : hide SlotDerivation : implements SlotDerivation : inverse_of SlotDerivation --> Inverse : inverse_of SlotDerivation : is_a SlotDerivation --> ElementDerivation : is_a SlotDerivation : mirror_source SlotDerivation : mixins SlotDerivation --> ElementDerivation : mixins SlotDerivation : name SlotDerivation --> None : name SlotDerivation : overrides SlotDerivation --> Any : overrides SlotDerivation : populated_from SlotDerivation : range SlotDerivation : sources SlotDerivation : stringification SlotDerivation --> StringificationConfiguration : stringification SlotDerivation : type_designator SlotDerivation : unit_conversion SlotDerivation --> UnitConversionConfiguration : unit_conversion SlotDerivation : value_mappings SlotDerivation --> KeyVal : value_mappings

Inheritance

Slots

Name Cardinality and Range Description Inheritance
name 0..1
String
Target slot name direct
populated_from 0..1
SlotReference
Source slot name direct
sources 0..*
SlotReference
direct
derived_from 0..*
SlotReference
Source slots that are used to derive this slot direct
expr 0..1
String
An expression to be evaluated on the source object to derive the target slot direct
range 0..1
String
direct
unit_conversion 0..1
UnitConversionConfiguration
direct
inverse_of 0..1
Inverse
Used to specify a class-slot tuple that is the inverse of the derived/target ... direct
hide 0..1
Boolean
True if this is suppressed direct
type_designator 0..1
Boolean
direct
cast_collection_as 0..1
CollectionType
direct
dictionary_key 0..1
String
direct
stringification 0..1
StringificationConfiguration
direct
copy_directives 0..*
CopyDirective
ElementDerivation
overrides 0..1
Any
overrides source schema slots ElementDerivation
is_a 0..1
ElementDerivation
ElementDerivation
mixins 0..*
ElementDerivation
ElementDerivation
value_mappings 0..*
KeyVal
A mapping table that is applied directly to mappings, in order of precedence ElementDerivation
expression_to_value_mappings 0..*
KeyVal
A mapping table in which the keys are expressions ElementDerivation
expression_to_expression_mappings 0..*
KeyVal
A mapping table in which the keys and values are expressions ElementDerivation
mirror_source 0..1
Boolean
ElementDerivation
description 0..1
String
description of the specification component SpecificationComponent
implements 0..*
Uriorcurie
A reference to a specification that this component implements SpecificationComponent
comments 0..*
String
A list of comments about this component SpecificationComponent

Usages

used by used in type used
TransformationSpecification slot_derivations range SlotDerivation
ClassDerivation slot_derivations range SlotDerivation

Identifier and Mapping Information

Schema Source

Mappings

Mapping Type Mapped Value
self linkmltr:SlotDerivation
native linkmltr:SlotDerivation

LinkML Source

Direct

name: SlotDerivation
description: A specification of how to derive the value of a target slot from a source
  slot
from_schema: https://w3id.org/linkml/transformer
is_a: ElementDerivation
attributes:
  name:
    name: name
    description: Target slot name
    from_schema: https://w3id.org/linkml/transformer
    key: true
    domain_of:
    - ElementDerivation
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    required: true
  populated_from:
    name: populated_from
    description: Source slot name
    from_schema: https://w3id.org/linkml/transformer
    domain_of:
    - ClassDerivation
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: SlotReference
  sources:
    name: sources
    from_schema: https://w3id.org/linkml/transformer
    multivalued: true
    domain_of:
    - ClassDerivation
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: SlotReference
  derived_from:
    name: derived_from
    description: Source slots that are used to derive this slot. This can be computed
      from the expr, if the expr is declarative.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    multivalued: true
    domain_of:
    - SlotDerivation
    range: SlotReference
  expr:
    name: expr
    description: An expression to be evaluated on the source object to derive the
      target slot. Should be specified using the LinkML expression language.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: string
  range:
    name: range
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    slot_uri: linkml:range
    domain_of:
    - SlotDerivation
    range: string
  unit_conversion:
    name: unit_conversion
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    range: UnitConversionConfiguration
  inverse_of:
    name: inverse_of
    description: Used to specify a class-slot tuple that is the inverse of the derived/target
      slot. This is used primarily for mapping to relational databases or formalisms
      that do not allow multiple values. The class representing the repeated element
      has a foreign key slot inserted in that 'back references' the original multivalued
      slot.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    range: Inverse
  hide:
    name: hide
    description: True if this is suppressed
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: boolean
  type_designator:
    name: type_designator
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    range: boolean
  cast_collection_as:
    name: cast_collection_as
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    range: CollectionType
  dictionary_key:
    name: dictionary_key
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    range: string
  stringification:
    name: stringification
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    domain_of:
    - SlotDerivation
    range: StringificationConfiguration

Induced

name: SlotDerivation
description: A specification of how to derive the value of a target slot from a source
  slot
from_schema: https://w3id.org/linkml/transformer
is_a: ElementDerivation
attributes:
  name:
    name: name
    description: Target slot name
    from_schema: https://w3id.org/linkml/transformer
    key: true
    alias: name
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    required: true
  populated_from:
    name: populated_from
    description: Source slot name
    from_schema: https://w3id.org/linkml/transformer
    alias: populated_from
    owner: SlotDerivation
    domain_of:
    - ClassDerivation
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: SlotReference
  sources:
    name: sources
    from_schema: https://w3id.org/linkml/transformer
    multivalued: true
    alias: sources
    owner: SlotDerivation
    domain_of:
    - ClassDerivation
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: SlotReference
  derived_from:
    name: derived_from
    description: Source slots that are used to derive this slot. This can be computed
      from the expr, if the expr is declarative.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    multivalued: true
    alias: derived_from
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: SlotReference
  expr:
    name: expr
    description: An expression to be evaluated on the source object to derive the
      target slot. Should be specified using the LinkML expression language.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: expr
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: string
  range:
    name: range
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    slot_uri: linkml:range
    alias: range
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: string
  unit_conversion:
    name: unit_conversion
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: unit_conversion
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: UnitConversionConfiguration
  inverse_of:
    name: inverse_of
    description: Used to specify a class-slot tuple that is the inverse of the derived/target
      slot. This is used primarily for mapping to relational databases or formalisms
      that do not allow multiple values. The class representing the repeated element
      has a foreign key slot inserted in that 'back references' the original multivalued
      slot.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: inverse_of
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: Inverse
  hide:
    name: hide
    description: True if this is suppressed
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: hide
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    - EnumDerivation
    - PermissibleValueDerivation
    range: boolean
  type_designator:
    name: type_designator
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: type_designator
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: boolean
  cast_collection_as:
    name: cast_collection_as
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: cast_collection_as
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: CollectionType
  dictionary_key:
    name: dictionary_key
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: dictionary_key
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: string
  stringification:
    name: stringification
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: stringification
    owner: SlotDerivation
    domain_of:
    - SlotDerivation
    range: StringificationConfiguration
  copy_directives:
    name: copy_directives
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    multivalued: true
    alias: copy_directives
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: CopyDirective
    inlined: true
  overrides:
    name: overrides
    description: overrides source schema slots
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: overrides
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: Any
  is_a:
    name: is_a
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    slot_uri: linkml:is_a
    alias: is_a
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: ElementDerivation
  mixins:
    name: mixins
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    slot_uri: linkml:mixins
    multivalued: true
    alias: mixins
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: ElementDerivation
    inlined: false
  value_mappings:
    name: value_mappings
    description: A mapping table that is applied directly to mappings, in order of
      precedence
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    multivalued: true
    alias: value_mappings
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: KeyVal
    inlined: true
  expression_to_value_mappings:
    name: expression_to_value_mappings
    description: A mapping table in which the keys are expressions
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    multivalued: true
    alias: expression_to_value_mappings
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: KeyVal
    inlined: true
  expression_to_expression_mappings:
    name: expression_to_expression_mappings
    description: A mapping table in which the keys and values are expressions
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    multivalued: true
    alias: expression_to_expression_mappings
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: KeyVal
    inlined: true
  mirror_source:
    name: mirror_source
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    alias: mirror_source
    owner: SlotDerivation
    domain_of:
    - ElementDerivation
    range: boolean
  description:
    name: description
    description: description of the specification component
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    slot_uri: dcterms:description
    alias: description
    owner: SlotDerivation
    domain_of:
    - SpecificationComponent
    range: string
  implements:
    name: implements
    description: A reference to a specification that this component implements.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    multivalued: true
    alias: implements
    owner: SlotDerivation
    domain_of:
    - SpecificationComponent
    range: uriorcurie
  comments:
    name: comments
    description: A list of comments about this component. Comments are free text,
      and may be used to provide additional information about the component, including
      instructions for its use.
    from_schema: https://w3id.org/linkml/transformer
    rank: 1000
    slot_uri: rdfs:comment
    multivalued: true
    alias: comments
    owner: SlotDerivation
    domain_of:
    - SpecificationComponent
    range: string