On this page
Collector module (draft 0.1)
Status: draft for comment. Namespace: org.openmusiccollection.collector. Needs: Core 1.0.
Record collectors keep more than what they have now: what they paid and where, which records they
sold, lent to a friend or gave away. The core records a physical copy's format, condition and
location; this module adds a copy's history, so that it survives moving between apps and doesn't
vanish when the record leaves the shelf.
Sketch
On a copy, in its ext:
"ext": {
"org.openmusiccollection.collector": {
"acquired": { "at": "2019-05-04", "from": "Rough Trade East", "paid": { "amount": "24.99", "currency": "GBP" } },
"gone": { "status": "lent", "at": "2026-09-12", "to": "Sam" }
}
}
acquired: when (partial date), from whom or where, and what was paid. Amounts are decimal strings with an ISO 4217 currency, so no money is lost to floating point.gone: a copy the person no longer has.statusissold,lent,givenorlost(an open list), withat,to(a name, for people), and forsoldaprice.- Core wins. A copy that is gone is not owned any more: its core
ownershipisnone, and the module says why. A lent copy keeps its ownership (it is still the person's) and says where it is. When the record comes back,goneis removed. - A copy that is gone stays in the collection, so the history isn't lost; apps that don't know the module show it as a record the person keeps without owning, which is true.
Open questions
- Should the value of a collection (a marketplace's current price) belong here, or in Catalog and Commerce?
- Should several past owners (provenance for rare records) be listed?
- Lending reminders: an app feature, or a date in
gone(due)?
Prior art
Discogs' collection fields (media and sleeve condition, notes, price paid in custom fields), Goldmine grading, CLZ Music.