Skip to content

Document what an empty compound_taskid_set means #507

Description

@annakrystalli

The sample output type page documents the general rule:

Task IDs not in this set vary within the group and are sampled jointly, introducing response dependence across those task IDs.

An empty compound_taskid_set follows from that unambiguously — no task IDs are in the set, so every task ID is sampled jointly, with response dependence across all of them. But the empty case is never named or shown. The closest example is D, with a partial set of ["origin_date", "location"].

Worth stating explicitly for two reasons.

It is already being written that way. #461 uses `[]` as shorthand in its worked examples, and it is the natural way to express full joint sampling.

An absent compound_taskid_set means the opposite. When the field is omitted, every task ID is treated as compound, i.e. no joint sampling at all. So the two configs a reader is most likely to conflate are at opposite ends:

config resolves to meaning
absent all task IDs no joint sampling; every row an independent draw
[] none every task ID sampled jointly

A hub writing [] meaning "I have no compound task IDs to declare", in the sense of leaving it unset, would get the opposite of what it intended, and its submissions would still validate.

Suggested: a sentence naming the empty case alongside the general rule, and an example showing "compound_taskid_set": [] with the resulting sample structure.

For context, [] passes tasks schema validation today, and hubverse-org/hubValidations#362 makes hubValidations handle it as described above.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions