Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Changed all references to SubjectGroupingFactor and AnalysisGroup to GroupingFactor and Group, removed "subject" from "subject grouping factor" (ARSP-28) changed label to name, and added examples label (GitHub #217), added groupingDataset (GitHub #187), added subClauseId attributes and updated description of table to mention ReferencedGroup (GitHub #136/#221)

This example shows the definition of 3 grouping factors based on subject grouping factors, each of which characteristics recorded in the ADSL dataset. Each grouping factor is represented as an instance of the SubjectGroupingFactor GroupingFactor class within the analysisGroupings attribute of the reporting event.

Xfancy
classrowcaps
Lines 2-637:

Show the attributes of the instance of the SubjectGroupingFactor GroupingFactor class for the first subject grouping factor, "Treatment" (line 3), which is defined as being based on the ADSL TRT01A grouping variable (line lines 4 and 5). The grouping factor is not data-driven (line 56), so the the groups attribute is included (line 67) and contains 3 predefined groups, each specified as a simple condition represented as an instance of the AnalysisGroup Group class:

  • Lines 78-1617: Show the first predefined group (order = 1), which is identified as "AnlsGrouping_01_Trt_1", labeled named as "Placebo" (line 89), and contains a simple condition specifying that the value of the TRT01A variable in the ADSL dataset is equal to "Placebo", which could be expressed as:
    • ADSL.TRT01A EQ 'Placebo'
  • Lines 1718-2627: Show the second predefined group (order = 2), which is identified as "AnlsGrouping_01_Trt_2", labeled named as "Xanomeline Low Dose" (line 1819), and contains a simple condition specifying that the value of the TRT01A variable in the ADSL dataset is equal to "Xanomeline Low Dose", which could be expressed as:
    • ADSL.TRT01A EQ 'Xanomeline Low Dose'
  • Lines 2728-3637: Show the third predefined group (order = 3), which is identified as "AnlsGrouping_01_Trt_3", labeled named as "Xanomeline High Dose" (line 2829), and contains a simple condition specifying that the value of the TRT01A variable in the ADSL dataset is equal to "Xanomeline High Dose", which could be expressed as:
    • ADSL.TRT01A EQ 'Xanomeline High Dose'
Lines 3738-4042:

Show the attributes of the instance of the SubjectGroupingFactor GroupingFactor class for the second subject grouping factor, "Country" (line 3839), which is defined as being based on the ADSL COUNTRY grouping variable (line 39lines 40 and 41). The grouping factor is data-driven (line 4042), so the groups attribute is not included; the groups within this subject grouping factor are derived from the distinct values in the ADSL COUNTRY variable.

Lines 4143-4573:

Show the attributes of the instance of the SubjectGroupingFactor GroupingFactor class for the third subject grouping factor, "On Active Treatment" (line 4244). Although the groups within this grouping factor are defined as compound expressions (lines 50 54 and 5968), the grouping variable is specified as ADSL TRT01A (line 43lines 45 and 46) because all the sub-clauses subclauses of the compound expression expressions are identified as groups that are simple conditions based on the TRT01A variable. The grouping factor is not data-driven (line 4447), so the groups attribute is included (line 4548) and contains 2 predefined groups, each specified as a compound expression represented as an instance of the AnalysisGroup Group class:

  • Lines 4649-5462: Show the first predefined group (order = 1) in which the compound expression , which is identified as "AnlsGrouping_03_ActTrt_1", named as "Yes", and labeled as "Y". The compound expression defined for this group uses the "OR" logical operator (line 51) to combines the conditions specified in the instances of the AnalysisGroup 55) to combine 2 subclauses, each of which is represented as an instance of the ReferencedGroup class.
    • Lines 57-59: Show the first subclause (level = 2, order = 1), which is a reference to the instance of the Group class identified as "AnlsGrouping_01_Trt_2" (line
    53) and
    • 58).
    • Lines 60-62: Show the second subclause (level = 2, order = 2), which is a reference to the instance of the Group class identified as "AnlsGrouping_01_Trt_2" (line
    54
    • 61).

      When

these

the identifier values specified the 2 subclauses are used to retrieve the definitions of the identified groups, this compound expression could be expressed as:

    • ADSL.TRT01A EQ 'Xanomeline Low Dose' OR ADSL.TRT01A EQ 'Xanomeline High Dose'
  • Lines 5563-6273: Show the second predefined group (order = 2) in which the compound expression , which is identified as "AnlsGrouping_03_ActTrt_2", named as "No", and labeled as "N". The compound expression defined for this group uses the "NOT" logical operator (line 6069) to negate the condition(s) specified by the subclause. The subclause is specified as an instance of the ReferencedGroup class, in which the subClauseId attribute references the instance of the AnalysisGroup Group class identified as "AnlsGrouping_03_ActTrt_1" (line 6273). When the identifier values for this referenced group ("AnlsGrouping_03_ActTrt_1") and groups it references ("AnlsGrouping_01_Trt_2" and "AnlsGrouping_01_Trt_2") are used to retrieve the original group definitions, this compound expression could be expressed as:
    • NOT (ADSL.TRT01A EQ 'Xanomeline Low Dose' OR ADSL.TRT01A EQ 'Xanomeline High Dose')
Code Block
titleYAML Example
linenumberstrue
analysisGroupings:
- id: AnlsGrouping_01_Trt
  labelname: Treatment
  groupingDataset: ADSL
  groupingVariable: TRT01A
  dataDriven: false
  groups:
  - id: AnlsGrouping_01_Trt_1
    labelname: Placebo
    level: 1
    order: 1
    condition:
      dataset: ADSL
      variable: TRT01A
      comparator: EQ
      value:
      - Placebo
  - id: AnlsGrouping_01_Trt_2
    labelname: Xanomeline Low Dose
    level: 1
    order: 2
    condition:
      dataset: ADSL
      variable: TRT01A
      comparator: EQ
      value:
      - Xanomeline Low Dose
  - id: AnlsGrouping_01_Trt_3
    labelname: Xanomeline High Dose
    level: 1
    order: 3
    condition:
      dataset: ADSL
      variable: TRT01A
      comparator: EQ
      value:
      - Xanomeline High Dose
- id: AnlsGrouping_02_Cntry
  labelname: Country
  GroupingDataset: ADSL
  groupingVariable: COUNTRY
  dataDriven: true
- id: AnlsGrouping_03_ActTrt
  labelname: On Active Treatment
  groupingDataset: ADSL
  groupingVariable: TRT01A
  dataDriven: false
  groups:
  - id: AnlsGrouping_03_ActTrt_1
    name: Yes
    label: Y
    level: 1
    order: 1
    compoundExpression:
      logicalOperator: OR
      whereClauses:
      - level: 2
        order: 1
        subClauseId: AnlsGrouping_01_Trt_2
      - level: 2
        order: 2
        subClauseId: AnlsGrouping_01_Trt_3
  - id: AnlsGrouping_03_ActTrt_2
    name: No
    label: N
    level: 1
    order: 2
    compoundExpression:
      logicalOperator: NOT
      whereClauses:
      - level: 2
        order: 1
        subClauseId: AnlsGrouping_03_ActTrt_1

These subject grouping factors and their predefined groups could be represented in tabular form as shown in the following table where:

  • Each row represents an instance of the AnalysisGroup class is represented on a separate line, with attribute values for the related instance of the SubjectGroupingFactor class represented on every row. If one of the following classes:
    • GroupingFactor: if there are no predefined groups in the grouping factor (i.e., it is data-driven), a single row is included with values only shown for the
    SubjectGroupingFactor
    • GroupingFactor attributes.
    The identifier values of any predefined groups referenced in the whereClauses attribute of compound expressions are shown in a column called "subclause_id"
    • Group: each predefined group is represented on a separate line, with attribute values for the related instance of the GroupingFactor class represented on every row.
    • ReferencedGroup: for each predefined group that includes a compound expression, any subclause that references another predefined predefined group by identifier is represented on a separate row, with the identifier value of the referenced predefined group shown in the "subClauseId" column. The attribute values of the related instance of the Group class (and those of its related instance of the GroupingFactor class) are represented on every row.
  • Although it would be possible, in this representation, the referenced identifier values have not been used to retrieve the details of the simple conditions from the original group definitions.
    Jira
    showSummaryfalse
    serverIssue Tracker (JIRA)
    serverId85506ce4-3cb3-3d91-85ee-f633aaaf4a45
    keyARSP-34
Dataset2
ARSP-34

idnamelabelgroupingDatasetgroupingVariabledataDrivengroup_idgroup_namegroup_labellevelorderlogicalOperatorsubclause_idsubClauseIddatasetvariablecomparatorvalue
AnlsGrouping_01_TrtTreatmentADSLTRT01AFALSEAnlsGrouping_01_Trt_1Placebo
11

ADSLTRT01AEQPlacebo
AnlsGrouping_01_TrtTreatmentADSLTRT01AFALSEAnlsGrouping_01_Trt_2Xanomeline Low Dose
12

ADSLTRT01AEQXanomeline Low Dose
AnlsGrouping_01_TrtTreatmentADSLTRT01AFALSEAnlsGrouping_01_Trt_3Xanomeline High Dose
13

ADSLTRT01AEQXanomeline High Dose
AnlsGrouping_02_CntryCountryADSLCOUNTRYTRUE










AnlsGrouping_03_ActTrt

On Active Treatment

Jira
showSummaryfalse
serverIssue Tracker (JIRA)
serverId85506ce4-3cb3-3d91-85ee-f633aaaf4a45
keyADSLTRT01AFALSEAnlsGrouping_03_ActTrt_1YesY11OR




AnlsGrouping_03_ActTrtOn Active TreatmentADSLTRT01AFALSEAnlsGrouping_03_ActTrt_1YesY21
AnlsGrouping_01_Trt_2



AnlsGrouping_03_ActTrtOn Active TreatmentADSLTRT01AFALSEAnlsGrouping_03_ActTrt_1YesY22
AnlsGrouping_01_Trt_3



AnlsGrouping_03_ActTrtOn Active TreatmentADSLTRT01AFALSEAnlsGrouping_03_ActTrt_2NoN12NOT




AnlsGrouping_03_ActTrtOn Active TreatmentADSLTRT01AFALSEAnlsGrouping_03_ActTrt_2NoN212
AnlsGrouping_03_ActTrt_1