Taxonomy
The OCS tree — node anatomy, the three domains, and the traversal API
The Origin Classification System is a tree of hypothesis nodes identified by numeric dot-paths. Depth encodes specificity: 1 (domain) → 1.1 (subdomain) → 1.1.3 (category) → 1.1.3.2 (leaf).
Node anatomy
interface OCSNode {
id: string; // '1.1.2.1'
label: string; // 'Ancient / Proto-Human Survival'
description: string;
domain: 'physical' | 'psychosocial' | 'metaphysical';
depth: number; // 0=domain … 4=leaf
parentId: string | null;
children: string[]; // child ids, not nested nodes
scientificallyTestable: boolean; // can this be empirically falsified?
aliases?: string[]; // 'ETH', 'CTH', ...
}The tree at a glance
1 Physical
├─ 1.1 Intradimensional
│ ├─ 1.1.1 Prosaic (natural phenomena, human craft — governmental,
│ │ extra-governmental, private)
│ ├─ 1.1.2 Cryptoterrestrial (ancient survival, breakaway civilization, …)
│ └─ 1.1.3 Extraterrestrial (solar system, interstellar, intergalactic, …)
├─ 1.2 Extradimensional (hyperspace entities, brane projections, …)
└─ 1.3 Interdimensional (multiverse, time travel, scale invariance)
2 Psychosocial
├─ 2.1 Sociological (hypnosis, mass hysteria, memetics, hoax)
├─ 2.2 Psychological (misinterpretation, screen memory, …)
└─ 2.3 Neurological (pharmacology, pathology, …)
3 Metaphysical
├─ 3.1 Paranormal (NDE/OBE, disembodied consciousness, …)
├─ 3.2 Occult
└─ 3.3 TranscendentalProsaic explanations are first-class citizens: most observations are 1.1.1.x, and a framework that couldn't say so wouldn't be credible when it says otherwise.
Traversal API
import {
getNode, getChildren, getAncestors, getSiblings,
getDomain, getPath, getLeafNodes, getTestableNodes, searchNodes,
} from '@disclosureos/origins';
getNode('1.1.3'); // the ETH node (undefined for unknown ids)
getChildren('1.1.3'); // solar system, interstellar, intergalactic, unknown region
getAncestors('1.1.3.2'); // [node '1', node '1.1', node '1.1.3'] — root to parent
getSiblings('1.1.2'); // prosaic, extraterrestrial
getDomain('psychosocial'); // every node in the psychosocial domain
getPath('1.1.3.2'); // 'Physical > Intradimensional > Extraterrestrial > Interstellar'
getTestableNodes(); // every node with scientificallyTestable: true
searchNodes('hoax'); // search labels, descriptions, aliasesConstants give you the id sets directly:
import {
ALL_OCS_IDS, LEAF_IDS, TESTABLE_IDS,
PHYSICAL_IDS, PSYCHOSOCIAL_IDS, METAPHYSICAL_IDS,
OCS_TAXONOMY, // the full OCSNode[] tree
} from '@disclosureos/origins';Choosing the right depth
Claim at the depth your evidence supports — no deeper:
| Evidence supports... | Claim |
|---|---|
| "Not prosaic, physical craft, origin unknown" | 1.1 or 1 |
| "Consistent with non-human technology, locale unknown" | 1.1.3 |
| "Specifically interstellar" | 1.1.3.2 — and expect to defend it |
A confident claim at 1.1 is more useful than a speculative one at 1.1.3.2. The depth of a node is a measure of specificity, not of merit.
Display companions
import { OCS_LABELS, ORIGIN_DOMAIN_LABELS } from '@disclosureos/origins';
import { formatOCSCode, formatNodeLabel, formatDomainLabel, formatTestability } from '@disclosureos/origins';