Class: LogicalPredicate

A reusable, composable, and nestable logical expression resolving to a boolean. Used for applicability conditions, validation rules, eligibility criteria, and skip logic. This is a data-model predicate — not a clinical condition (diagnosis). Implements usdm:Condition (the study-design predicate, distinct from the clinical FHIR Condition resource).

URI: dds:class/LogicalPredicate

erDiagram
LogicalPredicate {
    string implementsPredicate  
    LogicalOperator operator  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
SiteOrSponsorComment {
    string text  
    OriginSource sourceType  
    string source  
    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  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Coding {
    string code  
    string decode  
    string codeSystem  
    string codeSystemVersion  
    AliasPredicate aliasType  
}
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  
    string defaultValue  
    stringList items  
    boolean required  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
RangeCheck {
    Comparator comparator  
    stringList checkValues  
    string item  
    SoftHard softHard  
    LogicalOperator operator  
}
Check {
    string publishedBy  
    uriorcurie externalReference  
    SoftHard severity  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}

LogicalPredicate ||--}o RangeCheck : "rangeChecks"
LogicalPredicate ||--}o FormalExpression : "expressions"
LogicalPredicate ||--}o LogicalPredicate : "predicates"
LogicalPredicate ||--}o Coding : "coding"
LogicalPredicate ||--}o Comment : "comments"
LogicalPredicate ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
SiteOrSponsorComment ||--}o Coding : "coding"
SiteOrSponsorComment ||--}o Comment : "comments"
SiteOrSponsorComment ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Comment ||--}o DocumentReference : "documents"
Comment ||--}o Coding : "coding"
Comment ||--}o Comment : "comments"
Comment ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
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 ApplicabilityCondition : "applicableWhen"
Parameter ||--}o LogicalPredicate : "validationPredicates"
Parameter ||--}o Coding : "coding"
RangeCheck ||--}o FormalExpression : "expressions"
RangeCheck ||--|o Check : "implementsCheck"
Check ||--}o IdentifiableElement : "appliesTo"
Check ||--}o FormalExpression : "expressions"
Check ||--}o Coding : "coding"
Check ||--}o Comment : "comments"
Check ||--}o SiteOrSponsorComment : "siteOrSponsorComments"

Inheritance

Slots

Name Cardinality and Range Description Inheritance
rangeChecks *
RangeCheck
Range checks that compose this predicate direct
implementsPredicate 0..1
String
Reference to an external (e.g. USDM) predicate/condition definition that this implements direct
expressions *
FormalExpression
Logical expression, resolving to a boolean, that implements this predicate 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
predicates *
LogicalPredicate
Child predicates to combine using the operator (AND/OR/NOT/EXPRESSION). Rearrange and nest to compose XOR or mixed AND/OR. Use OID references to reuse predicates 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 *
SiteOrSponsorComment
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 
Specification or 
CodeList or 
Concept or 
ConceptProperty or 
LogicalPredicate or 
Method 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] LogicalPredicate
Governed wasDerivedFrom any_of[range] LogicalPredicate
ODMItemSerialization collectionExceptionPredicate range LogicalPredicate
Specification predicates range LogicalPredicate
Specification wasDerivedFrom any_of[range] LogicalPredicate
Item wasDerivedFrom any_of[range] LogicalPredicate
ItemGroup wasDerivedFrom any_of[range] LogicalPredicate
Query wasDerivedFrom any_of[range] LogicalPredicate
CodeList wasDerivedFrom any_of[range] LogicalPredicate
Comment wasDerivedFrom any_of[range] LogicalPredicate
Concept wasDerivedFrom any_of[range] LogicalPredicate
ConceptProperty wasDerivedFrom any_of[range] LogicalPredicate
ApplicabilityCondition predicates range LogicalPredicate
ApplicabilityCondition wasDerivedFrom any_of[range] LogicalPredicate
LogicalPredicate predicates range LogicalPredicate
LogicalPredicate wasDerivedFrom any_of[range] LogicalPredicate
Check wasDerivedFrom any_of[range] LogicalPredicate
Method wasDerivedFrom any_of[range] LogicalPredicate
Parameter validationPredicates range LogicalPredicate
SiteOrSponsorComment wasDerivedFrom any_of[range] LogicalPredicate
DataStructureDefinition wasDerivedFrom any_of[range] LogicalPredicate
Dataflow wasDerivedFrom any_of[range] LogicalPredicate
CubeComponent wasDerivedFrom any_of[range] LogicalPredicate
Measure wasDerivedFrom any_of[range] LogicalPredicate
Dimension wasDerivedFrom any_of[range] LogicalPredicate
DataAttribute wasDerivedFrom any_of[range] LogicalPredicate
DataProduct wasDerivedFrom any_of[range] LogicalPredicate
ProvisionAgreement wasDerivedFrom any_of[range] LogicalPredicate
Policy wasDerivedFrom any_of[range] LogicalPredicate
Analysis wasDerivedFrom any_of[range] LogicalPredicate
Display wasDerivedFrom any_of[range] LogicalPredicate

Identifier and Mapping Information

Schema Source

  • from schema: https://w3id.org/dds

Mappings

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

LinkML Source

Direct

name: LogicalPredicate
description: A reusable, composable, and nestable logical expression resolving to
  a boolean. Used for applicability conditions, validation rules, eligibility criteria,
  and skip logic. This is a data-model predicate — not a clinical condition (diagnosis).
  Implements usdm:Condition (the study-design predicate, distinct from the clinical
  FHIR Condition resource).
from_schema: https://w3id.org/dds
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 predicate
    from_schema: https://w3id.org/dds
    domain_of:
    - Item
    - LogicalPredicate
    range: RangeCheck
    multivalued: true
    inlined: true
    inlined_as_list: true
  implementsPredicate:
    name: implementsPredicate
    description: Reference to an external (e.g. USDM) predicate/condition definition
      that this implements
    from_schema: https://w3id.org/dds
    rank: 1000
    domain_of:
    - LogicalPredicate
  expressions:
    name: expressions
    description: Logical expression, resolving to a boolean, that implements this
      predicate in a specific context
    from_schema: https://w3id.org/dds
    rank: 1000
    domain_of:
    - LogicalPredicate
    - RangeCheck
    - Check
    - Method
    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://w3id.org/dds
    rank: 1000
    ifabsent: LogicalOperator(AND)
    domain_of:
    - LogicalPredicate
    - RangeCheck
    - Constraint
    range: LogicalOperator
    required: false
  predicates:
    name: predicates
    description: Child predicates to combine using the operator (AND/OR/NOT/EXPRESSION).
      Rearrange and nest to compose XOR or mixed AND/OR. Use OID references to reuse
      predicates defined elsewhere.
    from_schema: https://w3id.org/dds
    domain_of:
    - Specification
    - ApplicabilityCondition
    - LogicalPredicate
    range: LogicalPredicate
    multivalued: true
    inlined: false

Induced

name: LogicalPredicate
description: A reusable, composable, and nestable logical expression resolving to
  a boolean. Used for applicability conditions, validation rules, eligibility criteria,
  and skip logic. This is a data-model predicate — not a clinical condition (diagnosis).
  Implements usdm:Condition (the study-design predicate, distinct from the clinical
  FHIR Condition resource).
from_schema: https://w3id.org/dds
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 predicate
    from_schema: https://w3id.org/dds
    alias: rangeChecks
    owner: LogicalPredicate
    domain_of:
    - Item
    - LogicalPredicate
    range: RangeCheck
    multivalued: true
    inlined: true
    inlined_as_list: true
  implementsPredicate:
    name: implementsPredicate
    description: Reference to an external (e.g. USDM) predicate/condition definition
      that this implements
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: implementsPredicate
    owner: LogicalPredicate
    domain_of:
    - LogicalPredicate
    range: string
  expressions:
    name: expressions
    description: Logical expression, resolving to a boolean, that implements this
      predicate in a specific context
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: expressions
    owner: LogicalPredicate
    domain_of:
    - LogicalPredicate
    - RangeCheck
    - Check
    - Method
    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://w3id.org/dds
    rank: 1000
    ifabsent: LogicalOperator(AND)
    alias: operator
    owner: LogicalPredicate
    domain_of:
    - LogicalPredicate
    - RangeCheck
    - Constraint
    range: LogicalOperator
    required: false
  predicates:
    name: predicates
    description: Child predicates to combine using the operator (AND/OR/NOT/EXPRESSION).
      Rearrange and nest to compose XOR or mixed AND/OR. Use OID references to reuse
      predicates defined elsewhere.
    from_schema: https://w3id.org/dds
    alias: predicates
    owner: LogicalPredicate
    domain_of:
    - Specification
    - ApplicabilityCondition
    - LogicalPredicate
    range: LogicalPredicate
    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://w3id.org/dds
    rank: 1000
    identifier: true
    alias: OID
    owner: LogicalPredicate
    domain_of:
    - Identifiable
    range: string
    required: true
  uuid:
    name: uuid
    description: Universal unique identifier
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: uuid
    owner: LogicalPredicate
    domain_of:
    - Identifiable
    range: string
  name:
    name: name
    description: Short name or identifier, used for field names
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: name
    owner: LogicalPredicate
    domain_of:
    - Labelled
    - DefClass
    - SubClass
    - Standard
    range: string
  description:
    name: description
    description: Detailed description, shown in tooltips
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: description
    owner: LogicalPredicate
    domain_of:
    - Labelled
    - CodeListItem
    range: string
    any_of:
    - range: string
    - range: TranslatedText
  coding:
    name: coding
    description: Semantic tags for this element
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: coding
    owner: LogicalPredicate
    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://w3id.org/dds
    exact_mappings:
    - skos:prefLabel
    rank: 1000
    alias: label
    owner: LogicalPredicate
    domain_of:
    - Labelled
    range: string
    any_of:
    - range: string
    - range: TranslatedText
  aliases:
    name: aliases
    description: Alternative name or identifier
    from_schema: https://w3id.org/dds
    exact_mappings:
    - skos:altLabel
    rank: 1000
    alias: aliases
    owner: LogicalPredicate
    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://w3id.org/dds
    rank: 1000
    alias: mandatory
    owner: LogicalPredicate
    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://w3id.org/dds
    rank: 1000
    alias: comments
    owner: LogicalPredicate
    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://w3id.org/dds
    rank: 1000
    alias: siteOrSponsorComments
    owner: LogicalPredicate
    domain_of:
    - Governed
    range: SiteOrSponsorComment
    multivalued: true
    inlined: false
  purpose:
    name: purpose
    description: Purpose or rationale for this data element
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: purpose
    owner: LogicalPredicate
    domain_of:
    - Governed
    range: string
    any_of:
    - range: string
    - range: TranslatedText
  lastUpdated:
    name: lastUpdated
    description: When the resource was last updated
    from_schema: https://w3id.org/dds
    rank: 1000
    alias: lastUpdated
    owner: LogicalPredicate
    domain_of:
    - Governed
    range: datetime
  owner:
    name: owner
    description: Party responsible for this element
    from_schema: https://w3id.org/dds
    narrow_mappings:
    - prov:wasAttributedTo
    - prov:wasAssociatedBy
    rank: 1000
    alias: owner
    owner: LogicalPredicate
    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://w3id.org/dds
    exact_mappings:
    - prov:wasDerivedFrom
    rank: 1000
    alias: wasDerivedFrom
    owner: LogicalPredicate
    domain_of:
    - Governed
    range: string
    any_of:
    - range: Item
    - range: ItemGroup
    - range: Specification
    - range: CodeList
    - range: Concept
    - range: ConceptProperty
    - range: LogicalPredicate
    - range: Method
    - range: Dataflow
    - range: CubeComponent
    - range: DataProduct
    - range: ProvisionAgreement