Data Definition Specification (DDS)

Standards-agnostic canonical model for clinical data meaning, structure, and governance. Projects to CDISC (SDTM/ADaM/Define-XML), FHIR, OMOP, and SDMX. ODM/Define-XML is one serialization facet applied by the output generator; the canonical model is not ODM-derived.

URI: https://w3id.org/dds

Name: data-definition-spec

Schema Diagram

erDiagram
Specification {
    stringList resources  
    string usdmStudyDesignId  
    string studyOID  
    string studyName  
    string studyDescription  
    string protocolName  
    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  
}
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  
}
Display {
    string displayType  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Analysis {
    string analysisReason  
    string analysisPurpose  
    stringList inputData  
    string version  
    string href  
    MethodType type  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Concept {
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
ConceptProperty {
    integer minOccurs  
    integer maxOccurs  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
CodeList {
    DataType dataType  
    string formatName  
    string version  
    string href  
    boolean isNonStandard  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Standard {
    StandardName name  
    StandardType type  
    PublishingSet publishingSet  
    string version  
    StandardStatus status  
    string OID  
    string uuid  
    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  
}
FormalExpression {
    string context  
    string expression  
    string returnType  
    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  
}
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  
}
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  
}
IdentifiableElement {
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
ApplicabilityCondition {
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
CodeListItem {
    string codedValue  
    string decode  
    string description  
    stringList aliases  
    decimal weight  
    boolean other  
}
Dataflow {
    stringList deliverySchedule  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Dimension {
    string role  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Method {
    MethodType type  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Item {
    DataType dataType  
    integer length  
    integer decimalDigits  
    string displayFormat  
    integer significantDigits  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Origin {
    OriginType type  
    OriginSource source  
}
SourceItem {
    stringList resource  
}
DataStructureDefinition {
    boolean evolvingStructure  
    string domain  
    string structure  
    boolean isReferenceData  
    ItemGroupType type  
    boolean hasNoData  
    stringList profile  
    string authenticator  
    boolean isNonStandard  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
    string version  
    string href  
}
Timing {
    TimingType type  
    boolean isNominal  
    string value  
    string relativeTo  
    string relativeFrom  
    datetime windowLower  
    datetime windowUpper  
    boolean recalled  
    string frequency  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
DefClass {
    string name  
}
SubClass {
    string name  
    string parentClass  
}
ItemGroup {
    string domain  
    string structure  
    boolean isReferenceData  
    ItemGroupType type  
    boolean hasNoData  
    stringList profile  
    string authenticator  
    boolean isNonStandard  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
    string version  
    string href  
}
ComponentList {
    stringList components  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
DataAttribute {
    string role  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Measure {
    string role  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
DataProduct {
    string dataProductOwner  
    string domain  
    DataProductLifecycleStatus lifecycleStatus  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
ProvisionAgreement {
    string consumer  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Policy {
    PolicyType policyType  
    string profile  
    string assigner  
    string assignee  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Rule {
    string action  
    string target  
    string assigner  
    string assignee  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Constraint {
    string leftOperand  
    ConstraintOperator operator  
    string rightOperand  
    string unit  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
DataProvider {
    string role  
    OrganizationType type  
    string location  
    string address  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Organization {
    string role  
    OrganizationType type  
    string location  
    string address  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Dataset {
    string publishedBy  
    stringList keys  
    string datasetType  
    string conformsTo  
    string informationSensitivityClassification  
    string version  
    string href  
    stringList profile  
    string authenticator  
    string action  
    string reportingBegin  
    string reportingEnd  
    string dataExtractionDate  
    string validFrom  
    string validTo  
    string publicationYear  
    string publicationPeriod  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Distribution {
    string conformsTo  
    string format  
}
DataService {
    string protocol  
    string securitySchemaType  
    string resourceType  
    string attribute  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Dictionary {
    string publishedBy  
    string version  
    string href  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}
Query {
    QueryType queryType  
    string text  
    string status  
    string source  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
    boolean mandatory  
    string purpose  
    datetime lastUpdated  
    string owner  
    string wasDerivedFrom  
}
Relationship {
    PredicateTermEnum predicateTerm  
    LinkingPhraseEnum linkingPhrase  
    string OID  
    string uuid  
    string name  
    string description  
    string label  
    stringList aliases  
}

Specification ||--}o ItemGroup : "itemGroups"
Specification ||--}o Item : "items"
Specification ||--}o LogicalPredicate : "predicates"
Specification ||--}o ApplicabilityCondition : "applicabilityConditions"
Specification ||--}o Method : "methods"
Specification ||--}o Analysis : "analyses"
Specification ||--}o CodeList : "codeLists"
Specification ||--}o Coding : "codings"
Specification ||--}o Concept : "concepts"
Specification ||--}o Relationship : "relationships"
Specification ||--}o Query : "queries"
Specification ||--}o Check : "checks"
Specification ||--}o Dictionary : "dictionaries"
Specification ||--}o Standard : "standards"
Specification ||--}o DocumentReference : "annotatedCRFs"
Specification ||--}o DataProduct : "dataProducts"
Specification ||--}o Display : "displays"
Specification ||--}o Coding : "coding"
Specification ||--}o Comment : "comments"
Specification ||--}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"
DocumentReference ||--}o Coding : "coding"
Display ||--|o Analysis : "analysis"
Display ||--}o DocumentReference : "location"
Display ||--}o Coding : "coding"
Display ||--}o Comment : "comments"
Display ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Analysis ||--|o Method : "analysisMethod"
Analysis ||--}o ApplicabilityCondition : "applicableWhen"
Analysis ||--}o Dataflow : "inputDataflows"
Analysis ||--}o FormalExpression : "expressions"
Analysis ||--}o DocumentReference : "documents"
Analysis ||--|o Concept : "implementsConcept"
Analysis ||--}o Coding : "coding"
Analysis ||--}o Comment : "comments"
Analysis ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Concept ||--}o ConceptProperty : "properties"
Concept ||--}o Coding : "coding"
Concept ||--}o Comment : "comments"
Concept ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
ConceptProperty ||--|o CodeList : "codeList"
ConceptProperty ||--}o Coding : "coding"
ConceptProperty ||--}o Comment : "comments"
ConceptProperty ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
CodeList ||--}o CodeListItem : "codeListItems"
CodeList ||--|o Resource : "externalCodeList"
CodeList ||--|o Standard : "standard"
CodeList ||--}o Coding : "coding"
CodeList ||--}o Comment : "comments"
CodeList ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Standard ||--}o Coding : "coding"
Resource ||--}o FormalExpression : "selection"
Resource ||--}o Coding : "coding"
FormalExpression ||--}o Parameter : "parameters"
FormalExpression ||--|o ReturnValue : "returnValue"
FormalExpression ||--}o Resource : "externalCodeLibs"
FormalExpression ||--}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"
LogicalPredicate ||--}o RangeCheck : "rangeChecks"
LogicalPredicate ||--}o FormalExpression : "expressions"
LogicalPredicate ||--}o LogicalPredicate : "predicates"
LogicalPredicate ||--}o Coding : "coding"
LogicalPredicate ||--}o Comment : "comments"
LogicalPredicate ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
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"
IdentifiableElement ||--}o Coding : "coding"
ApplicabilityCondition ||--}o LogicalPredicate : "predicates"
ApplicabilityCondition ||--}o Coding : "coding"
ApplicabilityCondition ||--}o Comment : "comments"
ApplicabilityCondition ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
CodeListItem ||--|o Coding : "coding"
Dataflow ||--|| DataStructureDefinition : "structure"
Dataflow ||--}o Dimension : "dimensionConstraint"
Dataflow ||--}o Coding : "coding"
Dataflow ||--}o Comment : "comments"
Dataflow ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Dimension ||--|| Item : "item"
Dimension ||--|o Method : "missingHandling"
Dimension ||--|o Method : "imputation"
Dimension ||--}o Coding : "coding"
Dimension ||--}o Comment : "comments"
Dimension ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Method ||--}o FormalExpression : "expressions"
Method ||--}o DocumentReference : "documents"
Method ||--|o Concept : "implementsConcept"
Method ||--}o Coding : "coding"
Method ||--}o Comment : "comments"
Method ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Item ||--|o CodeList : "codeList"
Item ||--|o Method : "method"
Item ||--}o RangeCheck : "rangeChecks"
Item ||--}o ApplicabilityCondition : "applicableWhen"
Item ||--|o Origin : "origin"
Item ||--|o ConceptProperty : "conceptProperty"
Item ||--}o Coding : "coding"
Item ||--}o Comment : "comments"
Item ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Origin ||--}o SourceItem : "sourceItems"
Origin ||--}o DocumentReference : "documents"
SourceItem ||--|o Item : "item"
SourceItem ||--}o DocumentReference : "document"
SourceItem ||--}o Coding : "coding"
DataStructureDefinition ||--}o Dimension : "dimensions"
DataStructureDefinition ||--}o Measure : "measures"
DataStructureDefinition ||--}o DataAttribute : "attributes"
DataStructureDefinition ||--|o ComponentList : "grouping"
DataStructureDefinition ||--}o Item : "items"
DataStructureDefinition ||--}o Item : "uniqueKey"
DataStructureDefinition ||--}o Item : "keySequence"
DataStructureDefinition ||--}o ItemGroup : "slices"
DataStructureDefinition ||--|o Concept : "implementsConcept"
DataStructureDefinition ||--}o ApplicabilityCondition : "applicableWhen"
DataStructureDefinition ||--|o DefClass : "observationClass"
DataStructureDefinition ||--}o Coding : "security"
DataStructureDefinition ||--|o Timing : "validityPeriod"
DataStructureDefinition ||--|o Standard : "standard"
DataStructureDefinition ||--}o Coding : "coding"
DataStructureDefinition ||--}o Comment : "comments"
DataStructureDefinition ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Timing ||--|o Method : "imputation"
Timing ||--}o Coding : "coding"
DefClass ||--}o SubClass : "subClasses"
SubClass ||--}o SubClass : "subClasses"
ItemGroup ||--}o Item : "items"
ItemGroup ||--}o Item : "uniqueKey"
ItemGroup ||--}o Item : "keySequence"
ItemGroup ||--}o ItemGroup : "slices"
ItemGroup ||--|o Concept : "implementsConcept"
ItemGroup ||--}o ApplicabilityCondition : "applicableWhen"
ItemGroup ||--|o DefClass : "observationClass"
ItemGroup ||--}o Coding : "security"
ItemGroup ||--|o Timing : "validityPeriod"
ItemGroup ||--|o Standard : "standard"
ItemGroup ||--}o Coding : "coding"
ItemGroup ||--}o Comment : "comments"
ItemGroup ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
ComponentList ||--}o Coding : "coding"
DataAttribute ||--|| Item : "item"
DataAttribute ||--|o Method : "missingHandling"
DataAttribute ||--|o Method : "imputation"
DataAttribute ||--}o Coding : "coding"
DataAttribute ||--}o Comment : "comments"
DataAttribute ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Measure ||--|| Item : "item"
Measure ||--|o Method : "missingHandling"
Measure ||--|o Method : "imputation"
Measure ||--}o Coding : "coding"
Measure ||--}o Comment : "comments"
Measure ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
DataProduct ||--}o DataService : "inputPort"
DataProduct ||--}o DataService : "outputPort"
DataProduct ||--}o Dataflow : "inputDataflow"
DataProduct ||--}o Dataflow : "outputDataflow"
DataProduct ||--}o Dataset : "inputDataset"
DataProduct ||--}o Dataset : "outputDataset"
DataProduct ||--}o Policy : "hasPolicy"
DataProduct ||--}o ProvisionAgreement : "provisionAgreement"
DataProduct ||--}o Coding : "coding"
DataProduct ||--}o Comment : "comments"
DataProduct ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
ProvisionAgreement ||--|o DataProvider : "provider"
ProvisionAgreement ||--|o Dataflow : "dataFlow"
ProvisionAgreement ||--|o Resource : "source"
ProvisionAgreement ||--}o Policy : "hasPolicy"
ProvisionAgreement ||--}o Coding : "coding"
ProvisionAgreement ||--}o Comment : "comments"
ProvisionAgreement ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Policy ||--}o Rule : "permission"
Policy ||--}o Rule : "prohibition"
Policy ||--}o Rule : "obligation"
Policy ||--}o Coding : "coding"
Policy ||--}o Comment : "comments"
Policy ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Rule ||--}o Constraint : "constraint"
Rule ||--}o Coding : "coding"
Constraint ||--}o Coding : "coding"
DataProvider ||--}o Dataflow : "providesDataFor"
DataProvider ||--}o ProvisionAgreement : "provisionAgreements"
DataProvider ||--}o Resource : "source"
DataProvider ||--|o Organization : "partOfOrganization"
DataProvider ||--}o Coding : "coding"
Organization ||--|o Organization : "partOfOrganization"
Organization ||--}o Coding : "coding"
Dataset ||--|o Dataflow : "describedBy"
Dataset ||--|o DataStructureDefinition : "structuredBy"
Dataset ||--}o Distribution : "distribution"
Dataset ||--}o Policy : "hasPolicy"
Dataset ||--}o Coding : "security"
Dataset ||--|o Timing : "validityPeriod"
Dataset ||--}o Coding : "coding"
Distribution ||--|o DataService : "accessService"
Distribution ||--|o Dataset : "isDistributionOf"
DataService ||--|o Distribution : "isAccessServiceOf"
DataService ||--}o FormalExpression : "selection"
DataService ||--}o Coding : "coding"
Dictionary ||--}o Coding : "terms"
Dictionary ||--}o Coding : "coding"
Query ||--}| IdentifiableElement : "about"
Query ||--}o Coding : "coding"
Query ||--}o Comment : "comments"
Query ||--}o SiteOrSponsorComment : "siteOrSponsorComments"
Relationship ||--|| IdentifiableElement : "subject"
Relationship ||--|| IdentifiableElement : "object"
Relationship ||--}o Coding : "coding"

Classes

Class Description
CodeListItem A structured member of a CodeList that extends the Coding class with additional context-specific properties
Coding A semantic reference that provides standardized codes and their meanings from controlled vocabularies
DataflowRelationship A relationship element that associates a DataAttribute with a Dataflow, reported at the Dataset level
DatasetKey An abstract identifier that comprises the cross-product of dimension values to identify a specific cross-section
        GroupKey A dimension subset that represents collections of dimensions that are subsets of the full dimension set, distinct from SeriesKey which includes Time dimensions
        SeriesKey A unique identifier that comprises the cross-product of dimension values including Time to identify observations, representing dimensions shared by all observations in a conceptual series
DefClass The predefined CDISC model Class that applies to an ItemGroupDef.
DimensionRelationship A relationship element that associates a DataAttribute with a specific Dimension at a specific level
Distribution A technical representation that provides a specific format or access method for a dataset
Formatted A mixin that provides slots for reporting, exchange, or storage formatting
Governed A mixin that provides slots for audit trail and standards governance, including mandatory status, comments, and attribution
GovernedElement
        ApplicabilityCondition A reusable, named applicability condition describing the circumstances under which a containing context applies. References one or more LogicalPredicates combined with AND. Distinct from LogicalPredicate (the expression itself): ApplicabilityCondition is the named, governed wrapper referenced from Items, ItemGroups, Parameters, and Analyses.
        Check A reusable validation check included in the metadata package, such as a published CORE rule. Linked many-to-many by reference to the metadata and/or data elements it applies to, and optionally citing an external published rule so checks stay reusable and loosely coupled. Distinct from RangeCheck, which is an inline executable comparison; a RangeCheck may implement a Check.
        CodeList A value set that defines a discrete collection of permissible values for an item, corresponding to the ODM CodeList construct
        Comment A descriptive element that contains explanatory text provided by a data or metadata handler
        Concept An abstract concept that can be referenced and specialised by data implementations. Holds ConceptProperties describing the concept's expected data shape. Multiple ItemGroups or Items can implement the same Concept, allowing standard biomedical concepts to be implemented differently across studies while remaining semantically aligned.
        ConceptProperty A reified property concept that exists within the context of its containing topic concept
        CubeComponent An abstract data field that represents a component in a data structure definition, referencing an Item for its definition
                DataAttribute A data cube property that describes additional characteristics or metadata about observations
                Dimension A data cube property that describes a categorical or hierarchical dimension
                Measure A data cube property that describes a measurable quantity or value
        Dataflow An abstract representation that defines data provision for different reference periods, where a Distribution and its Dataset are instances
        DataProduct A governed collection that represents a purpose-driven assembly of datasets and services with an owning team and lifecycle. The DataProduct defines the boundary of accountability between data producers and consumers.
        Display A rendered output of an analysis result.
        Item A data element that represents a specific piece of information within a defined context, with data type, constraints, and derivation methods
        ItemGroup A collection element that groups related items or subgroups within a specific context, used for tables, FHIR resource profiles, biomedical concept specializations, or form sections
                DataStructureDefinition A structural element that defines the organization of a data cube for analysis, including dimensions, attributes, and measures
        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).
        Method A reusable computational procedure that describes how to derive values and can be referenced by Items.
Analysis and Derivation concepts can be implemented by a Method. Properties can be referenced by Parameters in its expressions.
                Analysis Analysis extends Method to capture analysis-specific metadata including the reason for analysis, its purpose, and data traceability for the results used.
Expressions and parameters from Method can be generic or implementation-specific.
        Policy A set of usage and access rules (ODRL) governing data. For a DTA this is typically an ODRL Agreement between an assigner (provider) and assignee (consumer), composed of permissions, prohibitions and obligations.
        ProvisionAgreement An agreement element that describes the contractual relationship between a Data Provider and a Data Consumer regarding data provision
        Query A reified query (discrepancy, request for clarification, or annotation) raised against one or more metadata and/or data elements. Modelled as an intermediate relationship node so a single query can relate to many elements (many-to-many) and be referenced rather than embedded. Internal queries originate within the organization; external queries (e.g. site or sponsor) carry their source.
        SiteOrSponsorComment A feedback element that contains comments from a site or sponsor, distinct from the general Comment class
        Specification The root specification container: a versioned, governed definition of the data model for a study or data product. Links items, item groups, methods, code lists, concepts, and study design references. Projects to Define-XML MetaDataVersion, FHIR ImplementationGuide, and OMOP CDM metadata. ODMSerializationMetadata is applied by the ODM output generator, not here.
GroupRelationship A relationship element that associates a DataAttribute with a set of Dimensions, used when attribute values vary based on all group dimension values
Identifiable A mixin that provides slots for making an entity addressable within a study or context
IdentifiableElement
        ComponentList An abstract definition that specifies a list of components within a data structure definition, including various descriptor types
        Constraint An ODRL constraint expressed as leftOperand operator rightOperand, e.g. purpose eq "safety-reporting", or dateTime lt "2026-01-01".
        Dataset A collection element that groups observations sharing the same dimensionality, expressed as a set of unique dimensions within a Data Product context
        Dictionary A dictionary that defines a set of codes and their meanings
        DocumentReference A comprehensive reference element that points to an external document, combining elements from ODM and FHIR
        FormalExpression A computational element that defines the execution of a data derivation within a specific context
        Organization An entity that represents organizational information, such as a site or sponsor
                DataConsumer An organization element that receives data from a Data Provider under a ProvisionAgreement; the demand-side counterpart of DataProvider.
                DataProvider An organization element that provides data to a Data Consumer, which can be a sponsor, site, or any other entity that supplies data
        Parameter A variable element that describes an input used in a formal expression
        Relationship A semantic link that defines connections between elements such as Items or ItemGroups, capturing relationships like "is the unit for" or "assesses seriousness of"
        Resource An external reference that serves as the source for a Dataset, ItemGroup, or Item
                DataService A service element that provides an API or endpoint for serving or receiving data
        ReturnValue An output specification that defines the details of what a formal expression returns
        Rule An ODRL rule asserting that an action is permitted, prohibited, or required on a target asset, optionally restricted by constraints.
        Standard A collection element that groups related standards within a specific context, used for defining CDISC implementation guides and controlled terminologies
        Timing A temporal element that describes the timing of an event or occurrence, which can be absolute, relative, or nominal
        User An entity that represents information about a specific user of a clinical data collection or data management system
IsProfile A mixin that provides additional metadata for FHIR resources and Data Products, including profiles, security tags, and validity periods
IsSdmxDataset A mixin that provides additional metadata specific to SDMX Datasets
Labelled A mixin that provides slots for detailing meanings and multilingual descriptions
MeasureRelationship A relationship element that associates a DataAttribute with a Measure
ObservationRelationship A relationship element that associates a DataAttribute with an Observation, allowing value-level Items to be reused across multiple different Views
ODMItemSerialization A mixin providing ODM/CDISC-specific item attributes meaningful only in ODM/Define-XML serialization: CRF completion instructions, CDISC notes, implementation notes, collection exception predicates, and pre-specified values. Applied by the ODM output generator. Not part of the canonical Item.
ODMSerializationMetadata A mixin providing ODM/Define-XML file-level attributes required only when serializing to ODM or Define-XML format. Applied by the ODM output generator, not by the canonical model itself. These attributes (fileOID, odmVersion, defineVersion, etc.) have no meaning in FHIR, OMOP, or SDMX projections.
ODMStandardReference A mixin providing attributes for CDISC standards compliance indication. Applied when serializing to Define-XML context. Not canonical.
Origin A provenance element that describes the source of data for an item
RangeCheck A validation element that performs a simple comparison check between a referenced item's value and specified values, resolving to a boolean result
SourceItem A data source that provides the origin of information for an item
StudyMetadata A mixin that provides study-level metadata attributes including study identification and protocol information
SubClass A specific SubClass within a CDISC model Class.
TranslatedText
Translation A text representation that provides content in a specific language, used for multilingual support
Versioned A mixin that provides version and connectivity information, including version numbers and resource references

Slots

Slot Description
OID Local identifier within this study/context. Use CDISC OID format for regulatory submissions, or simple strings for internal use.
uuid Universal unique identifier
mandatory Is this element required?
comments Comment on the element, such as a rationale for its inclusion or exclusion
siteOrSponsorComments Comment on the element, such as a rationale for its inclusion or exclusion
purpose Purpose or rationale for this data element
lastUpdated When the resource was last updated
owner Party responsible for this element
wasDerivedFrom Reference to another item that this item implements or extends, e.g. a template Item definition.
name Short name or identifier, used for field names
description Detailed description, shown in tooltips
coding Semantic tags for this element
label Human-readable label, shown in UIs
aliases Alternative name or identifier
decimalDigits For decimal values, the number of digits after the decimal point
displayFormat A display format for the item
significantDigits For numeric values, the number of significant digits
version The version of the external resources
href Machine-readable instructions to obtain the resource e.g. FHIR path, URL
profile Profiles this resource claims to conform to
security Security tags applied to this resource
authenticator Who/what authenticated the resource
validityPeriod Time period during which the resource is valid
role Identifies the role of the item within the containing context, taken from the roleCodeList
roleCodeList Reference to the CodeList that defines the roles for this item
hasNoData True if this is a manifest and there is no data for this item
crfCompletionInstructions CRFCompletionInstructions reference: Instructions for the clinical site on how to enter collected information on the CRF
cdiscNotes CDISCNotes reference: Explanatory text for the variable
implementationNotes ImplementationNotes reference: Further information, such as rationale and implementation instructions, on how to implement the CRF data collection fields
collectionExceptionPredicate Logical predicate defining when data collection for this item may be exempted.
preSpecifiedValue Prefill value or a default value for a field that is automatically populated.
standard Reference to the standard being implemented
isNonStandard One or more members of this set are non-standard extensions
fileOID Unique identifier for the ODM file
asOfDateTime Date and time when the data snapshot was taken
creationDateTime Date and time when the ODM file was created
odmVersion Version of the ODM standard used
fileType Type of ODM file (e.g., Snapshot, Transactional)
originator Organization or system that created the ODM file
sourceSystem Source system that generated the data
sourceSystemVersion Version of the source system
context Define-XML context (usually "Other" for Define-XML)
defineVersion Version of Define-XML specification used
studyOID Unique identifier for the study
studyName Name of the study
studyDescription Description of the study
protocolName Protocol name for the study
itemGroups Item groups, containing items, defined in this version of the metadata
items Template or top-level items (not belonging to any item group) defined in this version of the metadata
predicates Reusable logical predicates defined in this specification.
applicabilityConditions Named applicability conditions defined in this specification.
methods Methods defined in this version of the metadata.
analyses Analyses defined in this version of the metadata.
codeLists Code lists defined in this version of the metadata.
codings Codings defined in this version of the metadata
concepts Structured Concepts defined in this version of the metadata
relationships Relationships between items, item groups, and other elements in this version of the metadata.
queries Queries raised against metadata and/or data elements in this specification. Each Query references its target element(s) by OID, so the same query can relate to many metadata and data elements (many-to-many).
checks Reusable validation checks (e.g. published CORE rules) included in this metadata package. Each Check references the elements it applies to by OID and may cite an external published rule, enabling reuse and loose coupling.
dictionaries Dictionaries defined in this version of the metadata
standards Standards defined in this version of the metadata
annotatedCRFs Reference to annotated case report forms
resources References to resources and documents that describe this version of the metadata.
dataProducts Indexed data flows with clear ownership
displays Displays defined in this version of the metadata.
usdmStudyDesignId OID or URI reference to the USDM StudyDesign that this specification implements. When present, arms, epochs, and scheduled visit slots are resolved from the referenced USDM instance. The USDM study design is the authoritative source for EPOCH, VISITNUM, ARM, and timing anchors; DDS does not redeclare them.
dataType The data type of the item.
length The maximum length of the data item in characters.
codeList Reference to the CodeList that constrains the item values.
method Reference to the Method element that describes how to derive this item's value.
rangeChecks Range checks applied to this item (e.g. edit checks, CORE rules)
applicableWhen References to different situations that define when this item applies.
Multiple applicabilityConditions are combined with OR logic: the item applies if ANY referenced ApplicabilityCondition matches.
Within each ApplicabilityCondition, conditions are combined with AND logic: all conditions must be true.

Example: whereClause: ["WC.SYSBP", "WC.DIABP"] means the item applies when
(all conditions in WC.SYSBP are true) OR (all conditions in WC.DIABP are true).
origin The origin of the data
conceptProperty Reference to a abstract concept property that this item is a specialization / instance of.
domain Domain abbreviation for the dataset.
structure Data structure of the item group, indicating how the records are organized. If this is a FHIR Resource, is it nested or flattened? If this is a structured concept, is it a Biomedical/Derivation/Analysis concept?
isReferenceData Set to Yes if this is a reference item group.
type Type of item group
uniqueKey Unordered set of Items whose combined values uniquely identify a record in this dataset (the record key). Each entry is an OID reference to an Item in the items array. Order is not significant for uniqueness — use keySequence for sort order. Splitting uniqueness from sorting resolves the previous overloading of keySequence.
keySequence Ordered list of Items defining the default sort order for this dataset. Each entry is an OID reference to an Item in the items array; order determines sorting precedence and merge operations. May reference Items that are not part of uniqueKey. Distinct from uniqueKey, which establishes record uniqueness.
slices Slices are specific subset ItemGroups that belong to, or are used by this ItemGroup
implementsConcept Reference to a abstract concept topic that this item group is a specialization of
observationClass Identifies the predefined CDISC model Class.
subClasses One or more SubClasses that further identify the specific SubClass within a Class.
parentClass Name of the parent Class or SubClass following CDISC Controlled Terminology.
subject The starting element of the relationship (e.g., an Item or ItemGroup).
object The ending element of the relationship.
predicateTerm Short variable relationship linking phrase for programming purposes.
linkingPhrase Variable relationship descriptive linking phrase.
about The metadata and/or data element(s) this query concerns, referenced by OID. Multivalued and non-inlined to support many-to-many linkage across both metadata (e.g. Item, ItemGroup) and data (e.g. Dataset) elements.
queryType Whether the query is internal or external (e.g. site or sponsor originated).
text The query content.
status Workflow status of the query (e.g. open, answered, closed).
source The party that raised the query.
language The language of the translation
value The translated text
translations
formatName Name of a standard format definition
codeListItems The individual values that make up this CodeList. The type of CodeListItem included determines its behaviour
externalCodeList Reference to a code list that is defined externally to this study
codedValue The value of the CodeListItem before decoding
decode The decoded value of the CodeListItem
weight Numeric significance of the code (e.g., for scoring)
other Flag to indicate that the term represents "other" content
documents References to documents that contain or are referenced by this comment
code The code value
codeSystem The code system identifier
codeSystemVersion The code system version
aliasType How this coding is related in the context of its parent element
terms Terms in this dictionary - leave this empty in most cases to keep the file small
publishedBy Associates the Data Provider that reports/publishes the data.
properties Properties of the reified object, which can be other governed elements or simple values
minOccurs Minimum number of occurrences of this property in the context. Set to >0 to mandate some number of occurrences
maxOccurs Maximum number of occurrences of this property in the context. Leave empty for unbounded. Set to 0 to disable property
implementsPredicate Reference to an external (e.g. USDM) predicate/condition definition that this implements
expressions Logical expression, resolving to a boolean, that implements this predicate in a specific context
operator Logical operator for combining child conditions or range checks. Defaults to ALL if not specified.
comparator The type of comparison to be performed
checkValues Values to compare against
item Reference to the Item element whose value is being checked. If not specified, check applies to the enclosing context
softHard Indicates whether a validation check is an error ("Hard") or a warning ("Soft")
implementsCheck Optional reference (by OID) to a reusable Check (e.g. a published CORE rule) that this inline RangeCheck implements.
appliesTo The metadata and/or data element(s) this check applies to, referenced by OID. Multivalued and non-inlined for many-to-many, loosely coupled linkage.
externalReference URI or CURIE of the published rule this check is sourced from (e.g. a CORE rule identifier), enabling reuse across metadata packages.
severity Whether a failure is an error ("Hard") or a warning ("Soft").
expression The actual text of the formal expression (renamed from 'code' for disambiguation).
returnType Return type of the expression
parameters Parameters used in the expression
returnValue Return value details
externalCodeLibs External code libraries referenced
document Reference to an external document
resource Path to a resource (e.g. File, FHIR datasource) that is the source of this item
defaultValue A default value for the parameter.
validationPredicates Validation predicates that constrain this parameter's value beyond controlled terminology. All must be satisfied (AND logic). Distinct from applicableWhen which determines if the parameter is needed at all.
required Indicates whether this parameter must be provided when the containing expression is evaluated (technical constraint).
valueList A list of possible return values.
sourceItems Source items for this origin
sourceType who made the comment, such as Investigator, Sponsor.
userType User's role in the study.
userName The username of the user.
fullName The full name of the user.
organization The organization the user belongs to.
location The physical location of the organization.
address The address of the organization.
partOfOrganization Reference to a parent organization if this organization is part of a larger entity.
publishingSet Publishing Set of a Controlled Terminology
resourceType Type of resource (e.g., "ODM", "HL7-FHIR", "HL7-CDA", "HL7-v2", "OpenEHR-extract")
attribute Field provided by the Name attribute where the data or information can be obtained. Examples are "valueQuantity.value" or "valueQuantity.unit".
selection Machine-executable instructions for selecting data from the resource.
title Document title
leafID Leaf identifier for document reference in Define-XML
pages Reference to specific pages in a PDF document
relationship Relationship to the referencing entity
isNominal Indicates whether the timing is nominal (event-based) or not.
relativeTo The protocol anchor this timing is relative to. Either a TimingLandmark (well-known protocol event such as RANDOMIZATION or FIRST_DOSE) or a free-form OID/identifier referencing a USDM ScheduledActivityInstance.
relativeFrom The protocol anchor from which this timing is measured. Either a TimingLandmark or a USDM ScheduledActivityInstance OID reference.
windowLower Start date/time of the timing
windowUpper End date/time of the timing
recalled Indicates whether the timing is recalled or not (recalled timings are less reliable).
frequency Frequency. Use dose frequency terminology e.g. "BID" if applicable.
imputation The imputation method used for the Timing.
dimensions
measures
attributes
grouping An association to a set of metadata concepts that have an identified structural role in a Data Structure Definition.
evolvingStructure
dimensionConstraint Subset of dimensions that are agreed upon by the dataflow and must be included.
deliverySchedule Recurring transfer/delivery schedule agreed for this flow. The domain-neutral default is an ISO-8601 repeating interval string (e.g. "R/2025-01-01/P1M"); use a Timing object only when delivery must be anchored to a clinical occurrence. Agreement-level schedule; concrete reporting periods of each delivered Dataset are carried by IsSdmxDataset.reportingBegin/reportingEnd/dataExtractionDate.
action Defines the action to be taken by the recipient system (information, append, replace, delete)
reportingBegin A specific time period in a known system of time periods that identifies the start period of a report.
reportingEnd A specific time period in a known system of time periods that identifies the end period of a report.
dataExtractionDate A specific time period that identifies the date and time that the data are extracted from a data source.
validFrom Indicates the inclusive start time indicating the validity of the information in the data set.
validTo Indicates the inclusive end time indicating the validity of the information in the data set.
publicationYear Specifies the year of publication of the data or metadata in terms of whatever provisioning agreements might be in force.
publicationPeriod Specifies the period of publication of the data or metadata in terms of whatever provisioning agreements might be in force.
describedBy Associates a Dataflow and thereby a Data Structure Definition to the data set.
structuredBy Associates the Data Structure Definition that defines the structure of the Data Set. Note that the Data Structure Definition is the same as that associated (non-mandatory) to the Dataflow.
keys Series and Group keys in the data that are associated with dimensions in this structure
datasetType Type or classification of the dataset
distribution Representations of this dataset in various formats or access methods
conformsTo Specification or standard that this dataset conforms to
hasPolicy Access or usage policy applied to this dataset
informationSensitivityClassification Classification of the dataset's sensitivity or confidentiality
keyValues List of Key Values that comprise each key, separated by a dot e.g. SUBJ001.VISIT2.BMI
attributeValues Association to the Attribute Values relating to Key
missingHandling The method for handling missing values in the measure property
components The components that make up this component list
measure
dataFlow
groupKey Set of dimensions that this definition depends on
dataProductOwner The person or team accountable for this data product
lifecycleStatus Current lifecycle status of the data product
inputPort Services that provide input into this data product
outputPort Services that expose output from this data product
inputDataflow Description of the input interface before concrete Datasets exist. Dataflows referenced here represent the demand side of a ProvisionAgreement.
outputDataflow Description of the output interface before concrete Datasets exist. Dataflows referenced here represent the supply side of a ProvisionAgreement.
inputDataset Source datasets used by the data product
outputDataset Output datasets produced by the data product
provisionAgreement Reference(s) to standalone Data Transfer Agreements (ProvisionAgreement) that govern this product's flows. Referenced by OID/URI, not embedded, so the agreement remains an independently maintained artifact.
accessService Service that provides access to this distribution
isDistributionOf Dataset this distribution represents
format File format or serialization used in the distribution
isAccessServiceOf Distribution(s) for which this service provides access
protocol Protocol used by the service (e.g., HTTPS, FTP)
securitySchemaType Security or authentication method used (e.g., OAuth2)
providesDataFor The Dataflows that this provider supplies data for
provisionAgreements The ProvisionAgreements that this provider has with Data Consumers
provider The Data Provider that is part of this agreement. Inlined so a standalone DTA is a self-contained snapshot.
consumer The Data Consumer that is part of this agreement
consumesDataFrom The Dataflows that this consumer receives data from
policyType ODRL policy subtype (Set, Offer, Agreement)
assigner The party issuing/granting the policy (typically the provider)
assignee The party the policy is granted to (typically the consumer)
permission Rules granting the ability to perform an action (odrl:permission)
prohibition Rules forbidding an action (odrl:prohibition)
obligation Duties that must be fulfilled (odrl:obligation)
target The asset the rule applies to (odrl:target), e.g. the Dataflow or Dataset OID/IRI under agreement.
constraint Conditions that narrow when/how the rule applies (odrl:constraint)
leftOperand The subject of the constraint (odrl:leftOperand), e.g. "purpose", "recipient", "dateTime"
rightOperand The value compared against (odrl:rightOperand)
unit Unit of the rightOperand, where applicable
analysisReason The reason this analysis was performed.
analysisPurpose The purpose or role of this analysis in the study.
analysisMethod Generic method used to perform this analysis.
inputData Datasets or slices/subsets of datasets asked for by this analysis. If a Item is referenced by a Parameter e.g. Analysis Variable, make sure to include its parent ItemGroup here.
inputDataflows Dataflows that supply input data for this analysis. Replaces Dataflow.analysisMethod (which had the dependency backwards — a data contract should not know which analyses consume it).
analysis Analysis result this display represents.
displayType The type of display this result represents. e.g. table, listing, figure, dashboard.

Enumerations

Enumeration Description
AliasPredicate An enumeration that defines permissible values for the relationship between an element and its alias
Comparator An enumeration that defines the types of comparison operations available for a RangeCheck
UserType An enumeration that defines the types of users in a clinical data collection or management system
OrganizationType An enumeration that defines the types of organizations involved in clinical research
PolicyType ODRL policy subtypes.
ConstraintOperator ODRL constraint operators.
SoftHard An enumeration that indicates whether a validation check should be treated as an error or a warning
QueryType Whether a Query originates inside the organization (internal) or from an external party such as a site or sponsor (external).
MethodType An enumeration that defines the types of computational methods available for data processing
DataType An enumeration that defines the fundamental data types available for items
OriginType An enumeration that defines the types of origins for data items. Values sourced from NCI Thesaurus subset C170449.
OriginSource An enumeration that defines the sources of data origin. Values sourced from NCI Thesaurus subset C170450.
ItemGroupType An enumeration that defines the roles of an item group within a specific context
TimingLandmark Well-known protocol reference points that a Timing can be expressed relative to. Corresponds to USDM TimingRelativeToLandmark. For visit-specific anchors not covered by this enum, use a USDM ScheduledActivityInstance OID reference in Timing.relativeTo as a free string.
TimingType An enumeration that defines CDISC timing type values indicating the temporal relationship of an observation to a reference point
LinkingPhraseEnum An enumeration that defines variable relationship descriptive linking phrases from the COSMoS SDTM BC model
PredicateTermEnum An enumeration that defines short variable relationship linking phrases for programming purposes from the COSMoS SDTM BC model
DataProductLifecycleStatus An enumeration that defines the lifecycle stages for a DataProduct
StandardName An enumeration that defines permissible values for standard names
StandardType An enumeration that defines permissible values for standard types
PublishingSet An enumeration that defines permissible values for publishing sets
StandardStatus An enumeration that defines permissible values for standard status
LogicalOperator Logical operators for combining conditions in Boolean expressions. For complex expressions, use the EXPRESSION value.

Types

Type Description
String A character string
Integer An integer
Boolean A binary (true or false) value
Float A real number that conforms to the xsd:float specification
Double A real number that conforms to the xsd:double specification
Decimal A real number with arbitrary precision that conforms to the xsd:decimal specification
Time A time object represents a (local) time of day, independent of any particular day
Date a date (year, month and day) in an idealized calendar
Datetime The combination of a date and time
DateOrDatetime Either a date or a datetime
Uriorcurie a URI or a CURIE
Curie a compact URI
Uri a complete URI
Ncname Prefix part of CURIE
Objectidentifier A URI or CURIE that represents an object in the model.
Nodeidentifier A URI, CURIE or BNODE that represents a node in a model.
Jsonpointer A string encoding a JSON Pointer. The value of the string MUST conform to JSON Point syntax and SHOULD dereference to a valid object within the current instance document when encoded in tree form.
Jsonpath A string encoding a JSON Path. The value of the string MUST conform to JSON Point syntax and SHOULD dereference to zero or more valid objects within the current instance document when encoded in tree form.
Sparqlpath A string encoding a SPARQL Property Path. The value of the string MUST conform to SPARQL syntax and SHOULD dereference to zero or more valid objects within the current instance document when encoded as RDF.

Subsets

Subset Description