We have had numerous talks about how we can store structured data in a wiki, targeting both technical and social aspects. This is yet another idea, hope it has some merit.
Which wiki to use for data storage is discussed at https://meta.wikimedia.org/wiki/User:Yurik/Storing_data
- Store data in wikidata.org in Data: namespace.
- Metadata is stored as wikidata item's properties, allowing flexibility and localization. The content handler will show/edit associated item metadata directly in-place.
- The type of data is determined by the "extension": Data:NewYorkStateDistricts.topojson. Other types could be tabular csv/tsv, and generic json. We might want to consider import transformations, e.g. CSV->TSV, GeoJSON->TopoJSON, etc.
- Each type is handled/visualized by its own content handler, either utilizing existing wikipage storage, or some other backend.
- An api could provide data retrieval, possibly even querying functionality (filtering/joining) -- this one is trickier and might need a separate discussion
- Any page consuming data (e.g. Lua or Graphs) will add page dependency, utilizing the batchupdate process we have now.
- Only data that passes structural validation is allowed to be saved
- Data is never guaranteed to be roundtrip-able, e.g. for JSON the backend will remove trailing commas and unneeded white spaces.
- We might want to consider raising maximum storage limits for this namespace.