"""Reasons for the OpenAlex field-17 (Computer Science) topics deliberately left out of topic_map.csv. build_ontology.py fails if a field-17 topic is neither mapped by an area module nor listed here, and if a topic listed here is in fact mapped. Reasons are short and auditable; the grouping mirrors why OpenAlex places the cluster in field 17 although it is not computer-science research in the sense of CLAUDE.md section 4. """ _EDU = ("Education / e-learning research (pedagogy, learning outcomes, teacher development); not a CS research category " "of CLAUDE.md section 4. Educational technology as software is captured through software_engineering/hci venues " "and keywords when the contribution is technical.") _MEDIA = "Media, communication or cultural studies cluster placed in field 17 by OpenAlex; not computer-science research." _PHYS = "Physical-science or engineering cluster (no computing contribution) placed in field 17 by OpenAlex." _GENERIC = ("Generic, uninformative cluster label (OpenAlex residual topic) whose keyword list has no specific " "computer-science content; works land in categories via venue, arXiv and keyword signals instead.") _EMPTY = "Residual OpenAlex topic with 0 works in the export; nothing to map." _OTHER = "Out-of-scope discipline (psychiatry, economics, healthcare policy, literature, environmental engineering)." UNMAPPED_REASONS = { # education and e-learning (subfields 1702, 1705, 1706, 1710) **{t: _EDU for t in ["T11370", "T12171", "T12395", "T12408", "T13016", "T13081", "T13386", "T13482", "T13559", "T13565", "T13602", "T13676", "T13873", "T13932", "T14025", "T14103", "T14216", "T14246", "T14403", "T14409", "T14430", "T14455", "T14496", "T14498", "T14516", "T14519", "T13836", "T13964", "T13567"]}, # media / communication / culture "T13745": _MEDIA + " (204,789 works: 'Media and Digital Communication', the largest unmapped CS topic.)", "T13194": "ICT for development / digital divide studies (development studies); " + _MEDIA.lower(), "T14029": "Literary studies ('Thoreau and American Literature'); " + _MEDIA.lower(), "T14345": "Philosophy of science and research methodology; " + _MEDIA.lower(), "T12797": "History of computing technologies (history of science); kept out of the research-category map; could feed Part II background.", "T12805": "Cognitive science and mental mapping (psychology/geography); " + _OTHER.lower(), # physical sciences / engineering clusters "T11276": _PHYS + " (solar radiation and photovoltaics)", "T12157": _PHYS + " (geochemistry and geologic mapping)", "T13018": _PHYS + " (seismology and earthquake studies)", "T11187": _PHYS + " (nonlinear dynamics and pattern formation; mathematical physics)", "T12564": _PHYS + " (sensor technology and measurement instrumentation)", "T13615": _PHYS + " (transportation systems and safety; traffic engineering)", "T13935": _PHYS + " (mathematical control systems; control theory without computing content)", "T14215": _PHYS + " (chemical and environmental engineering)", "T14387": _PHYS + " (environmental engineering and cultural studies, 2 works)", # other disciplines "T14381": _OTHER + " (psychiatry, mental health, neuroscience)", "T13867": _OTHER + " (economic growth and development)", "T14071": _OTHER + " (healthcare during the COVID-19 pandemic)", "T13062": ("Cognitive informatics / brain informatics (concept algebra, abstract intelligence): a small, idiosyncratic " "cluster with no counterpart in the 40 categories; left unmapped rather than forced into ai_agents."), # generic or residual clusters **{t: _GENERIC for t in ["T13674", "T13523", "T13898", "T14351", "T13345"]}, **{t: _EMPTY for t in ["T13514", "T13693", "T13748", "T14064", "T14155", "T14174", "T14175", "T14413", "T14431"]}, }