Qipudata
San Francisco · v0.7.1

Outside identifiers

xrefrelease v0.7.1CC0 1.0

About

Crosswalk: one row per outside id of a qipu record, so the people who use those ids can reach qipu (Planning and the Assessor by block and lot, DataSF by EAS id, the Clerk by ordinance number, Wikidata by QID, the Internet Archive by item, page and IIIF canvas, census tables by tract). Built by qipu_data/xref.py from the release's own tables; it adds no qipu ids. The schemes are a closed list (legistar_file and legistar_matter are reserved for a later release).

How far to trust it
The release passed its automatic checks before it was published (what is checked). A hand check by the editor of qipu data is under way: 36 of 38 items checked so far were right, on votes, money, places and the map. A row says what the record states; the scanned page is the authority. Details
Licence
CC0 1.0: use it for anything, no permission needed. The scans and other sources keep their own rights.
Version
v0.7.1, published 21 October 2026. A published release is never changed; corrections come as a new release.
Technical details
Table
xref
Rows
1,320,115
Columns
8
Parquet
xref.parquet, 4.0 MB
Version
v0.7.1, 21 October 2026
Licence
CC0 1.0. Sources keep their own rights.

Rows

Rows by scheme

ValueRowsShare
blklot446,25233.8%
eas224,39017.0%
ia_display_n183,88213.9%
iiif_canvas183,88013.9%
ia_page182,94913.9%
enactment72,1735.5%
census_tract_20005,1020.4%
census_tract_20105,1020.4%
census_tract_20205,1020.4%
census_tract_19905,0830.4%
ia_item3,3640.3%
lpf2,5340.2%

Rows by source

Rows by method

Method and accuracy

No accuracy measure for this table yet.

The release passed its automatic checks before it was published (what is checked). A hand check by the editor of qipu data is under way: 36 of 38 items checked so far were right, on votes, money, places and the map. A row says what the record states; the scanned page is the authority.

Methodology · Accuracy

Columns 8

ColumnTypeCan be emptyPrivacyPublic copyDescription
qipu_idVARCHARnononeas isThe qipu record: a place, person, instrument, archive.org source (its identifier) or page (<identifier>:<leaf>).
Can be empty no · Privacy none · Public copy as is
schemeVARCHARnononeas isia_item (archive.org identifier), ia_page (hOCR page index, 0-based), ia_display_n (the n of archive.org /page/n<n>), iiif_canvas (IA's IIIF v3 canvas id), blklot (Assessor block and lot, 0847019), eas (DataSF EAS base address id), wikidata (QID), enactment (Ord. 338-75, Res. 273-64; series forms Ord. 8727 (N.S.), Res. 15288 (Series of 1939)), census_tract_<map year> (6-digit tract code), analysis_nbhd (DataSF Analysis Neighborhood), sup_district_2022 (reserved), lpf (the Linked Places / World Historical Gazetteer @id).
Values ia_item, ia_page, ia_display_n, iiif_canvas, blklot, eas, wikidata, enactment, census_tract_1990, census_tract_2000, census_tract_2010, census_tract_2020 ...
Can be empty no · Privacy none · Public copy as is
valueVARCHARnononeas isThe outside id.
Can be empty no · Privacy none · Public copy as is
valid_fromVARCHARyesnoneas isWhen the id starts to apply, where known (the year of an ordinance or resolution).
Can be empty yes · Privacy none · Public copy as is
valid_toVARCHARyesnoneas isWhen the id stops applying, where known.
Can be empty yes · Privacy none · Public copy as is
sourceVARCHARyescatalogue textas isWhere the outside id comes from.
Can be empty yes · Privacy catalogue text · Public copy as is
methodVARCHARyesnoneas isHow the row was made (iiif_manifest = read from the item's cached IIIF manifest; bookreader_n = the manifest's canvas id form for the BookReader page; number printed, year assumed from the Journal volume ...).
Can be empty yes · Privacy none · Public copy as is
confidenceDOUBLEyesnoneas is1 when the id is read or printed as is; lower when part of it is inferred (the method says which part).
Values 0..1
Can be empty yes · Privacy none · Public copy as is

Privacy: what kind of text the column holds. Public copy: what the published file does with it; the embargo covers records after 1951.

Preview

qipu_idschemevaluevalid_fromvalid_tosourcemethodconfidence
place/address/eas-284136blklot0520020——DataSF EAS (3mea-di5p)block || lot1.0
place/address/eas-284582blklot0535034——DataSF EAS (3mea-di5p)block || lot1.0
place/address/eas-292280blklot0995009——DataSF EAS (3mea-di5p)block || lot1.0
place/address/eas-295230blklot1129023——DataSF EAS (3mea-di5p)block || lot1.0
place/address/eas-299940blklot1288022——DataSF EAS (3mea-di5p)block || lot1.0
place/address/eas-302775blklot1411007A——DataSF EAS (3mea-di5p)block || lot1.0
place/address/eas-304949blklot1466038——DataSF EAS (3mea-di5p)block || lot1.0
place/address/eas-307375blklot1540024——DataSF EAS (3mea-di5p)block || lot1.0

Eight rows sampled at build time. Hover a shortened value for all of it.

Download

FormatFileSize
Parquetxref.parquet ↗4.0 MB
SQLite (all tables)qipu_sf.db ↗6.44 GB

SQL

SELECT * FROM xref LIMIT 100

Run in the SQL console (DuckDB in the browser, over the Parquet file).

Python

import duckdb duckdb.sql("SELECT * FROM 'https://tiles.qipu.org/data/releases/v0.7.1/parquet/xref.parquet' LIMIT 5").show()