Class: Condition

A reusable, composable, and nestable logical construct allowing for complex expressions. Conditions are most useful when given a meaningful name and linked to Study Definitions.

URI: odm:class/Condition

erDiagram
Condition {
    string implementsCondition  
    LogicalOperator operator  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Comment {
    string text  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Coding {
    string code  
    string decode  
    string codeSystem  
    string codeSystemVersion  
    AliasPredicate aliasType  
}
DocumentReference {
    string title  
    string leafID  
    integerList pages  
    string relationship  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
FormalExpression {
    string context  
    string expression  
    string returnType  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Resource {
    string resourceType  
    string attribute  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
ReturnValue {
    DataType dataType  
    stringList valueList  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Parameter {
    DataType dataType  
    string value  
    stringList items  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
RangeCheck {
    Comparator comparator  
    stringList checkValues  
    string item  
    SoftHard softHard  
    LogicalOperator operator  
}

Condition ||--}o RangeCheck : "rangeChecks"
Condition ||--}o FormalExpression : "formalExpression"
Condition ||--}o Condition : "conditions"
Condition ||--}o Coding : "coding"
Condition ||--}o Comment : "comments"
Condition ||--}o Comment : "siteOrSponsorComments"
Comment ||--}o DocumentReference : "documents"
Comment ||--}o Coding : "coding"
DocumentReference ||--}o Coding : "coding"
FormalExpression ||--}o Parameter : "parameters"
FormalExpression ||--|o ReturnValue : "returnValue"
FormalExpression ||--}o Resource : "externalCodeLibs"
FormalExpression ||--}o Coding : "coding"
Resource ||--}o FormalExpression : "selection"
Resource ||--}o Coding : "coding"
ReturnValue ||--}o Coding : "coding"
Parameter ||--}o CodeList : "codeList"
Parameter ||--}o ConceptProperty : "conceptProperty"
Parameter ||--}o Coding : "coding"
RangeCheck ||--}o FormalExpression : "formalExpression"

Inheritance

Slots

Name Cardinality and Range Description Inheritance
rangeChecks *
RangeCheck
Range checks that compose this condition direct
implementsCondition 0..1
String
Reference to a external (e.g. USDM) condition definition that this implements direct
formalExpression *
FormalExpression
Logical expression, resolving to a boolean, that implements this condition in a specific context direct
operator 0..1
LogicalOperator
Logical operator for combining child conditions or range checks. Defaults to ALL if not specified. direct
conditions *
Condition
Child conditions to combine using the operator. Multiple conditions are composed according to the operator (AND/OR/NOT). Rearrange and nest to compose XOR, or combinations of AND and OR. Unless the operator is EXPRESSION, in which case the formalExpression is used instead. Use OID references to reuse conditions defined elsewhere. direct
OID 1
String
Local identifier within this study/context. Use CDISC OID format for regulatory submissions, or simple strings for internal use. Identifiable
uuid 0..1
String
Universal unique identifier Identifiable
name 0..1
String
Short name or identifier, used for field names Labelled
description 0..1
String or 
String or 
TranslatedText
Detailed description, shown in tooltips Labelled
coding *
Coding
Semantic tags for this element Labelled
label 0..1
String or 
String or 
TranslatedText
Human-readable label, shown in UIs Labelled
aliases *
String or 
String or 
TranslatedText
Alternative name or identifier Labelled
mandatory 0..1
Boolean
Is this element required? Governed
comments *
Comment
Comment on the element, such as a rationale for its inclusion or exclusion Governed
siteOrSponsorComments *
Comment
Comment on the element, such as a rationale for its inclusion or exclusion Governed
purpose 0..1
String or 
String or 
TranslatedText
Purpose or rationale for this data element Governed
lastUpdated 0..1
Datetime
When the resource was last updated Governed
owner 0..1
String or 
User or 
Organization or 
String
Party responsible for this element Governed
wasDerivedFrom 0..1
String or 
Item or 
ItemGroup or 
MetaDataVersion or 
CodeList or 
ReifiedConcept or 
ConceptProperty or 
Condition or 
Method or 
NominalOccurrence or 
Dataflow or 
CubeComponent or 
DataProduct or 
ProvisionAgreement
Reference to another item that this item implements or extends, e.g. a template Item definition. Governed

Usages

used by used in type used
GovernedElement wasDerivedFrom any_of[range] Condition
Governed wasDerivedFrom any_of[range] Condition
IsODMItem collectionExceptionCondition range Condition
MetaDataVersion conditions range Condition
MetaDataVersion wasDerivedFrom any_of[range] Condition
Item collectionExceptionCondition range Condition
Item wasDerivedFrom any_of[range] Condition
ItemGroup wasDerivedFrom any_of[range] Condition
CodeList wasDerivedFrom any_of[range] Condition
ReifiedConcept wasDerivedFrom any_of[range] Condition
ConceptProperty wasDerivedFrom any_of[range] Condition
WhereClause conditions range Condition
Condition conditions range Condition
Condition wasDerivedFrom any_of[range] Condition
Method wasDerivedFrom any_of[range] Condition
SiteOrSponsorComment wasDerivedFrom any_of[range] Condition
NominalOccurrence condition range Condition
NominalOccurrence wasDerivedFrom any_of[range] Condition
DataStructureDefinition wasDerivedFrom any_of[range] Condition
Dataflow wasDerivedFrom any_of[range] Condition
CubeComponent wasDerivedFrom any_of[range] Condition
Measure wasDerivedFrom any_of[range] Condition
Dimension wasDerivedFrom any_of[range] Condition
DataAttribute wasDerivedFrom any_of[range] Condition
DataProduct wasDerivedFrom any_of[range] Condition
ProvisionAgreement wasDerivedFrom any_of[range] Condition

Identifier and Mapping Information

Schema Source

  • from schema: https://cdisc.org/define-json

Mappings

Mapping Type Mapped Value
self odm:Condition
native odm:Condition
related fhir:Expression, qb:SliceKey, sdmx:DataConstraint, sdmx:MetaDataConstraint, sdmx:DataKeySet
close odm:ConditionDef, usdm:Condition

LinkML Source

Direct

name: Condition
description: A reusable, composable, and nestable logical construct allowing for complex
  expressions. Conditions are most useful when given a meaningful name and linked
  to Study Definitions.
from_schema: https://cdisc.org/define-json
close_mappings:
- odm:ConditionDef
- usdm:Condition
related_mappings:
- fhir:Expression
- qb:SliceKey
- sdmx:DataConstraint
- sdmx:MetaDataConstraint
- sdmx:DataKeySet
is_a: GovernedElement
attributes:
  rangeChecks:
    name: rangeChecks
    description: Range checks that compose this condition
    from_schema: https://cdisc.org/define-json
    domain_of:
    - Item
    - Condition
    range: RangeCheck
    multivalued: true
    inlined: true
    inlined_as_list: true
  implementsCondition:
    name: implementsCondition
    description: Reference to a external (e.g. USDM) condition definition that this
      implements
    from_schema: https://cdisc.org/define-json
    rank: 1000
    domain_of:
    - Condition
  formalExpression:
    name: formalExpression
    description: Logical expression, resolving to a boolean, that implements this
      condition in a specific context
    from_schema: https://cdisc.org/define-json
    rank: 1000
    domain_of:
    - Condition
    - RangeCheck
    range: FormalExpression
    multivalued: true
    inlined: true
    inlined_as_list: true
  operator:
    name: operator
    description: Logical operator for combining child conditions or range checks.
      Defaults to ALL if not specified.
    from_schema: https://cdisc.org/define-json
    rank: 1000
    domain_of:
    - Condition
    - RangeCheck
    range: LogicalOperator
    required: false
  conditions:
    name: conditions
    description: Child conditions to combine using the operator. Multiple conditions
      are composed according to the operator (AND/OR/NOT). Rearrange and nest to compose
      XOR, or combinations of AND and OR. Unless the operator is EXPRESSION, in which
      case the formalExpression is used instead. Use OID references to reuse conditions
      defined elsewhere.
    from_schema: https://cdisc.org/define-json
    domain_of:
    - MetaDataVersion
    - WhereClause
    - Condition
    range: Condition
    multivalued: true
    inlined: false

Induced

name: Condition
description: A reusable, composable, and nestable logical construct allowing for complex
  expressions. Conditions are most useful when given a meaningful name and linked
  to Study Definitions.
from_schema: https://cdisc.org/define-json
close_mappings:
- odm:ConditionDef
- usdm:Condition
related_mappings:
- fhir:Expression
- qb:SliceKey
- sdmx:DataConstraint
- sdmx:MetaDataConstraint
- sdmx:DataKeySet
is_a: GovernedElement
attributes:
  rangeChecks:
    name: rangeChecks
    description: Range checks that compose this condition
    from_schema: https://cdisc.org/define-json
    alias: rangeChecks
    owner: Condition
    domain_of:
    - Item
    - Condition
    range: RangeCheck
    multivalued: true
    inlined: true
    inlined_as_list: true
  implementsCondition:
    name: implementsCondition
    description: Reference to a external (e.g. USDM) condition definition that this
      implements
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: implementsCondition
    owner: Condition
    domain_of:
    - Condition
  formalExpression:
    name: formalExpression
    description: Logical expression, resolving to a boolean, that implements this
      condition in a specific context
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: formalExpression
    owner: Condition
    domain_of:
    - Condition
    - RangeCheck
    range: FormalExpression
    multivalued: true
    inlined: true
    inlined_as_list: true
  operator:
    name: operator
    description: Logical operator for combining child conditions or range checks.
      Defaults to ALL if not specified.
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: operator
    owner: Condition
    domain_of:
    - Condition
    - RangeCheck
    range: LogicalOperator
    required: false
  conditions:
    name: conditions
    description: Child conditions to combine using the operator. Multiple conditions
      are composed according to the operator (AND/OR/NOT). Rearrange and nest to compose
      XOR, or combinations of AND and OR. Unless the operator is EXPRESSION, in which
      case the formalExpression is used instead. Use OID references to reuse conditions
      defined elsewhere.
    from_schema: https://cdisc.org/define-json
    alias: conditions
    owner: Condition
    domain_of:
    - MetaDataVersion
    - WhereClause
    - Condition
    range: Condition
    multivalued: true
    inlined: false
  OID:
    name: OID
    description: Local identifier within this study/context. Use CDISC OID format
      for regulatory submissions, or simple strings for internal use.
    from_schema: https://cdisc.org/define-json
    rank: 1000
    identifier: true
    alias: OID
    owner: Condition
    domain_of:
    - Identifiable
    range: string
    required: true
    pattern: ^[A-Za-z][A-Za-z0-9._-]*$
  uuid:
    name: uuid
    description: Universal unique identifier
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: uuid
    owner: Condition
    domain_of:
    - Identifiable
    range: string
  name:
    name: name
    description: Short name or identifier, used for field names
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: name
    owner: Condition
    domain_of:
    - Labelled
    - Standard
    range: string
  description:
    name: description
    description: Detailed description, shown in tooltips
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: description
    owner: Condition
    domain_of:
    - Labelled
    - CodeListItem
    range: string
    any_of:
    - range: string
    - range: TranslatedText
  coding:
    name: coding
    description: Semantic tags for this element
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: coding
    owner: Condition
    domain_of:
    - Labelled
    - CodeListItem
    - SourceItem
    range: Coding
    multivalued: true
    inlined: true
    inlined_as_list: true
  label:
    name: label
    description: Human-readable label, shown in UIs
    from_schema: https://cdisc.org/define-json
    exact_mappings:
    - skos:prefLabel
    rank: 1000
    alias: label
    owner: Condition
    domain_of:
    - Labelled
    range: string
    any_of:
    - range: string
    - range: TranslatedText
  aliases:
    name: aliases
    description: Alternative name or identifier
    from_schema: https://cdisc.org/define-json
    exact_mappings:
    - skos:altLabel
    rank: 1000
    alias: aliases
    owner: Condition
    domain_of:
    - Labelled
    - CodeListItem
    range: string
    multivalued: true
    inlined: true
    inlined_as_list: true
    any_of:
    - range: string
    - range: TranslatedText
  mandatory:
    name: mandatory
    description: Is this element required?
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: mandatory
    owner: Condition
    domain_of:
    - Governed
    range: boolean
  comments:
    name: comments
    description: Comment on the element, such as a rationale for its inclusion or
      exclusion
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: comments
    owner: Condition
    domain_of:
    - Governed
    range: Comment
    multivalued: true
    inlined: false
  siteOrSponsorComments:
    name: siteOrSponsorComments
    description: Comment on the element, such as a rationale for its inclusion or
      exclusion
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: siteOrSponsorComments
    owner: Condition
    domain_of:
    - Governed
    range: Comment
    multivalued: true
    inlined: false
  purpose:
    name: purpose
    description: Purpose or rationale for this data element
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: purpose
    owner: Condition
    domain_of:
    - Governed
    range: string
    any_of:
    - range: string
    - range: TranslatedText
  lastUpdated:
    name: lastUpdated
    description: When the resource was last updated
    from_schema: https://cdisc.org/define-json
    rank: 1000
    alias: lastUpdated
    owner: Condition
    domain_of:
    - Governed
    range: datetime
  owner:
    name: owner
    description: Party responsible for this element
    from_schema: https://cdisc.org/define-json
    narrow_mappings:
    - prov:wasAttributedTo
    - prov:wasAssociatedBy
    rank: 1000
    alias: owner
    owner: Condition
    domain_of:
    - Governed
    range: string
    any_of:
    - range: User
    - range: Organization
    - range: string
  wasDerivedFrom:
    name: wasDerivedFrom
    description: Reference to another item that this item implements or extends, e.g.
      a template Item definition.
    from_schema: https://cdisc.org/define-json
    exact_mappings:
    - prov:wasDerivedFrom
    rank: 1000
    alias: wasDerivedFrom
    owner: Condition
    domain_of:
    - Governed
    range: string
    any_of:
    - range: Item
    - range: ItemGroup
    - range: MetaDataVersion
    - range: CodeList
    - range: ReifiedConcept
    - range: ConceptProperty
    - range: Condition
    - range: Method
    - range: NominalOccurrence
    - range: Dataflow
    - range: CubeComponent
    - range: DataProduct
    - range: ProvisionAgreement