Class: EnumExpression
An expression that constrains the range of a slot
URI: [linkml:EnumExpression](https://w3id.org/linkml/EnumExpression)
[Uriorcurie](Uriorcurie.md) | the identifier of an enumeration code set | direct | | [code_set_tag](code_set_tag.md) | 0..1
[String](String.md) | the version tag of the enumeration code set | direct | | [code_set_version](code_set_version.md) | 0..1
[String](String.md) | the version identifier of the enumeration code set | direct | | [pv_formula](pv_formula.md) | 0..1
[PvFormulaOptions](PvFormulaOptions.md) | Defines the specific formula to be used to generate the permissible values | direct | | [permissible_values](permissible_values.md) | *
[PermissibleValue](PermissibleValue.md) | A list of possible values for a slot range | direct | | [include](include.md) | *
[AnonymousEnumExpression](AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be in... | direct | | [minus](minus.md) | *
[AnonymousEnumExpression](AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be su... | direct | | [inherits](inherits.md) | *
[EnumDefinition](EnumDefinition.md) | An enum definition that is used as the basis to create a new enum | direct | | [reachable_from](reachable_from.md) | 0..1
[ReachabilityQuery](ReachabilityQuery.md) | Specifies a query for obtaining a list of permissible values based on graph r... | direct | | [matches](matches.md) | 0..1
[MatchQuery](MatchQuery.md) | Specifies a match query that is used to calculate the list of permissible val... | direct | | [concepts](concepts.md) | *
[Uriorcurie](Uriorcurie.md) | A list of identifiers that are used to construct a set of permissible values | direct | ## Usages | used by | used in | type | used | | --- | --- | --- | --- | | [EnumExpression](EnumExpression.md) | [code_set](code_set.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [code_set_tag](code_set_tag.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [code_set_version](code_set_version.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [permissible_values](permissible_values.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [include](include.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [minus](minus.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [inherits](inherits.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [reachable_from](reachable_from.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [matches](matches.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [concepts](concepts.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [code_set](code_set.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [code_set_tag](code_set_tag.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [code_set_version](code_set_version.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [permissible_values](permissible_values.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [include](include.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [minus](minus.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [inherits](inherits.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [reachable_from](reachable_from.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [matches](matches.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [concepts](concepts.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [code_set](code_set.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [code_set_tag](code_set_tag.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [code_set_version](code_set_version.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [permissible_values](permissible_values.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [include](include.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [minus](minus.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [inherits](inherits.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [reachable_from](reachable_from.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [matches](matches.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [concepts](concepts.md) | domain | [EnumExpression](EnumExpression.md) | | [SlotExpression](SlotExpression.md) | [enum_range](enum_range.md) | range | [EnumExpression](EnumExpression.md) | | [AnonymousSlotExpression](AnonymousSlotExpression.md) | [enum_range](enum_range.md) | range | [EnumExpression](EnumExpression.md) | | [SlotDefinition](SlotDefinition.md) | [enum_range](enum_range.md) | range | [EnumExpression](EnumExpression.md) | ## Identifier and Mapping Information ### Schema Source * from schema: https://w3id.org/linkml/meta ## Mappings | Mapping Type | Mapped Value | | --- | --- | | self | linkml:EnumExpression | | native | linkml:EnumExpression | ## LinkML Source ### Direct
### Induced
classDiagram
class EnumExpression
click EnumExpression href "../EnumExpression/"
Expression <|-- EnumExpression
click Expression href "../Expression/"
EnumExpression <|-- AnonymousEnumExpression
click AnonymousEnumExpression href "../AnonymousEnumExpression/"
EnumExpression <|-- EnumDefinition
click EnumDefinition href "../EnumDefinition/"
EnumExpression : code_set
EnumExpression : code_set_tag
EnumExpression : code_set_version
EnumExpression : concepts
EnumExpression : include
EnumExpression --> "*" AnonymousEnumExpression : include
click AnonymousEnumExpression href "../AnonymousEnumExpression/"
EnumExpression : inherits
EnumExpression --> "*" EnumDefinition : inherits
click EnumDefinition href "../EnumDefinition/"
EnumExpression : matches
EnumExpression --> "0..1" MatchQuery : matches
click MatchQuery href "../MatchQuery/"
EnumExpression : minus
EnumExpression --> "*" AnonymousEnumExpression : minus
click AnonymousEnumExpression href "../AnonymousEnumExpression/"
EnumExpression : permissible_values
EnumExpression --> "*" PermissibleValue : permissible_values
click PermissibleValue href "../PermissibleValue/"
EnumExpression : pv_formula
EnumExpression --> "0..1" PvFormulaOptions : pv_formula
click PvFormulaOptions href "../PvFormulaOptions/"
EnumExpression : reachable_from
EnumExpression --> "0..1" ReachabilityQuery : reachable_from
click ReachabilityQuery href "../ReachabilityQuery/"
## Inheritance
* [Expression](Expression.md)
* **EnumExpression**
## Slots
| Name | Cardinality and Range | Description | Inheritance |
| --- | --- | --- | --- |
| [code_set](code_set.md) | 0..1 [Uriorcurie](Uriorcurie.md) | the identifier of an enumeration code set | direct | | [code_set_tag](code_set_tag.md) | 0..1
[String](String.md) | the version tag of the enumeration code set | direct | | [code_set_version](code_set_version.md) | 0..1
[String](String.md) | the version identifier of the enumeration code set | direct | | [pv_formula](pv_formula.md) | 0..1
[PvFormulaOptions](PvFormulaOptions.md) | Defines the specific formula to be used to generate the permissible values | direct | | [permissible_values](permissible_values.md) | *
[PermissibleValue](PermissibleValue.md) | A list of possible values for a slot range | direct | | [include](include.md) | *
[AnonymousEnumExpression](AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be in... | direct | | [minus](minus.md) | *
[AnonymousEnumExpression](AnonymousEnumExpression.md) | An enum expression that yields a list of permissible values that are to be su... | direct | | [inherits](inherits.md) | *
[EnumDefinition](EnumDefinition.md) | An enum definition that is used as the basis to create a new enum | direct | | [reachable_from](reachable_from.md) | 0..1
[ReachabilityQuery](ReachabilityQuery.md) | Specifies a query for obtaining a list of permissible values based on graph r... | direct | | [matches](matches.md) | 0..1
[MatchQuery](MatchQuery.md) | Specifies a match query that is used to calculate the list of permissible val... | direct | | [concepts](concepts.md) | *
[Uriorcurie](Uriorcurie.md) | A list of identifiers that are used to construct a set of permissible values | direct | ## Usages | used by | used in | type | used | | --- | --- | --- | --- | | [EnumExpression](EnumExpression.md) | [code_set](code_set.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [code_set_tag](code_set_tag.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [code_set_version](code_set_version.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [permissible_values](permissible_values.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [include](include.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [minus](minus.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [inherits](inherits.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [reachable_from](reachable_from.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [matches](matches.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumExpression](EnumExpression.md) | [concepts](concepts.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [code_set](code_set.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [code_set_tag](code_set_tag.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [code_set_version](code_set_version.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [permissible_values](permissible_values.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [include](include.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [minus](minus.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [inherits](inherits.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [reachable_from](reachable_from.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [matches](matches.md) | domain | [EnumExpression](EnumExpression.md) | | [AnonymousEnumExpression](AnonymousEnumExpression.md) | [concepts](concepts.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [code_set](code_set.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [code_set_tag](code_set_tag.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [code_set_version](code_set_version.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [permissible_values](permissible_values.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [include](include.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [minus](minus.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [inherits](inherits.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [reachable_from](reachable_from.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [matches](matches.md) | domain | [EnumExpression](EnumExpression.md) | | [EnumDefinition](EnumDefinition.md) | [concepts](concepts.md) | domain | [EnumExpression](EnumExpression.md) | | [SlotExpression](SlotExpression.md) | [enum_range](enum_range.md) | range | [EnumExpression](EnumExpression.md) | | [AnonymousSlotExpression](AnonymousSlotExpression.md) | [enum_range](enum_range.md) | range | [EnumExpression](EnumExpression.md) | | [SlotDefinition](SlotDefinition.md) | [enum_range](enum_range.md) | range | [EnumExpression](EnumExpression.md) | ## Identifier and Mapping Information ### Schema Source * from schema: https://w3id.org/linkml/meta ## Mappings | Mapping Type | Mapped Value | | --- | --- | | self | linkml:EnumExpression | | native | linkml:EnumExpression | ## LinkML Source ### Direct
name: enum_expression
description: An expression that constrains the range of a slot
from_schema: https://w3id.org/linkml/meta
is_a: expression
slots:
- code_set
- code_set_tag
- code_set_version
- pv_formula
- permissible_values
- include
- minus
- inherits
- reachable_from
- matches
- concepts
name: enum_expression
description: An expression that constrains the range of a slot
from_schema: https://w3id.org/linkml/meta
is_a: expression
attributes:
code_set:
name: code_set
description: the identifier of an enumeration code set.
in_subset:
- SpecificationSubset
- BasicSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: uriorcurie
code_set_tag:
name: code_set_tag
description: the version tag of the enumeration code set
comments:
- enum_expression cannot have both a code_set_tag and a code_set_version
in_subset:
- BasicSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: string
code_set_version:
name: code_set_version
description: the version identifier of the enumeration code set
comments:
- we assume that version identifiers lexically sort in temporal order. Recommend
semver when possible
in_subset:
- BasicSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: string
pv_formula:
name: pv_formula
description: Defines the specific formula to be used to generate the permissible
values.
comments:
- you cannot have BOTH the permissible_values and permissible_value_formula tag
- code_set must be supplied for this to be valid
in_subset:
- SpecificationSubset
- BasicSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
owner: enum_expression
domain_of:
- enum_expression
- enum_binding
range: pv_formula_options
permissible_values:
name: permissible_values
description: A list of possible values for a slot range
in_subset:
- SpecificationSubset
- BasicSubset
from_schema: https://w3id.org/linkml/meta
aliases:
- coded values
exact_mappings:
- cdisc:PermissibleValue
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: permissible_value
multivalued: true
inlined: true
include:
name: include
description: An enum expression that yields a list of permissible values that
are to be included, after subtracting the minus set
in_subset:
- SpecificationSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: anonymous_enum_expression
multivalued: true
minus:
name: minus
description: An enum expression that yields a list of permissible values that
are to be subtracted from the enum
in_subset:
- SpecificationSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: anonymous_enum_expression
multivalued: true
inherits:
name: inherits
description: An enum definition that is used as the basis to create a new enum
comments:
- All permissible values for all inherited enums are copied to form the initial
seed set
in_subset:
- SpecificationSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: enum_definition
multivalued: true
reachable_from:
name: reachable_from
description: Specifies a query for obtaining a list of permissible values based
on graph reachability
in_subset:
- SpecificationSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: reachability_query
matches:
name: matches
description: Specifies a match query that is used to calculate the list of permissible
values
in_subset:
- SpecificationSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: match_query
concepts:
name: concepts
description: A list of identifiers that are used to construct a set of permissible
values
in_subset:
- SpecificationSubset
from_schema: https://w3id.org/linkml/meta
rank: 1000
domain: enum_expression
owner: enum_expression
domain_of:
- enum_expression
range: uriorcurie
multivalued: true