Skip to content

Class: TypeExpression

An abstract class grouping named types and anonymous type expressions

URI: [linkml:TypeExpression](https://w3id.org/linkml/TypeExpression)
classDiagram class TypeExpression click TypeExpression href "../TypeExpression/" Expression <|-- TypeExpression click Expression href "../Expression/" TypeExpression <|-- AnonymousTypeExpression click AnonymousTypeExpression href "../AnonymousTypeExpression/" TypeExpression <|-- TypeDefinition click TypeDefinition href "../TypeDefinition/" TypeExpression : all_of TypeExpression --> "*" AnonymousTypeExpression : all_of click AnonymousTypeExpression href "../AnonymousTypeExpression/" TypeExpression : any_of TypeExpression --> "*" AnonymousTypeExpression : any_of click AnonymousTypeExpression href "../AnonymousTypeExpression/" TypeExpression : equals_number TypeExpression : equals_string TypeExpression : equals_string_in TypeExpression : exactly_one_of TypeExpression --> "*" AnonymousTypeExpression : exactly_one_of click AnonymousTypeExpression href "../AnonymousTypeExpression/" TypeExpression : implicit_prefix TypeExpression : maximum_value TypeExpression --> "0..1" Anything : maximum_value click Anything href "../Anything/" TypeExpression : minimum_value TypeExpression --> "0..1" Anything : minimum_value click Anything href "../Anything/" TypeExpression : none_of TypeExpression --> "*" AnonymousTypeExpression : none_of click AnonymousTypeExpression href "../AnonymousTypeExpression/" TypeExpression : pattern TypeExpression : structured_pattern TypeExpression --> "0..1" PatternExpression : structured_pattern click PatternExpression href "../PatternExpression/" TypeExpression : unit TypeExpression --> "0..1" UnitOfMeasure : unit click UnitOfMeasure href "../UnitOfMeasure/"
## Inheritance * [Expression](Expression.md) * **TypeExpression** ## Class Properties | Property | Value | | --- | --- | | Mixin | Yes | ## Slots | Name | Cardinality and Range | Description | Inheritance | | --- | --- | --- | --- | | [pattern](pattern.md) | 0..1
[String](String.md) | the string value of the slot must conform to this regular expression expresse... | direct | | [structured_pattern](structured_pattern.md) | 0..1
[PatternExpression](PatternExpression.md) | the string value of the slot must conform to the regular expression in the pa... | direct | | [unit](unit.md) | 0..1
[UnitOfMeasure](UnitOfMeasure.md) | an encoding of a unit | direct | | [implicit_prefix](implicit_prefix.md) | 0..1
[String](String.md) | Causes the slot value to be interpreted as a uriorcurie after prefixing with ... | direct | | [equals_string](equals_string.md) | 0..1
[String](String.md) | the slot must have range string and the value of the slot must equal the spec... | direct | | [equals_string_in](equals_string_in.md) | *
[String](String.md) | the slot must have range string and the value of the slot must equal one of t... | direct | | [equals_number](equals_number.md) | 0..1
[Integer](Integer.md) | the slot must have range of a number and the value of the slot must equal the... | direct | | [minimum_value](minimum_value.md) | 0..1
[Anything](Anything.md) | For ordinal ranges, the value must be equal to or higher than this | direct | | [maximum_value](maximum_value.md) | 0..1
[Anything](Anything.md) | For ordinal ranges, the value must be equal to or lower than this | direct | | [none_of](none_of.md) | *
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if none of the expressions hold | direct | | [exactly_one_of](exactly_one_of.md) | *
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if only one of the expressions hold | direct | | [any_of](any_of.md) | *
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if at least one of the expressions hold | direct | | [all_of](all_of.md) | *
[AnonymousTypeExpression](AnonymousTypeExpression.md) | holds if all of the expressions hold | direct | ## Mixin Usage | mixed into | description | | --- | --- | | [AnonymousTypeExpression](AnonymousTypeExpression.md) | A type expression that is not a top-level named type definition | | [TypeDefinition](TypeDefinition.md) | an element that whose instances are atomic scalar values that can be mapped t... | ## Identifier and Mapping Information ### Schema Source * from schema: https://w3id.org/linkml/meta ## Mappings | Mapping Type | Mapped Value | | --- | --- | | self | linkml:TypeExpression | | native | linkml:TypeExpression | ## LinkML Source ### Direct
name: type_expression
description: An abstract class grouping named types and anonymous type expressions
from_schema: https://w3id.org/linkml/meta
is_a: expression
mixin: true
slots:
- pattern
- structured_pattern
- unit
- implicit_prefix
- equals_string
- equals_string_in
- equals_number
- minimum_value
- maximum_value
- none_of
- exactly_one_of
- any_of
- all_of
slot_usage:
  any_of:
    name: any_of
    range: anonymous_type_expression
  all_of:
    name: all_of
    range: anonymous_type_expression
  exactly_one_of:
    name: exactly_one_of
    range: anonymous_type_expression
  none_of:
    name: none_of
    range: anonymous_type_expression

### Induced
name: type_expression
description: An abstract class grouping named types and anonymous type expressions
from_schema: https://w3id.org/linkml/meta
is_a: expression
mixin: true
slot_usage:
  any_of:
    name: any_of
    range: anonymous_type_expression
  all_of:
    name: all_of
    range: anonymous_type_expression
  exactly_one_of:
    name: exactly_one_of
    range: anonymous_type_expression
  none_of:
    name: none_of
    range: anonymous_type_expression
attributes:
  pattern:
    name: pattern
    description: the string value of the slot must conform to this regular expression
      expressed in the string
    in_subset:
    - SpecificationSubset
    - BasicSubset
    from_schema: https://w3id.org/linkml/meta
    rank: 35
    domain: definition
    inherited: true
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: string
  structured_pattern:
    name: structured_pattern
    description: the string value of the slot must conform to the regular expression
      in the pattern expression
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    see_also:
    - https://linkml.io/linkml/schemas/constraints.html#structured-patterns
    rank: 1000
    domain: definition
    inherited: true
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: pattern_expression
  unit:
    name: unit
    description: an encoding of a unit
    from_schema: https://w3id.org/linkml/meta
    rank: 1000
    slot_uri: qudt:unit
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    - permissible_value
    range: UnitOfMeasure
  implicit_prefix:
    name: implicit_prefix
    description: Causes the slot value to be interpreted as a uriorcurie after prefixing
      with this string
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    status: testing
    rank: 1000
    domain: slot_expression
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: string
  equals_string:
    name: equals_string
    description: the slot must have range string and the value of the slot must equal
      the specified value
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    rank: 1000
    is_a: list_value_specification_constant
    inherited: true
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: string
  equals_string_in:
    name: equals_string_in
    description: the slot must have range string and the value of the slot must equal
      one of the specified values
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    status: testing
    rank: 1000
    is_a: list_value_specification_constant
    inherited: true
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: string
    multivalued: true
  equals_number:
    name: equals_number
    description: the slot must have range of a number and the value of the slot must
      equal the specified value
    from_schema: https://w3id.org/linkml/meta
    status: unstable
    rank: 1000
    is_a: list_value_specification_constant
    inherited: true
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: integer
  minimum_value:
    name: minimum_value
    description: For ordinal ranges, the value must be equal to or higher than this
    notes:
    - Range to be refined to an "Ordinal" metaclass - see https://github.com/linkml/linkml/issues/1384#issuecomment-1892721142
    in_subset:
    - SpecificationSubset
    - BasicSubset
    from_schema: https://w3id.org/linkml/meta
    aliases:
    - low value
    rank: 1000
    domain: slot_definition
    inherited: true
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: Anything
  maximum_value:
    name: maximum_value
    description: For ordinal ranges, the value must be equal to or lower than this
    notes:
    - Range to be refined to an "Ordinal" metaclass - see https://github.com/linkml/linkml/issues/1384#issuecomment-1892721142
    in_subset:
    - SpecificationSubset
    - BasicSubset
    from_schema: https://w3id.org/linkml/meta
    aliases:
    - high value
    rank: 1000
    domain: slot_definition
    inherited: true
    owner: type_expression
    domain_of:
    - type_expression
    - slot_expression
    range: Anything
  none_of:
    name: none_of
    description: holds if none of the expressions hold
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    see_also:
    - https://w3id.org/linkml/docs/specification/05validation/#rules
    exact_mappings:
    - sh:not
    rank: 105
    is_a: boolean_slot
    owner: type_expression
    domain_of:
    - type_expression
    - path_expression
    - slot_expression
    - class_expression
    range: anonymous_type_expression
    multivalued: true
  exactly_one_of:
    name: exactly_one_of
    description: holds if only one of the expressions hold
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    see_also:
    - https://w3id.org/linkml/docs/specification/05validation/#rules
    exact_mappings:
    - sh:xone
    rank: 103
    is_a: boolean_slot
    owner: type_expression
    domain_of:
    - type_expression
    - path_expression
    - slot_expression
    - class_expression
    range: anonymous_type_expression
    multivalued: true
  any_of:
    name: any_of
    description: holds if at least one of the expressions hold
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    see_also:
    - https://w3id.org/linkml/docs/specification/05validation/#rules
    exact_mappings:
    - sh:or
    rank: 101
    is_a: boolean_slot
    owner: type_expression
    domain_of:
    - type_expression
    - path_expression
    - slot_expression
    - class_expression
    range: anonymous_type_expression
    multivalued: true
  all_of:
    name: all_of
    description: holds if all of the expressions hold
    in_subset:
    - SpecificationSubset
    from_schema: https://w3id.org/linkml/meta
    see_also:
    - https://w3id.org/linkml/docs/specification/05validation/#rules
    exact_mappings:
    - sh:and
    rank: 107
    is_a: boolean_slot
    owner: type_expression
    domain_of:
    - type_expression
    - path_expression
    - slot_expression
    - class_expression
    range: anonymous_type_expression
    multivalued: true