The WD_OTHER_SOURCES registry in web/slurper/wd_raw_item.py already handles cross-links for nLab, MathWorld, ProofWiki, and EoM. Wire OEIS in the same way using Wikidata property P829 ("OEIS ID", 443 statements as of 2026-06-06).
How the registry works
WD_OTHER_SOURCES maps Item.Source → {wd_property, json_key}. The SPARQL query, a per-source WikidataSlurper, and save_links are all auto-generated from it. Links get label = Link.Label.WIKIDATA (provenance = Wikidata, not the target source). No new Link.Label is needed.
Tasks
Dependency
The OEIS slurper (issue #16) runs after this, this determines which sequences to import.
The
WD_OTHER_SOURCESregistry inweb/slurper/wd_raw_item.pyalready handles cross-links for nLab, MathWorld, ProofWiki, and EoM. Wire OEIS in the same way using Wikidata property P829 ("OEIS ID", 443 statements as of 2026-06-06).How the registry works
WD_OTHER_SOURCESmapsItem.Source → {wd_property, json_key}. The SPARQL query, a per-sourceWikidataSlurper, andsave_linksare all auto-generated from it. Links getlabel = Link.Label.WIKIDATA(provenance = Wikidata, not the target source). No newLink.Labelis needed.Tasks
Item.Source.OEIS: {"wd_property": "wdt:P829", "json_key": "oeisID"}toWD_OTHER_SOURCES.OEISRawItem(OtherWdRawItem)subclass with aurl()builder and acaseinBaseWdRawItem.raw_item.A000045; P829 values also include theAprefix — they should match as-is.make fix-filesclean; tests pass.Dependency
The OEIS slurper (issue #16) runs after this, this determines which sequences to import.