Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
d7c5e9f
merge main
SFJohnson24 Jun 10, 2026
fcf7fe8
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jun 15, 2026
ecc45ab
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jun 15, 2026
e963a40
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jun 15, 2026
7d9c521
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jun 19, 2026
b38668f
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jun 29, 2026
bfbb777
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 1, 2026
b5695eb
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 2, 2026
ce51a06
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 7, 2026
8369da5
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 7, 2026
007e0bd
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 10, 2026
7a673a0
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 13, 2026
0774220
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 14, 2026
a8961cb
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 16, 2026
d8b68e0
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 17, 2026
5a6942c
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 27, 2026
b304bde
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Jul 28, 2026
e7af28d
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 19, 2026
00c1bae
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
e4911dd
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
2582ce1
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
a960a2f
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
4eb5b7b
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
769a7c9
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
3cd7863
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
713935d
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
3826e2c
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 20, 2026
ff671ee
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 21, 2026
535f043
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 21, 2026
12b7505
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 22, 2026
462a1c1
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 22, 2026
3a63c49
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 24, 2026
0af1789
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 26, 2026
4525c6d
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Aug 26, 2026
8a219b0
changes
SFJohnson24 Sep 2, 2026
49bf041
changes
SFJohnson24 Sep 2, 2026
9ce0223
change
SFJohnson24 Sep 2, 2026
02da429
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Sep 15, 2026
6fabb81
update scope
SFJohnson24 Sep 15, 2026
d756ff1
new scope logic
SFJohnson24 Sep 16, 2026
3aeaa05
scope.md
SFJohnson24 Sep 16, 2026
4abde5a
update
SFJohnson24 Sep 16, 2026
cfa65d8
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Sep 21, 2026
b2d8766
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Oct 5, 2026
aea060a
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Oct 6, 2026
e454131
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Oct 6, 2026
29d0171
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Oct 7, 2026
f42f5f1
Merge branch 'main' of https://github.com/cdisc-org/cdisc-open-rules
SFJohnson24 Oct 7, 2026
c0a3ba5
Merge branch 'main' into CORE-000778
SFJohnson24 Oct 7, 2026
c4ade8f
removed suppqual
SFJohnson24 Oct 8, 2026
25c6452
update
SFJohnson24 Oct 8, 2026
9b9738e
Merge branch 'main' into CORE-000778
SFJohnson24 Oct 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions Deprecated/CORE-000510/rule.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,8 @@ Scope:
Include:
- ALL
Domains:
Include:
- SPLIT DATASETS
Exclude:
- SUPP--
- AP--
Expand Down
18 changes: 9 additions & 9 deletions Deprecated/CORE-000778/rule.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,7 @@ Authorities:
Version: "1"
Version: "2.0"
Citations:
- Cited Guidance:
Supplemental Qualifier datasets for split domains would also be
- Cited Guidance: Supplemental Qualifier datasets for split domains would also be
split. The nomenclature would include the additional
one-to-two characters used to identify the split dataset.
Document: IG v3.4
Expand All @@ -29,8 +28,7 @@ Authorities:
Version: "1"
Version: "2.0"
Citations:
- Cited Guidance:
AP Guide v1.0[2][Associated Persons datasets are given a prefix
- Cited Guidance: AP Guide v1.0[2][Associated Persons datasets are given a prefix
of AP-- to identify the data as AP data to and distinguish
them from study subject data.]|IG v3.2[4.1.1.7][Item 6][For
example, if splitting by --CAT, then dataset names would be
Expand All @@ -48,8 +46,7 @@ Authorities:
Version: "1"
Version: "2.0"
Citations:
- Cited Guidance:
AP Guide v1.0[2][Associated Persons datasets are given a prefix
- Cited Guidance: AP Guide v1.0[2][Associated Persons datasets are given a prefix
of AP-- to identify the data as AP data to and distinguish
them from study subject data.]|IG v3.3[4.1.7][Item 6][For
example, if splitting by --CAT, then dataset names would be
Expand All @@ -75,8 +72,7 @@ Description: When an Associated Persons non-supplemental qualifier dataset is
4 and less than, or equal to, 6.
Executability: Fully Executable
Outcome:
Message:
Associated Persons non-supplemental qualifier dataset associated with a
Message: Associated Persons non-supplemental qualifier dataset associated with a
split dataset does not have a dataset name with a length greater than 4 and
less than, or equal to, 6.
Rule Type: Dataset Metadata Check
Expand All @@ -86,6 +82,10 @@ Scope:
- ALL
Domains:
Include:
- AP--
- AP SPLIT DATASETS
Exclude:
- SUPP--
- APRELSUB
- APRELSPEC
include_split_datasets: true
Sensitivity: Dataset
8 changes: 8 additions & 0 deletions Unpublished/SENDIG/SEND_AUTHORING_TEMPLATE/rule.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
Authorities:
- Organization: CDISC
Standards:
Expand Down Expand Up @@ -758,20 +758,28 @@
- ALL
- AP--
- APRELSUB
- APRELSPEC
- POOLDEF
- RELREC
- RELSPEC
- RELSUB
- SUPP--
- SQ--
- SPLIT DATASETS
- AP SPLIT DATASETS
Include:
- ALL
- AP--
- APRELSUB
- APRELSPEC
- POOLDEF
- RELREC
- RELSPEC
- RELSUB
- SUPP--
- SQ--
- SPLIT DATASETS
- AP SPLIT DATASETS
include_split_datasets: true | false
Subclasses:
Exclude:
Expand Down
42 changes: 22 additions & 20 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,26 +125,28 @@ Most of the metadata attributes below are derived automatically from the dataset
- **`unsplit_name`** and **`is_split`** are derived from the above — split datasets have a naming convention defined in the IG and whose name differs from their base domain (e.g., `QSX` is a split of `QS`). Determined by comparing name and domain with some logic to exclude supplemental domains. Neither property is available for use in rule check logic.
- **`domain_is_custom`**, **`related_domain`**, and **`related_domain_is_custom`** are computed by operations applied at rule evaluation time. Note that `domain_is_custom` applies only to the domain itself — supplemental and AP datasets built on top of a custom domain (e.g., `SUPPXX`, `APXX`, `SQAPXX`) are not themselves custom but their **`related_domain_is_custom`**.

| name | unsplit_name | is_supp | domain | rdomain | is_ap | ap_suffix | domain_is_custom | related_domain | related_domain_is_custom |
| ------ | ------------ | ------- | ------ | ------- | ----- | --------- |------------------| -------------- | ------------------------ |
| QS | QS | False | QS | None | False | | False | | |
| QSX | QS | False | QS | None | False | | False | | |
| QSXX | QS | False | QS | None | False | | False | | |
| SUPPQS | SUPPQS | True | None | QS | False | | False | QS | |
| SUPPQSX | SUPPQS | True | None | QS | False | | False | QS | |
| SUPPQSXX | SUPPQS | True | None | QS | False | | False | QS | |
| APQS | APQS | False | APQS | None | True | QS | False | QS | |
| APQSX | APQS | False | APQS | None | True | QS | False | QS | |
| APQSXX | APQS | False | APQS | None | True | QS | False | QS | |
| SQAPQS | SQAPQS | True | None | APQS | True | | False | QS | |
| SQAPQSX | SQAPQS | True | None | APQS | True | | False | QS | |
| SQAPQSXX | SQAPQS | True | None | APQS | True | | False | | |
| RELREC | RELREC | False | None | None | False | | False | | |
| XX | XX | False | XX | None | False | | True | | |
| SUPPXX | SUPPXX | True | None | XX | False | | False | XX | True |
| APXX | APXX | False | APXX | None | True | XX | False | XX | True |
| SQAPXX | SQAPXX | True | None | APXX | True | | False | XX | True |
| FA | FA | False | FA | None | False | | False | | |
| name | unsplit_name | is_supp | is_split | domain | wildcard_replacement | rdomain | is_ap | ap_suffix | domain_is_custom | related_domain | related_domain_is_custom |
| --------- | ------------ | ------- | -------- | ------ | --------------------- | ------- | ----- | --------- | ---------------- | --------------- | ------------------------- |
| QS | QS | False | False | QS | QS | None | False | | False | | |
| QSX | QS | False | True | QS | QS | None | False | | False | | |
| QSXX | QS | False | True | QS | QS | None | False | | False | | |
| SUPPQS | SUPPQS | True | False | | | QS | False | | False | QS | |
| SUPPQSX | SUPPQS | True | True | | | QS | False | | False | QS | |
| SUPPQSXX | SUPPQS | True | True | | | QS | False | | False | QS | |
| APQS | APQS | False | False | QS | QS | None | True | QS | False | QS | |
| APQSX | APQS | False | True | QS | QS | None | True | QS | False | QS | |
| APQSXX | APQS | False | True | QS | QS | None | True | QS | False | QS | |
| SQAPQS | SQAPQS | True | False | | | APQS | False | | False | QS | |
| SQAPQSX | SQAPQS | True | True | | | APQS | False | | False | QS | |
| SQAPQSXX | SQAPQS | True | True | | | APQS | False | | False | | |
| RELREC | RELREC | False | False | | | None | False | | False | | |
| XX | XX | False | False | XX | XX | None | False | | True | | |
| SUPPXX | SUPPXX | True | False | | | XX | False | | False | XX | True |
| APXX | APXX | False | False | XX | XX | None | True | XX | False | XX | True |
| SQAPXX | SQAPXX | True | False | | | APXX | False | | False | XX | True |
| FA | FA | False | False | FA | FA | None | False | | False | | |
| APRELSUB | APRELSUB | False | False | | RELSUB | None | True | RELSUB | False | | |
| APRELSPEC | APRELSPEC | False | False | | RELSPEC | None | True | RELSPEC | False | | |

## Business Rule Examples

Expand Down
17 changes: 14 additions & 3 deletions docs/scope.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ For example, if your Rule column references variables from the DM domain, your s

### 3. Split Dataset Handling

The `include_split_datasets` flag (when set to `true`) allows split datasets to be processed separately from their parent datasets. This is useful when you need to analyze split datasets independently.
The `include_split_datasets` flag (when set to `true`) allows split datasets to be processed separately from their parent datasets. This is useful when you need to analyze split datasets independently. `SPLIT DATASETS` and `AP SPLIT DATASETS` can also be added in Rule Domain inclusion/exclusion scope criteria if the rule is applicable to unmerged split datasets.

### 4. Use Case Selection

Expand Down Expand Up @@ -105,8 +105,19 @@ According to the schema, the following classes are available:
### Domains
The following domain options are available:
- Standard domains like `DM`, `AE`, `LB`, etc.
- Special values like `ALL`, `AP--`, `APRELSUB`, `POOLDEF`, etc.
- Supplementary datasets using patterns like `SUPP--`, `SUPP[domain]`
- Special values like `ALL`, `APRELSUB`, `POOLDEF`, etc.
- The fixed property keywords: `SUPP--`, `SQ--`, `AP--`, `SPLIT DATASETS`, `AP SPLIT DATASETS`

## Fixed Property Keywords
Unlike literal domain names (`AE`, `LB`, `APRELSUB`, etc.), the following keywords match against **derived dataset properties** rather than the dataset name itself. See [README.md](./README.md#dataset-metadata-submission-guide) for how each property is derived: for the full definitions these properties are based on.

| Keyword | Matches when | Derived from |
|---|---|---|
| `SUPP--` or `SQ--` | Dataset name starts with `SUPP` or `SQ` (interchangeable) | `is_supp` |
| `AP--` | Dataset is an Associated Persons domain | `is_ap` |
| `SPLIT DATASETS` | Dataset name differs from its unsplit/parent domain name | `is_split` |
| `AP SPLIT DATASETS` | Dataset is an AP domain **and** split **and not** a SUPP/SQ dataset | `is_ap AND is_split AND NOT is_supp` |


### Data Structures
Alternative to Classes/Domains, you can specify data structures:
Expand Down
Loading