CogPO mapping method¶
This page describes how the correspondence between the Catalog and CogPO, the Cognitive Paradigm Ontology, was established. It follows the Atlas mapping method, and the match types, the two matching levels and the refresh contract are the same; this page records only what differs. The row-by-row results are on the task mapping page, the vocabulary on the dimension mapping page, and The Catalog vs CogPO says what they add up to.
Source data¶
Every figure derives from a byte-exact archive of both CogPO sources taken on
2026-09-22: the OWL release CogPOver1.owl (version 1.0, 2010) and the raw wikitext of
the 216 term pages linked from the main page of the CogPO wiki. The OWL is the ontology
of record. The wiki is read beside it because it holds terms the OWL never received (the
four Stimulus Role values, three paradigms) and a later curation pass, and the two are
reported against each other in data/cogpo_summary.json. The server returns the main
OWL file’s bytes for its declared companion import as well, so there is one ontology
file; the archive’s manifest records the identical hash.
Neither CogPO host serves https, so everything is fetched over plain http and the transfer alone cannot be trusted. The OWL release is a static file from 2010 whose SHA-256 is pinned in the builder, which refuses a file that does not match; the summary records the hash it was built from. The wiki pages have no pin and are treated as supplementary: what they add to the summary (three paradigm names, the four stimulus roles, curation dates) is small and visible in the committed file. Links to CogPO classes on this site are plain http for the same reason.
What is mapped¶
CogPO has one paradigm layer and no process layer, so there is one pair of tables
rather than the Atlas’s two: hed_task_to_cogpo.tsv, one row per task with its primary
CogPO class, and cogpo_paradigm_to_hed.tsv, one row per CogPO paradigm class. The
reverse table covers the 83 classes of the OWL release and the three paradigms found
only on the wiki (Delayed Match To Sample, Sleep, Tower of London), with a cogpo_source
column saying which. A class is identified by the last segment of its IRI: COGPO_00092
for most, a name such as Naming_(Overt)_Paradigm for the ten whose IRI is a name, and
the wiki title for a wiki-only paradigm.
Match types mean what they mean for the Atlas: exact, close, related, none.
Because so many CogPO classes are families rather than paradigms, related carries a
particular sense here: the task falls under the class (a reward task under Reward Task
Paradigm) without the class being its counterpart. Task pages link to CogPO only for
exact and close rows.
Scope classes are curated¶
With 86 classes, every unmatched class was read against its definition and given a
kind by hand, unlike the rule-derived scope_class on the Atlas tables. The kinds are
paradigm (a task-shaped paradigm the Catalog does not list), broad_class (a family
of tasks), physiological (stimulation, consumption, breath holding, sleep),
motor_act (grasping, pointing, writing and the like), imaging_protocol (the flashing
checkerboard) and pseudo_task (rest and fixation, which match the Catalog’s pseudo
tasks). The Catalog’s task criteria exclude the physiological,
motor and imaging-protocol groups deliberately; the paradigm group is the list of
candidates for addition.
How the tables were built¶
Candidate rows came from the same normalized name and alias matching as the Atlas tables, run against the CogPO labels, with a task-name match taking precedence over a variation-name match. On this data the automated pass found 26 of the 72 forward matches and 30 of the 50 reverse ones, and missed classes as plain as Anti-Saccades (plural) and Sternberg Task (no alias hit). Every row of both tables was then decided by hand against the CogPO definition, and every row carries a note saying why.
The dimension vocabulary¶
data/facet_defs.tsv lists every value of CogPO’s six dimension vocabularies with its
CogPO definition and identifier, and the HED 8.4.0 tag or tags that express it. Tags
were checked against the HED 8.4.0 schema file: every tag in the table exists. The eight
Response Modality classes carry no label in the OWL; their labels were checked against
the Foundational Model of Anatomy through the EBI Ontology Lookup Service. Values added
from the HED schema or by the Catalog are marked by source, so that the vocabulary
credits CogPO exactly and no further.
Reproducing the tables¶
python src/fetch_cogpo_data.py # refresh the archive in .cog_data/cogpo/
python src/build_cogpo_data.py # recompute data/cogpo_summary.json
python src/build_cogpo_maps.py # refresh the mapping tables
The third command is non-destructive in the same way as its Atlas counterpart: it refreshes the descriptive columns from the summary, never overwrites a match type, a scope class, a mapped id or a note, fails on an id it cannot resolve, and reports classes that appeared or disappeared. Running it twice leaves the tables byte-identical.